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

VS Code Remote SSH扩展无法连接远程Linux服务器问题排查

解决VS Code Remote SSH连接受限Linux服务器的问题

我看到你遇到了VS Code Remote SSH连接远程RHEL服务器的问题——虽然终端、Putty和SSH FS都能正常连接,但VS Code一直报channel 2: open failed: administratively prohibited: open failed的错误。结合你的日志和服务器权限限制(仅能操作个人文件夹、无法外部下载),我给你几个针对性的解决方案:

1. 切换到Unix Socket模式避免端口转发限制

从日志来看,VS Code已经成功在你的个人目录启动了Remote Server,但端口转发被服务器的SSH策略禁止了。最直接的解决方式是让Remote Server使用Unix Socket而非TCP端口:

  • 打开VS Code的设置(快捷键Ctrl+,)
  • 搜索remote.SSH.remoteServerListenOnSocket,将其设置为true
  • 重新尝试连接远程服务器

这个设置会让VS Code远程服务通过Unix Socket通信,绕开服务器对TCP端口转发的限制,而且你的个人临时目录/run/user/54414已经有对应权限,完全可以支持socket通信。

2. 确认VS Code Server安装路径权限

虽然日志显示Server已经安装在你的个人目录/export/home/<USER>/.vscode-server,但我们可以手动指定安装路径确保权限没问题:

  • 在VS Code设置中搜索remote.SSH.serverInstallPath
  • 添加针对该服务器的配置项:
    "<IPSERVER>": "/export/home/<USER>/.vscode-server"
    
  • 保存设置后重启VS Code再尝试连接

3. 再次确认禁用动态转发

从你的日志看remote.SSH.enableDynamicForwarding已经是false,但建议再次确认全局或针对该服务器的设置:

  • 搜索remote.SSH.enableDynamicForwarding,确保所有相关设置都是false
  • 动态转发会触发额外的端口请求,容易被服务器的限制策略拦截

4. 手动启动VS Code Remote Server(如果自动启动失败)

如果以上设置还是不行,可以手动启动Remote Server:

  1. 通过终端SSH登录到服务器
  2. 进入已安装的Server目录:
    cd /export/home/<USER>/.vscode-server/bin/f80445acd5a3dadef24aa209168452a3d97cc326
    
  3. 启动Socket模式的Server:
    ./server.sh --socket
    
  4. 保持终端会话,然后在VS Code中发起Remote SSH连接

这些方案都是针对你权限有限、服务器禁止外部下载和部分端口的场景设计的,应该能解决你遇到的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 16:17:31