VsCode remote-ssh 在新计算机上不起作用

Posted

技术标签:

【中文标题】VsCode remote-ssh 在新计算机上不起作用【英文标题】:VsCode remote-ssh not working on new computer 【发布时间】:2020-11-29 08:10:42 【问题描述】:

所以我给自己买了一台新电脑。幸运的我。赢 10 专业版。

但是 SSH 不是我的强项。我可以使用以下命令通过命令行登录到我的远程服务器:

ssh username@myserver.com

提示输入密码 - 直接输入。

我已将 .pub 文件和配置文件从旧计算机的 .ssh 目录移动到新计算机,但 VScode 无法登录。我使用 ssh-keygen 创建了一个新密钥并将其添加到服务器上的 .ssh/authorized_keys 中。没有登录。我只是不断得到:

Load key "C:/Users/myuser/.ssh/key.pub": Permission denied

我在这里缺少什么?我已经经历了足够多的时间来确保没有拼写错误。在我的旧电脑上一切正常。

编辑:

要设置 ssh 密钥我:

ssh-keygen -t rsa -b 4096 -f %USERPROFILE%/.ssh/pub_rsa

然后:

scp -p 22 %USERPROFILE%/.ssh/pub_rsa.pub username@server.com:~/

最后:

cat ~/pub_rsa.pub >> ~/.ssh/authorized_keys

...当然还有 chmod 文件到 600。

ssh -i %USERPROFILE%/.ssh/pub_rsa -p 22 username@server.com

... 无需提示输入密码即可正常登录。 我的远程 ssh 配置文件如下所示:

Host my_remote
    HostName server.com
    User username
    Port 22
    IdentityFile C:/Users/MyDir/.ssh/pub_rsa.pub 

EDIT2: 如果我从 IdentityFile 的最后一行删除 .pub,我会收到此错误消息,并且 VScode 只是重复自身无法登录 -->

【问题讨论】:

请edit您的问题详细描述您在服务器和vscode中设置此ssh密钥的操作。 我现在试图解释我的流程,@Kenster。还试图记住我还尝试过的其他内容 - 因为从这个意义上说,帖子可能也不完整。 IdentityFile C:/Users/MyDir/.ssh/pub_rsa.pub***.com/a/29948797/13317 试过了,@Kenster。编辑原始帖子以反映这一点。 【参考方案1】:

首先,我确认 ssh 配置文件将始终引用私钥(在您的情况下为 pub_rsa),而不是公钥。

其次,关于flock的错误信息,查看microsoft/vscode-remote-release issue 1896

查找设置:Remote.SSH: Lockfiles In Tmp 检查一下

(参见issue 2059,确保使用最新的 VSCode 版本)

【讨论】:

不幸的是,我的 remote.ssh:Tmp 中的锁文件已经被检查过了。而且我有最新版本(新电脑、新软件 - 没有可用的更新)。所以检查所有三个 - 但仍然是同样的问题。【参考方案2】:

将 remote-ssh 回滚到 0.49 版 - 这似乎成功了。检查this post 是否有类似的问题/解决方案。

【讨论】:

以上是关于VsCode remote-ssh 在新计算机上不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Vscode : 通过集成终端使用 Remote-SSH 在本地打开文件

VSCode:Remote-SSH

[随笔]VSCode Remote-ssh+云主机搭建pySpark学习环境

[随笔]VSCode Remote-ssh+云主机搭建pySpark学习环境

玩转VSCode插件之Remote-SSH

使用VSCode的Remote-SSH连接Linux进行远程开发