跳至主要內容

使用Remote SSH免密远程连接

五六零网校大约 2 分钟

功能介绍

  • 通过SSH直接连接远程服务器,编写文档或运行SSH命令
  • 免密登录,不需要每次输入远程服务器密码

方案逻辑

  1. 创建本地秘钥
  2. 在远程服务器加载本地秘钥
  3. 设置Remote SSH配置文件

教程

  1. 在Windows端,创建KEY
    打开CMD,运行命令生成KEY
    ssh-keygen -t rsa -b 4096
    

说明:命令会在本机的C盘目录下生成对应的KEY,路径一般为C:\Users\用户名.ssh

在CMD运行命令可快速打开本机的 .ssh目录

start %userprofile%\.ssh

SSH目录 2. 打开Vs Code 搜索安装插件:Remote SSH 并安装

  1. 设置Remote SSH的配置

  2. 填入配置内容并保存

Host 阿里云服务器
    HostName 103.185.219.X
    User root
    port 22

名词解释

  • Host:连接主机的名称,随便写
  • HostName:远程服务器的IP
  • User : 远程服务器的用户,一般为root
  • port : 远程服务器的SSH端口,一般为22,如改动自行修改
  1. 刷新SSH即可看到配置的服务器,点击连接访问服务器

  2. 选择Linux

  3. 输入远程服务器的root密码

  4. 连接远程后,打开文件夹:root

Alt text
Alt text
  1. 再次输入root密码

  2. Vs code 新建终端

Alt text
Alt text
  1. 运行命令生成秘钥
ssh-keygen -t rsa -b 4096
  1. 运行完毕后,会看到root目录下新增文件夹:.ssh Alt text

  2. 右键 .ssh 文件夹,新建文件,文件名为:authorized_keysAlt text

注意:如果 .ssh 文件夹内已经存在了 authorized_keys 文件,则不需要创建。

  1. 执行重启SSH服务命令
systemctl restart sshd
  1. 将authorized_keys权限设置为600
sudo chmod 600 authorized_keys
  1. 回到Windows端,找到本地生成的 .ssh 文件夹。用vs code打开文件:id_rsa.pub,复制其中的KEY值 Alt text

  2. 粘贴KEY值到远程服务器的 authorized_keys 内,保存 Alt text

  3. 配置完成,下次再登录SSH,就无需输入密码,直接可以连接SSH

Alt text
Alt text

附加教程

如果有多台主机想设置免密访问,同理先在本地生成秘钥,然后在复制本地电脑的 id_rsa.pub 内容到远程服务器上的 authorized_keys 内即可。

如图: Alt text