在 Visual Studio Code (VSCode) 中使用远程连接 Ubuntu 服务器并实现免密连接,可以通过以下步骤来实现:
步骤 1:生成 SSH 密钥对
- 在本地机器上生成 SSH 密钥对:
- 打开终端或命令行窗口,运行以下命令生成 SSH 密钥对(这里可以直接复制粘贴,不用写真实邮箱也ok):
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
- (Tips:如果不想自己设置,直接按回车即可。)按照提示输入文件保存路径(默认为
~/.ssh/id_rsa
)和密码短语(可以留空)。
- 打开终端或命令行窗口,运行以下命令生成 SSH 密钥对(这里可以直接复制粘贴,不用写真实邮箱也ok):
步骤 2:在本地机器上将公钥复制到 Ubuntu 服务器
-
将公钥复制到 Ubuntu 服务器:
- 使用
ssh-copy-id
命令将公钥复制到 Ubuntu 服务器:ssh-copy-id username@remote_host
- 替换
username
为你的 Ubuntu 用户名,remote_host
为你的 Ubuntu 服务器的 IP 地址或主机名。
- 使用
-
手动复制公钥(如果第一条
ssh-copy-id
不可用):- 如果
ssh-copy-id
命令不可用,可以手动复制公钥:cat ~/.ssh/id_rsa.pub | ssh username@remote_host 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'
- 如果
步骤 3:配置 SSH 服务器
- 确保 SSH 服务器配置正确:
- 在 Ubuntu 服务器上,编辑 SSH 配置文件
/etc/ssh/sshd_config
:sudo vim /etc/ssh/sshd_config
- 确保以下配置项已启用(找到以下两项,取消注释):
PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
- 保存并退出编辑器,然后重启 SSH 服务:
sudo systemctl restart ssh
- 在 Ubuntu 服务器上,编辑 SSH 配置文件
步骤 4:配置 VSCode 远程连接
-
安装 VSCode 远程开发扩展(已安装则忽略此条):
- 在 VSCode 中,打开扩展市场(Extensions),搜索并安装 “Remote - SSH” 扩展。
-
在本地机器上配置 SSH 配置文件:
- 打开或创建 SSH 配置文件
~/.ssh/config
(可以直接在终端输入vim ~/.ssh/config
),添加以下内容(如有多台远程设备则以行(hang)为间隔添加多条):Host your_server_alias HostName remote_host User username IdentityFile ~/.ssh/id_rsa
- 替换
your_server_alias
为你的服务器别名,remote_host
为你的 Ubuntu 服务器的 IP 地址或主机名,username
为你的 Ubuntu 用户名。
- 打开或创建 SSH 配置文件
-
连接到 Ubuntu 服务器:
- 在 VSCode 中,按
F1
打开命令面板,输入Remote-SSH: Connect to Host...
,然后选择你的服务器别名。 - VSCode 会使用你配置的 SSH 密钥自动连接到 Ubuntu 服务器,并打开一个远程开发会话。
- 在 VSCode 中,按
Okay
通过上述步骤,你可以在 VSCode 中实现免密连接到 Ubuntu 服务器。生成 SSH 密钥对,将公钥复制到 Ubuntu 服务器,配置 SSH 服务器,并在 VSCode 中安装和配置远程开发扩展,即可实现免密连接。