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
打开 VS Code,进入扩展市场,搜索并安装 Remote - SSH(发布者 Microsoft)。安装后左下角会出现远程连接入口。
在本机终端生成密钥对。建议给 Key 设置 passphrase(口令),再配合系统钥匙串/ssh-agent 缓存,兼顾安全与便利。
ssh-keygen -t ed25519 -C "vscode-remote"
默认会生成到 ~/.ssh/id_ed25519 与 ~/.ssh/id_ed25519.pub。如果你已经有常用 Key,也可以复用。
方式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 拒绝。
建议给每台机器设置一个别名(Host),把用户名、端口、密钥路径等固化下来。示例:
Host devbox HostName 203.0.113.10 User ubuntu Port 22 IdentityFile ~/.ssh/id_ed25519 ServerAliveInterval 30 ServerAliveCountMax 3
如果你用的是自建域名或内网 IP,把 HostName 换成对应地址即可。多台机器继续追加多个 Host 块,维护起来会很清爽。
打开命令面板(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 目录后重连。