VSCode Remote‑SSH 完整安装+连接
前置条件
- 本地电脑已经装好 VSCode
- 本地PC要有OpenSSH客户端
- Windows10/11:设置 → 应用 → 可选功能 → 添加功能 → 安装 OpenSSH客户端
- Mac:自带ssh,不用装
- PVE虚拟机Ubuntu已经装好
openssh-server(前面给你的命令),虚拟机网卡桥接,宿主机能ping通虚拟机IP
一、安装 Remote‑SSH 插件
- 打开VSCode,左侧点「扩展」图标(四个方块)
- 搜索框输入:
Remote - SSH(微软官方插件,作者ms-vscode-remote) - 点【安装】
快捷键方式:
Ctrl+P,输入ext install ms-vscode-remote.remote-ssh回车直接安装
可选:也可以直接装「Remote Development」扩展包,一次性包含Remote-SSH、DevContainer等全套远程工具。
安装完成后,VSCode左下角会出现一个绿色小图标(远程状态指示器)。
二、连接PVE虚拟机两种方式
方式1:临时快速连接(最简单,适合测试)
- 按
F1打开命令面板,输入:Remote-SSH: Connect to Host... - 选择「Add New SSH Host」
- 输入格式:
ubuntu用户名@虚拟机IP
示例:li@192.168.1.105"">`li@192.168.1.105` - 回车,选择保存到ssh配置文件(一般选第一个
~/.ssh/config) - 左下角点绿色图标,再次选择Connect to Host,选中你刚添加的主机
- 第一次连接会提示输入虚拟机密码,确认指纹选
yes - VSCode会自动在虚拟机后台安装VSCode Server,等待下载部署完成
- 新窗口打开 → 点「文件→打开文件夹」,选择虚拟机里的项目目录,就可以开发了
方式2:手动写ssh config(推荐,后续免密登录用这个)
F1 → Remote-SSH: Open SSH Configuration File...,打开~/.ssh/config,粘贴下面模板,修改用户名和IP:
Host pve-dev
HostName 192.168.1.105
User ubuntu
IdentityFile ~/.ssh/id_ed25519
Host pve-dev:是你自定义别名,以后直接选pve-dev连接,不用每次输IP- IdentityFile 后面放私钥路径(后面配置密钥免密用)
三、【推荐】配置SSH密钥免密登录(不再每次输密码)
Windows本地PowerShell执行
# 生成密钥,一路回车,不要设置密码
ssh-keygen -t ed25519
# 把公钥传到PVE里的Ubuntu虚拟机
ssh-copy-id ubuntu@192.168.1.105
如果Windows没有ssh-copy-id,可以手动复制
id_ed25519.pub内容,粘贴到虚拟机~/.ssh/authorized_keys
配置完之后,VSCode连接虚拟机不用再输入密码。
四、AI插件放本地(重点!你的场景)
✅ 豆包代码助手 / Copilot 装在本地VSCode,不是远程
AI插件在本地,AI公网请求由本地PC发起,虚拟机只负责代码运行。
远程连接成功后,远程侧只需要装语言类插件(如Python、Go、C/C++),AI插件保持本地安装。
五、常见踩坑(PVE场景重点)
- 连接超时:PVE虚拟机桥接vmbr0,检查PVE防火墙放行22端口,虚拟机内
ufw status看防火墙 - 指纹报错:
~/.ssh/known_hosts删掉旧条目,重新连接 - 虚拟机安装VSCode Server失败:虚拟机检查外网,或者换国内源;也可以手动离线安装vscode-server
- 权限报错:项目目录不要放在
/root,用普通用户开发
六、日常操作
- 左下角绿色图标:点击唤起远程菜单
File → Close Remote Connection:断开SSH,回到本地VSCode- 终端:VSCode内置终端直接就是虚拟机里的bash,搭配tmux跑长时间任务
七、验证连通性(先在本地命令行测试ssh,再进VSCode)
ssh ubuntu@192.168.1.105
能成功登录,VSCode Remote-SSH基本就能连上。
作者:月影鹏鹏 创建时间:2026-10-04 08:20
最后编辑:月影鹏鹏 更新时间:2026-10-04 08:21
最后编辑:月影鹏鹏 更新时间:2026-10-04 08:21