您的位置:

Linux SSH入门指南

一、使用 key 进行 SSH 登录

在Linux中,使用SSH登录时可以通过密钥进行身份验证,而不是输入密码。

生成密钥:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

将公钥复制到服务器上:

ssh-copy-id your_username@remote_host

之后,可以通过以下命令登录:

ssh your_username@remote_host

二、Linux SSHD配置

在Linux中使用SSH,需要安装openssh-server和openssh-client软件包。

修改SSHD配置文件:

sudo nano /etc/ssh/sshd_config

可以修改端口号、允许的登录用户、密码认证方式等等。

修改保存之后,需要重启SSH服务:

sudo systemctl restart sshd.service

三、Linux SSH命令详解

Linux中使用SSH命令可以快速执行远程操作,例如上传下载文件,编辑文件等等。

1.文件传输

将本地文件上传至远程:

scp local_file remote_username@remote_ip:remote_folder

将远程文件下载至本地:

scp remote_username@remote_ip:remote_file local_folder

2.编辑远程文件

使用ssh命令连接到远程服务器,然后使用vi编辑器编辑文件:

ssh remote_username@remote_ip
sudo vi file_to_edit

3.执行远程命令

使用ssh命令执行远程命令:

ssh remote_username@remote_ip "command_to_execute"

四、Linux SSH常用命令用法

1.查看当前SSH连接

who

2.强制关闭SSH连接

可以通过以下命令强制关闭当前SSH会话:

killall -u username sshd

3.设置SSH会话超时时间

如果一段时间没有活动,SSH会自动关闭连接。可以通过以下命令修改SSH会话超时时间:

echo "ClientAliveInterval 120" | sudo tee -a /etc/ssh/sshd_config

其中120表示多少秒没有活动之后断开连接。

4.通过SSH隧道访问远程服务

可以通过SSH隧道来访问远程的服务,例如MySQL数据库。

首先在本地启动端口转发:

ssh -L 3306:localhost:3306 remote_username@remote_ip

然后可以在本地用localhost连接到远程MySQL服务。

5.设置SSH代理

可以通过SSH代理来访问被限制的网络资源。

首先在本地启动代理:

ssh -D 1080 remote_username@remote_ip

然后在浏览器中设置代理:

代理服务器地址:localhost,端口:1080。

这样就可以在浏览器中访问被限制的网站了。