答案是使用密钥认证和安全配置实现VSCode远程开发。生成Ed25519密钥对并部署公钥至服务器,配置~/.ssh/config添加主机信息,安装Remote-SSH插件后通过命令面板连接;同时禁用密码登录与root访问,修改SSH端口并设置防火墙规则,利用ProxyJump支持跳板机连接,确保全程加密与访问安全。

使用 VSCode 通过 SSH 进行远程开发,是开发者在本地编辑远程服务器代码的高效方式。关键在于建立安全、稳定的连接,避免密码泄露和中间人攻击。核心方法是配置基于密钥的身份验证,并合理设置 SSH 隧道。
启用基于密钥的 SSH 认证
密码登录容易受到暴力破解,推荐使用 RSA 或 Ed25519 密钥对提升安全性。
- 在本地生成密钥对:ssh-keygen -t ed25519 -C "your_email@example.com",保存到默认路径
- 将公钥(id_ed25519.pub)内容复制到远程服务器的 ~/.ssh/authorized_keys 文件中
- 设置正确权限:chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys
- 测试无密码登录:ssh username@server_ip,成功后即可免密访问
配置 VSCode Remote-SSH 插件
VSCode 的 Remote-SSH 扩展依赖本地 SSH 配置文件自动建立隧道。
- 安装官方扩展:Remote - SSH(由 Microsoft 提供)
- 打开命令面板(Ctrl+Shift+P),输入“Remote-SSH: Connect to Host”
- 选择“Add New SSH Host”,输入连接命令如:ssh user@192.168.1.100
- 选择 SSH 配置文件位置(通常为 ~/.ssh/config),保存后会自动生成主机条目
强化 SSH 安全配置
远程服务器的 SSH 服务需进行最小化暴露,防止未授权访问。
- 禁用 root 登录和密码认证,在 /etc/ssh/sshd_config 中设置:
PermitRootLogin no
PasswordAuthentication no - 修改默认端口(可选),减少自动化扫描风险:Port 2222
- 重启服务生效:sudo systemctl restart sshd
- 确保防火墙仅允许可信 IP 访问 SSH 端口
使用跳板机或代理隧道(高级场景)
当目标机器位于内网时,可通过跳板机建立级联连接。
专为中小型企业定制的网络办公软件,富有竞争力的十大特性: 1、独创 web服务器、数据库和应用程序全部自动傻瓜安装,建立企业信息中枢 只需3分钟。 2、客户机无需安装专用软件,使用浏览器即可实现全球办公。 3、集成Internet邮件管理组件,提供web方式的远程邮件服务。 4、集成语音会议组件,节省长途话费开支。 5、集成手机短信组件,重要信息可直接发送到员工手机。 6、集成网络硬
在 ~/.ssh/config 中配置 ProxyJump:
Host jump-serverHostName jump.example.com
User admin
Host internal-server
HostName 10.0.1.5
User dev
ProxyJump admin@jump-server
IdentityFile ~/.ssh/id_ed25519
配置完成后,VSCode 可直接连接 internal-server,流量经跳板机转发,全程加密。
基本上就这些。只要密钥管理得当,关闭密码登录,再配合正确的网络隔离,VSCode 的远程 SSH 隧道就能既方便又安全。









