VS2019 远程连接 Ubuntu 失败的解决方法

引言

在跨平台开发中,VS2019 的远程连接工具是连接 Windows 与 Ubuntu 的常用方式,但经常会遇到 “无法连接” 的问题。本文结合实际操作场景,从SSH 服务、网络、配置三个核心维度拆解连接失败的原因,并提供分步解决方法,帮你快速打通远程开发环境。

一、问题场景复现

从截图可见:

  • Ubuntu 的 IP 为192.168.186.130,通过ifconfig已确认网络正常;
  • VS2019 的 “连接到远程系统” 窗口中,主机名、端口(22)、用户名(root)已填写,但连接失败。

二、核心原因分析(按优先级)

VS2019 远程连接依赖SSH 服务,失败的核心原因集中在:

  1. Ubuntu 未安装 / 启动 SSH 服务;
  2. 网络连通性异常(Windows 与 Ubuntu 无法互通);
  3. SSH 端口 / 用户名 / 密码配置错误;
  4. Ubuntu 禁用了 root 用户的 SSH 登录权限。

三、分步解决教程

1. 检查并配置 Ubuntu 的 SSH 服务(最常见原因)

VS2019 的远程连接基于 SSH 协议,若 Ubuntu 未安装 SSH 服务,会直接连接失败。

步骤 1:检查 SSH 服务状态

在 Ubuntu 终端执行:

bash

运行

systemctl status ssh
  • 若输出inactive (dead),说明 SSH 未安装 / 未启动;
  • 若提示Unit ssh.service could not be found,说明 SSH 未安装。
步骤 2:安装并启动 SSH 服务

bash

运行

# 安装OpenSSH服务端
sudo apt-get install openssh-server

# 启动SSH服务
sudo systemctl start ssh

# 设置开机自启(避免重启后服务失效)
sudo systemctl enable ssh
步骤 3:验证 SSH 服务是否正常运行

再次执行状态检查命令:

bash

运行

systemctl status ssh
  • 若显示Active: active (running),说明 SSH 服务已正常启动。

2. 验证网络连通性

Windows 与 Ubuntu 需在同一网络(局域网 / WiFi),且能互相 ping 通。

步骤 1:在 Windows 中 ping Ubuntu 的 IP

打开 Windows 的 CMD(命令提示符),执行:

cmd

ping 192.168.186.130
  • 若显示 “请求超时”,说明网络不通,需排查:
    1. 两者是否连接同一网络(如同一 WiFi / 路由器);
    2. Ubuntu 的防火墙是否拦截了请求,可临时关闭防火墙:

      bash

      运行

      sudo ufw disable
      
    3. 检查路由器是否开启了 “AP 隔离”(会阻止设备间互通)。
步骤 2:在 Ubuntu 中 ping Windows 的 IP

在 Ubuntu 终端执行(Windows 的 IP 可通过ipconfig查看):

bash

运行

ping 你的WindowsIP
  • 若双向 ping 通,说明网络无问题。

3. 核对 SSH 连接配置

(1)确认 SSH 端口是否正确

SSH 默认端口是 22,若 Ubuntu 修改过端口,需对应调整:

bash

运行

# 查看Ubuntu的SSH端口配置
cat /etc/ssh/sshd_config | grep Port
  • 若输出不是Port 22,则在 VS2019 的 “端口” 栏填写实际端口。
(2)确认 root 用户名 / 密码正确性
  • 密码需区分大小写、特殊符号,确保输入与 Ubuntu 的 root 密码一致;
  • 若忘记 root 密码,可在 Ubuntu 中重置:

    bash

    运行

    sudo passwd root
    

4. 开启 root 用户的 SSH 登录权限

Ubuntu 默认可能禁用 root 用户的 SSH 登录,需手动开启:

步骤 1:编辑 SSH 配置文件

bash

运行

sudo nano /etc/ssh/sshd_config
步骤 2:修改PermitRootLogin配置

找到PermitRootLogin项,修改为:

ini

PermitRootLogin yes
  • 若该行前有#(注释),需删除#以启用配置。
步骤 3:重启 SSH 服务使配置生效

bash

运行

sudo systemctl restart ssh

四、连接验证

完成以上配置后,回到 VS2019 的 “连接到远程系统” 窗口:

  1. 确认主机名(192.168.186.130)、端口(22)、用户名(root)正确;
  2. 输入 root 密码,点击 “连接”;
  3. 若提示 “连接成功”,则远程环境已打通。

总结

VS2019 远程连接 Ubuntu 失败的核心是SSH 服务未配置、网络不通、权限限制,按以下流程可快速解决:

  1. 安装并启动 Ubuntu 的 SSH 服务;
  2. 验证 Windows 与 Ubuntu 的网络连通性;
  3. 核对 SSH 端口、用户名 / 密码;
  4. 开启 root 用户的 SSH 登录权限。

通过以上步骤,即可稳定建立 VS2019 与 Ubuntu 的远程连接,顺利进行跨平台开发。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值