VS Code 的Remote-SSH/Remote Development插件无法连接到 Ubuntu 系统下 的远程虚拟主机(VMware)

目录

问题分析与解决方案

[1. 核心错误原因](#1. 核心错误原因)

[2. 分步解决步骤](#2. 分步解决步骤)

[步骤 1:先确认远程 Ubuntu 主机的 SSH 服务状态](#步骤 1:先确认远程 Ubuntu 主机的 SSH 服务状态)

[步骤 2:验证网络连通性](#步骤 2:验证网络连通性)

[步骤 3:修正 VS Code 的 SSH 连接配置](#步骤 3:修正 VS Code 的 SSH 连接配置)

[步骤 4:手动测试 SSH 连接(排除 VS Code 插件问题)](#步骤 4:手动测试 SSH 连接(排除 VS Code 插件问题))

总结


你遇到的核心问题是 VS Code 的 Remote-SSH 插件无法连接到 Ubuntu 系统下 的远程虚拟主机(VMware),关键错误是 ssh: connect to host 192.168.56.130 port 22: Connection refused(连接被拒绝)和 "过程试图写入的管道不存在",本质是 SSH 连接被远程主机拒绝,而非本地 SSH 客户端缺失。

问题分析与解决方案

1. 核心错误原因

从日志能明确看到:

  • 本地 Windows 系统已找到 SSH 客户端(C:\WINDOWS\System32\OpenSSH\ssh.exe),客户端本身没问题
  • 真正的问题是远程 Ubuntu 主机(192.168.56.130)的 22 端口拒绝了连接,常见原因有:
    • Ubuntu 未安装 SSH 服务(sshd)
    • SSH 服务未启动
    • 防火墙 / 安全组拦截了 22 端口
    • 网络不通(IP 错误、虚拟机网络配置问题等)
2. 分步解决步骤
步骤 1:先确认远程 Ubuntu 主机的 SSH 服务状态

首先需要直接登录到 Ubuntu 主机(物理机 / 虚拟机控制台),执行以下命令:

复制代码
# 1. 检查是否安装了 openssh-server
sudo apt list --installed | grep openssh-server

# 2. 如果未安装,执行安装
sudo apt update && sudo apt install -y openssh-server

# 3. 启动并启用 SSH 服务
sudo systemctl start ssh
sudo systemctl enable ssh

# 4. 检查 SSH 服务状态(确保显示 active (running))
sudo systemctl status ssh

# 5. 检查防火墙是否放行 22 端口(Ubuntu 20.04+ 用 ufw)
sudo ufw allow 22/tcp
sudo ufw reload
sudo ufw status
步骤 2:验证网络连通性

在 Windows 本地打开 cmd/powershell,执行:

复制代码
# 1. ping 测试 Ubuntu 主机是否可达
ping 192.168.56.130

# 2. 测试 22 端口是否开放(需要安装 telnet 或使用 PowerShell 替代)
# 方法1(telnet):
telnet 192.168.56.130 22

# 方法2(PowerShell):
Test-NetConnection 192.168.56.130 -Port 22

如果 ping 不通:检查 Ubuntu 主机的 IP 是否正确、虚拟机网络模式(建议用桥接或仅主机)、Windows 防火墙是否拦截。

步骤 3:修正 VS Code 的 SSH 连接配置
  1. 打开 VS Code,按 F1 输入 Remote-SSH: Open SSH Configuration File
  2. 选择用户级配置文件(如 C:\Users\ASUS\.ssh\config
  3. 添加 / 修改配置,确保信息准确:
bash 复制代码
#打开Ubuntu下的命令行终端 格式如下:

xc9527@xc9527-VMware-Virtual-Platform:~$

@前的是用户名 
@后的是Host(随便填都行)
Hostname填虚拟机ip地址
复制代码
Host ubuntu
    HostName 192.168.56.130  #ip地址(NAT)
    User 你的Ubuntu用户名  # 替换为实际用户名,如 ubuntu/root

保存后,重新尝试连接 ubuntu 主机。

步骤 4:手动测试 SSH 连接(排除 VS Code 插件问题)

在 Windows 终端执行:

复制代码
ssh 你的Ubuntu用户名@192.168.56.130

如果能成功登录,说明网络和 SSH 服务正常,问题仅出在 VS Code 插件;如果仍报错,根据提示(如权限 / 密码)修正。

总结

  1. 核心问题:远程 Ubuntu 主机的 22 端口拒绝连接,而非本地 SSH 客户端缺失。
  2. 关键修复 :先确保 Ubuntu 安装并启动 openssh-server,放行 22 端口;再验证网络连通性;最后修正 VS Code 的 SSH 配置。
  3. 排查顺序:先手动测试 SSH 连接(终端),再用 VS Code 连接,能快速定位问题是服务端 / 网络还是插件本身。

如果手动 SSH 能连接但 VS Code 仍报错,可尝试重启 VS Code、更新 Remote-SSH 插件,下载Remote Development插件或删除 C:\Users\ASUS\.vscode\extensions\ms-vscode-remote.remote-ssh-0.120.0 后重新安装插件。

相关推荐
2401_865854882 小时前
16核32g的服务器能运用于哪些场景
运维·服务器
jerryinwuhan2 小时前
期末总复习
linux·运维
浅安的邂逅2 小时前
ubuntu 18.04及以上版本配置静态IP方法
linux·运维·网络·ubuntu·ip设置
阿巴~阿巴~2 小时前
从钓鱼到高性能服务器:深入解析操作系统五大 I/O 模型
运维·服务器·网络·系统调用·五种i/o模型
lxysbly2 小时前
ps1模拟器安卓版带金手指
android·linux·运维
风静如云3 小时前
VSCode:SSH后无法使用c0pil0t
vscode
啊吧怪不啊吧6 小时前
UU远程协助迎来升级!第一期更新实测
运维·服务器·远程工作
C_心欲无痕11 小时前
ts - tsconfig.json配置讲解
linux·前端·ubuntu·typescript·json
HIT_Weston12 小时前
93、【Ubuntu】【Hugo】搭建私人博客:面包屑(一)
linux·运维·ubuntu