在 Visual Studio Code 中配置远程 SSH 连接
Visual Studio Code 是一个功能非常丰富且多功能的文本编辑器,可以使开发人员和系统管理员受益。您可以使用 VS Code 编辑 PowerShell 脚本、配置文件并运行控制台命令。这远程SSH扩展允许您通过 SSH 连接到远程计算机,并直接从计算机上安装的 VS Code 在远程 Windows 或 Linux 主机上编辑文件、脚本、配置或执行命令。
以下是如何配置 Visual Studio Code SSH 客户端以连接到远程主机。
运行 VS Code 并转到扩展(Ctrl + Shift + X )。现在找到并安装远程 SSH 扩展。

这将自动安装以下远程 SSH 附加组件:编辑配置文件和远程资源管理器(扩展包选项卡)。
在 VSCode 左侧面板中选择“远程资源管理器”以创建新的 SSH 连接。连接向导将提示您输入:
- SSH 连接字符串:
[email protected] - 包含此连接设置的配置文件的路径(默认情况下,它是
C:Users%username%.sshconfig)。
您还可以通过按创建新连接CTRL + SHIFT + P并选择远程 SSH:连接到主机。


完成此操作后,您现在可以通过 SSH 连接到远程主机。从列表中选择主机并单击连接。
第一次连接时,VSCode 会提示您输入远程 SSH 主机 (Linux/Windows/macOS) 上的平台类型和连接密码:


连接到远程 SSH 主机后,您可以直接从 VSCode 编辑器编辑任何文本文件并执行 shell 命令,就像通过 SSH 客户端连接一样(单击终端 -> 新终端以打开控制台提示符)。


如果您尝试在 VSCode 中保存非 root 用户无法编辑的文件(无需sudo),你会得到以下错误::
Failed to save 'sshd_config': Unable to write file 'vscode-remote://ssh-remote+192.168.79.128/etc/ssh/sshd_config' (NoPermissions (FileSystemError): Error: EACCES: permission denied, open '/etc/ssh/sshd_config').


解决此问题的一种方法是使用 VSCode 扩展在远程另存为根目录 – SSH。安装此扩展后,您可以使用以下命令以 sudo 模式保存文件另存为根目录命令。
支持基于密码和基于 SSH 密钥的身份验证远程SSH。
推荐阅读:如何修复 Visual Studio Code 中丢失的图标
让我们尝试在远程 Windows 主机上配置基于 SSH 密钥的身份验证:
- 在客户端生成SSH密钥对:
ssh-keygen -t ed25519本例中使用内置SSH客户端的Windows 10。 - 复制公钥文件
C:Users%username%.sshid_ed25519进入文件C:Usersuser1.sshauthorized_keys在您的远程主机上(此处,user1 是您将连接的用户名); - 检查 Windows 上的 OpenSSH 服务器配置文件中是否启用了以下选项:
PubkeyAuthentication yes
- 现在打开文件C
:Users%username%.sshconfig其中包含 SSH 主机的 VSCode 连接设置。找到主机并添加 IdentityFile 参数以及您的私钥文件的路径:
Host 192.168.31.4 HostName 192.168.31.4 User root IdentityFile "C:Usersuser1.sshid_ed25519"


打开配置文件的快速方法是按F1->远程 SSH:打开 SSH 配置文件。


现在,与 SSH 主机的连接将通过基于密钥的身份验证完成(无需密码)。
您可以使用 LocalForward 指令来配置 SSH 隧道和端口转发。或者您可能想使用ForwardAgent和ProxyJump相反指令:
Host PublicJumpServer1 HostName public.woshub.com User user1 ForwardAgent yes Host PrivateServer1 HostName private.contoso.com User user1 ProxyJump PublicJumpServer1
您还可以使用 VS Code 连接到 MS SQL Server 并在其中进行开发。
