You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu本地终端无法SSH远程服务器+VS Code Remote-SSH断连求助

问题解答

1. 本地终端无法SSH远程服务器的原因及解决方法

可能原因

本地终端与VS Code内置终端的SSH配置存在差异,比如:

  • 本地终端使用的SSH客户端配置(密钥路径、代理、端口)与VS Code不一致
  • 本地系统的SSH客户端版本过旧或存在配置错误
  • 本地终端的环境变量干扰了SSH连接逻辑

解决步骤

  • 对比连接日志定位差异:分别在本地终端和VS Code内置终端执行ssh -v <username>@<ip-address>,查看输出日志,重点关注密钥文件路径、代理设置、端口使用、认证流程的不同,找到具体配置问题。
  • 同步SSH配置:通过VS Code命令面板打开Remote-SSH: Open SSH Configuration File,将其中目标服务器的配置内容复制到本地终端的~/.ssh/config文件中。
  • 更新本地SSH客户端:执行sudo apt update && sudo apt install openssh-client更新到最新版本,解决版本兼容导致的连接失败问题。
  • 手动指定密钥文件:如果VS Code使用了特定私钥,本地终端执行ssh -i /path/to/your/private/key <username>@<ip-address>,强制使用对应密钥尝试连接。

2. 阻止VS Code Remote-SSH频繁断开连接的方法

  • 添加SSH心跳配置:在VS Code使用的SSH配置文件中,为目标服务器添加保持连接的参数:
    Host <your-server-ip>
      ServerAliveInterval 30
      ServerAliveCountMax 10
    
    ServerAliveInterval表示每30秒向服务器发送一次心跳包,ServerAliveCountMax表示连续10次心跳无响应才断开连接,有效避免超时断开。
  • 调整远程服务器SSH配置:登录远程服务器,编辑/etc/ssh/sshd_config,确保以下参数设置合理:
    ClientAliveInterval 60
    ClientAliveCountMax 5
    
    修改后执行sudo systemctl restart sshd重启服务,让服务器主动检测客户端连接状态。
  • 关闭本地设备省电模式:如果本地Ubuntu开启了省电模式,可能会限制网络活动导致连接中断,关闭省电模式后重试。
  • 排查网络稳定性:执行ping <your-server-ip>测试网络丢包情况,若丢包率过高,联系网络提供商排查线路问题。

内容的提问来源于stack exchange,提问作者Sun Bear

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 14:39:53