咨询:VS Code通过SSH连接Azure Ubuntu虚拟机失败的解决方法
VS Code SSH连接Azure Ubuntu虚拟机超时问题解决
已知终端通过ssh -p 53044 user_name@machine_name.westeurope.cloudapp.azure.com可正常连接,但VS Code使用带端口的连接字符串或SSH config配置均无法连接,以下是可行的排查和解决步骤:
1. 检查并更新Remote - SSH插件
打开VS Code扩展面板,找到「Remote - SSH」插件,确认是最新版本。旧版本的插件存在非标准SSH端口兼容问题,更新后重启VS Code再尝试连接。
2. 验证SSH Config的格式与内容
你的Config配置逻辑正确,但需注意两个细节:
- 配置项的缩进必须用空格,不能用制表符(Tab),SSH对Config的格式要求严格,制表符会导致解析失败;
- 确保
(user_name)和(machine_name)已替换为实际的用户名与虚拟机名称,无拼写错误。
验证方法:在本地终端执行ssh Linux_Azure,如果能正常连接,说明Config本身没问题;如果终端也连接失败,优先修正Config的格式或内容。
3. 禁用VS Code的SSH代理相关设置
VS Code默认的代理设置可能干扰非标准端口连接,可按以下步骤关闭:
- 打开VS Code设置(快捷键
Ctrl+,); - 搜索「Remote.SSH: Enable Agent Forwarding」,取消勾选;
- 搜索「Remote.SSH: Use Local Server」,设置为
false; - 重启VS Code后再次尝试连接。
4. 手动指定SSH可执行文件路径
VS Code可能未正确识别系统SSH客户端路径,需手动指定:
- Windows系统:打开设置,搜索「Remote.SSH: Path」,填入
C:\Windows\System32\OpenSSH\ssh.exe; - Linux/macOS系统:填入
/usr/bin/ssh;
设置完成后重启VS Code,再使用Config中的Linux_Azure连接。
5. 查看VS Code SSH连接日志定位问题
如果以上方法均无效,通过日志排查具体错误:
- 打开VS Code命令面板(快捷键
Ctrl+Shift+P); - 输入「Remote-SSH: Show Log」,选择「SSH」日志;
- 查看日志中的详细报错信息(如DNS解析失败、端口被拦截等),针对性解决。
6. 直接调用系统SSH测试VS Code连接
打开VS Code内置终端,执行以下命令(替换为实际用户名):
code --remote ssh-remote+Linux_Azure /home/user_name
该命令直接调用系统SSH客户端,若能正常连接,说明问题出在VS Code插件的配置逻辑上,可尝试重置插件设置(删除插件后重新安装)。
内容的提问来源于stack exchange,提问作者Scotty
相关产品推荐
相关产品推荐

