需安装Remote-SSH扩展、配置SSH连接、使用密钥认证、处理known_hosts变更、修复vscode-server启动失败。

如果您希望在本地计算机上使用 VSCode 编辑器直接开发部署在远程 Linux 服务器上的项目,则需要通过 VSCode 的 Remote - SSH 扩展建立安全连接。以下是完成该配置并稳定运行的详细步骤:
本文运行环境:MacBook Air,macOS Sequoia。
一、安装 Remote - SSH 扩展
Remote - SSH 是 VSCode 官方提供的扩展,用于将本地编辑器界面与远程服务器环境无缝桥接。它依赖 OpenSSH 协议进行身份验证和通信,因此需确保扩展与底层 SSH 工具协同工作。
1、启动 VSCode,点击左侧活动栏中的扩展图标(四个方块组成的图标)。
2、在扩展市场搜索框中输入 Remote - SSH。
3、在搜索结果中找到由 Microsoft 发布的官方扩展,点击“安装”按钮。
4、安装完成后,点击“重新加载”使扩展生效。
二、配置 SSH 连接信息
VSCode 通过读取本地 SSH 配置文件或用户手动输入的连接参数来识别目标服务器。配置方式有两种,任选其一即可建立连接入口。
1、打开命令面板(快捷键 Cmd+Shift+P),输入并选择“Remote-SSH: Connect to Host...”。
2、选择“Configure SSH Hosts...”,再选择用户配置文件路径(如 ~/.ssh/config)。
3、在打开的 config 文件中添加如下内容:
Host my-server
HostName 192.168.1.100
User ubuntu
Port 22
4、保存文件后,再次调用“Connect to Host...”,即可在列表中看到 my-server。
三、使用密钥认证登录远程服务器
密码登录存在安全风险且不被 Remote - SSH 推荐;采用 SSH 密钥对可实现免密、高安全性的连接。VSCode 在首次连接时会自动尝试使用默认密钥(~/.ssh/id_rsa)。
1、若尚未生成密钥对,在终端执行:ssh-keygen -t ed25519 -C "your_email@example.com"。
2、将公钥复制到远程服务器:ssh-copy-id -i ~/.ssh/id_ed25519.pub ubuntu@192.168.1.100。
3、确认远程服务器的 /home/ubuntu/.ssh/authorized_keys 中已写入对应公钥行。
4、在 VSCode 中连接时,若弹出密钥解密提示,输入私钥密码即可继续。
四、解决 Known Hosts 验证失败问题
当远程服务器更换系统或重装 SSH 服务后,其主机密钥会发生变化,导致 VSCode 拒绝连接并报错“WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!”。此时需手动更新本地 known_hosts 记录。
1、定位 known_hosts 文件路径:~/.ssh/known_hosts。
2、执行命令查找对应 IP 行号:ssh-keygen -F 192.168.1.100 -f ~/.ssh/known_hosts。
3、使用 sed 命令删除该行:sed -i '' '2d' ~/.ssh/known_hosts(macOS 环境下需保留空字符串参数)。
4、重新连接,接受新主机密钥并写入文件。
五、修复远程服务器端 VS Code Server 启动失败
Remote - SSH 首次连接会在远程服务器自动下载并运行 VS Code Server(vscode-server)。若因权限、磁盘空间或网络策略导致启动失败,编辑器将卡在“Installing VS Code Server”阶段。
1、登录远程服务器终端,检查临时目录权限:ls -ld /tmp,确保为 drwxrwxrwt。
2、手动清理残留安装包:rm -rf ~/.vscode-server。
3、设置环境变量强制指定安装路径:export VSCODE_AGENT_FOLDER="/home/ubuntu/.vscode-server"。
4、在 VSCode 中断开连接后,重新触发连接流程,观察输出日志是否跳过下载阶段直接启动。










