感谢您查看我的问题。
几个月来,我一直在使用 VS Code 远程 SSH 功能将代码从我的办公桌写到由 WHM/cPanel 管理的远程服务器(我拥有完全的根访问权限),没有出现任何重大连接问题。突然之间(如:从昨天开始)VS Code 显然无法为任何 cPanel 帐户显示服务器上文件夹的内容,但它可以成功建立 SSH 会话(我也可以从 PuTTY 或终端执行此操作)。我可以将相同的 VS Code 安装连接到另一个 Ubuntu 服务器并列出内容、远程编辑文件等等。
在网上的几个地方阅读时,发生这种情况是由于 SSH 将标志AllowTcpForwarding设置为off,我检查了/etc/ssh/sshd_config并且由于未指定它我将其明确设置为on 。还尝试了其他几项操作:重新启动 SSHD、优雅地重新启动服务器、来回修改sshd_config、禁用 cPHulk、删除 vs 代码服务器文件夹以让它自动重新安装以及其他一些我目前不记得的事情。DEBUG3 的 sshd 日志级别的文件/var/log/secure显示一条没有提供很多线索的错误消息:
sshd[5463]: debug1: channel 1: connection failed: Connection refused
sshd[5463]: error: connect_to 127.0.0.1 port 38185: failed.
显然有什么东西阻止了与服务器上转发端口的连接,导致拒绝连接,但我似乎无法找到什么,更不用说为什么或如何了。非常感谢任何指点和线索找到罪魁祸首并重新获得通过端口转发功能连接的可能性。
几天后更新 VS Code(更新到版本 1.76.1 和日期 2023-03-08T16:32:00.131Z 截至此时 - 1 天前的版本)我可以连接回服务器并编辑我的代码直接项目。
根本原因在我这边是不确定的,但我在 Virtuozzo VPS 上运行这个实例,所以最新版本发行说明上的这个修复很可能是罪魁祸首。
为了完成,github 问题报告标题为vscode-server crashes, if there is no network interface with a valid mac address present,这将导致端口转发上的连接失败,因为没有实体监听转发端口,因此通讯中断了。