云计算百科
云计算领域专业知识百科平台

【已解决】ssh远程连接服务器报错(vscode)Could not establish connection to “xxx”

问题背景:

我想用vscode的Remote-SSH远程连接AutoDL的服务器,结果出现报错Could not establish connection to “xxx”。经过一套丝滑小连招(其实…是一天的折磨…)解决了问题!

问题特征包括

Bad owner or permissions on "xxx",以及,过程试图写入的管道不存在等…

个人操作(不是方法,仅供参考~)

  • 重开了VScode,把VScode卸载重新安装在了默认路径(就是C盘,安装时一直点下一步…)
  • 重开了AutoDL的实例,这里【可能是有作用的地方】,改用了比较新的Ubuntu22.04

因为之前我的AutoDL那个实例是Ubuntu18.04的,而较新的VS Code已经提高了远程服务器的构建要求…

  • 修改了.ssh的config的权限。因为错误中还出现了“UnparsableOutput”,查询得知,这意味着SSH命令的输出无法被VSCode的Remote-SSH扩展正确解析。可能是由于配置文件权限设置不正确导致的…

修改过程如下:

1.打开命令提示符:

 Win + R 键,输入 cmd,然后按回车

2.导航到 .ssh 目录:输入以下命令切换到 .ssh 目录:

cd C:\\Users\\<your-username>\\.ssh

3.检查当前权限:输入以下命令检查config文件的当前权限:

dir /Q config 确认显示的所有者信息是正确的。

4.设置文件权限:输入以下命令来修复文件权限,确保该文件只能由自己读取和写入:

icacls config /inheritance:r

icacls config /grant:r "<your-username>":(R,W)

icacls config /remove:g Users

一些注意:

1.因为我C盘的用户名称是中文的,一度导致我在思考问题是否在这里,但现在看来并非如此,帮大家排除一个错误答案…

2.推荐在VS Code的扩展安装个Copilot,能帮助解决不少问题,或是提供几个解决问题的思路。

3.最后再看看你的ssh的内容和格式对不对(有没有多l了个空格,或者是拼写错误…)

4.其实我还试了一下其他博主提供的方法(虽然在我这里没有解决问题,但是也供大家参考啦),就是在VSCode左侧栏打开扩展Extentions,找到已经安装好的Remote -SSH,右键点击,选择“Extension Settings”,在Config File中输入自己电脑的config文件绝对路径(一般是C:\\Users\\…到.ssh的config),最后重新尝试连接。

最后

砥砺奋进,共赴山海!

赞(0)
未经允许不得转载:网硕互联帮助中心 » 【已解决】ssh远程连接服务器报错(vscode)Could not establish connection to “xxx”
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!