VS Code Remote-SSH 配置教程,免密码登录与多主机管理

适用场景与准备工作

VS Code Remote-SSH 适合把本地编辑体验搬到远端:代码在服务器/NAS 上,编辑、搜索、Git、终端都在远端执行,本地只负责 UI。常见场景:远程 Linux 开发机、云主机、家庭 NAS、树莓派等。

准备:1) 远端已安装并运行 SSH 服务(一般是 OpenSSH Server);2) 你有一个可登录的远端账号(推荐普通用户 + sudo);3) 本机安装 VS Code。

工具地址/参考链接:

https://code.visualstudio.com/

https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh

https://code.visualstudio.com/docs/remote/ssh

第1步:安装 Remote-SSH 扩展

打开 VS Code,进入扩展市场,搜索并安装 Remote - SSH(发布者 Microsoft)。安装后左下角会出现远程连接入口。

第2步:生成 SSH Key(推荐 ED25519)

在本机终端生成密钥对。建议给 Key 设置 passphrase(口令),再配合系统钥匙串/ssh-agent 缓存,兼顾安全与便利。

ssh-keygen -t ed25519 -C "vscode-remote"

默认会生成到 ~/.ssh/id_ed25519 与 ~/.ssh/id_ed25519.pub。如果你已经有常用 Key,也可以复用。

第3步:把公钥部署到远端(免密码登录的关键)

方式A(Linux/macOS 常见):使用 ssh-copy-id 自动写入远端 ~/.ssh/authorized_keys。

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@your-host

方式B(通用):手动把 .pub 内容追加到远端的 ~/.ssh/authorized_keys。注意目录权限:~/.ssh 建议为 700,authorized_keys 建议为 600,否则可能被 SSH 拒绝。

第4步:配置 ~/.ssh/config(多主机管理与稳定连接)

建议给每台机器设置一个别名(Host),把用户名、端口、密钥路径等固化下来。示例:

Host devbox  HostName 203.0.113.10  User ubuntu  Port 22  IdentityFile ~/.ssh/id_ed25519  ServerAliveInterval 30  ServerAliveCountMax 3

如果你用的是自建域名或内网 IP,把 HostName 换成对应地址即可。多台机器继续追加多个 Host 块,维护起来会很清爽。

第5步:在 VS Code 里发起连接

打开命令面板(Windows/Linux:Ctrl+Shift+P,macOS:Cmd+Shift+P),输入并选择:

Remote-SSH: Connect to Host...

选择你刚写的 devbox(或其他别名)。首次连接会下载远端 VS Code Server,耗时取决于网络与远端性能。

常用提效:端口转发、远端终端、项目多工作区

1) 端口转发:把远端服务(如 3000/8000)转发到本机浏览器访问,更适合 Web 开发与调试。

2) 远端终端:在 VS Code 终端里执行的命令是在远端跑的,环境变量、Python/Node 版本都以远端为准。

3) 多工作区:一个 SSH 连接下可以打开多个文件夹/仓库;建议按项目建独立目录,避免权限与依赖混在一起。

安全建议(不涉及敏感绕过,仅做合规配置)

1) 能用 Key 就尽量不用纯密码;2) 远端账号尽量使用普通用户 + sudo;3) 重要机器建议启用防火墙与最小暴露端口;4) 定期轮换 Key,并移除不再使用的公钥。

常见问题排查清单

连接卡住/超时:确认 user@host 在系统终端能正常 ssh;检查端口、DNS、内网/公网可达性。

提示权限或 Key 不被接受:检查 ~/.ssh 权限、远端 authorized_keys 是否写对;确认 IdentityFile 指向正确。

远端下载 VS Code Server 失败:可换网络或在远端检查磁盘空间与代理设置;必要时删除旧的 server 目录后重连。

用户评论 (0)

登录后参与讨论

立即登录 注册账号

暂无评论,快来抢沙发吧~

操作成功