使用Remote SSH免密远程连接
大约 2 分钟
功能介绍
- 通过SSH直接连接远程服务器,编写文档或运行SSH命令
- 免密登录,不需要每次输入远程服务器密码
方案逻辑
- 创建本地秘钥
- 在远程服务器加载本地秘钥
- 设置Remote SSH配置文件
教程
- 在Windows端,创建KEY
打开CMD,运行命令生成KEYssh-keygen -t rsa -b 4096
说明:命令会在本机的C盘目录下生成对应的KEY,路径一般为C:\Users\用户名.ssh
在CMD运行命令可快速打开本机的 .ssh目录
start %userprofile%\.ssh
2. 打开Vs Code 搜索安装插件:Remote SSH 并安装
设置Remote SSH的配置
填入配置内容并保存
Host 阿里云服务器
HostName 103.185.219.X
User root
port 22
名词解释
- Host:连接主机的名称,随便写
- HostName:远程服务器的IP
- User : 远程服务器的用户,一般为root
- port : 远程服务器的SSH端口,一般为22,如改动自行修改
刷新SSH即可看到配置的服务器,点击连接访问服务器
选择Linux
输入远程服务器的root密码
连接远程后,打开文件夹:root
再次输入root密码
Vs code 新建终端
- 运行命令生成秘钥
ssh-keygen -t rsa -b 4096
运行完毕后,会看到root目录下新增文件夹:.ssh
右键 .ssh 文件夹,新建文件,文件名为:authorized_keys
注意:如果 .ssh 文件夹内已经存在了 authorized_keys 文件,则不需要创建。
- 执行重启SSH服务命令
systemctl restart sshd
- 将authorized_keys权限设置为600
sudo chmod 600 authorized_keys
回到Windows端,找到本地生成的 .ssh 文件夹。用vs code打开文件:id_rsa.pub,复制其中的KEY值
粘贴KEY值到远程服务器的 authorized_keys 内,保存
配置完成,下次再登录SSH,就无需输入密码,直接可以连接SSH
附加教程
如果有多台主机想设置免密访问,同理先在本地生成秘钥,然后在复制本地电脑的 id_rsa.pub 内容到远程服务器上的 authorized_keys 内即可。
如图: