繁体   English   中英

无法通过 Visual Studio Code 远程 SSH 连接到 GCP VM

[英]Unable to Connect to GCP VM Via Visual Studio Code Remote SSH

一段时间以来,我一直在尝试使用 SSH 密钥和 vscode 的远程 SSH 扩展将 vscode 连接到谷歌云平台中的虚拟机实例,但未成功。

根据教程和文档示例,这是我当前的配置文件(IP 和用户名空白以确保安全):

Host ipaddress
    User myusername
    HostName ipaddress
    IdentityFile ~/.ssh/dev-env-open-ssh-format-privkey 

配置文件位于~/.ssh文件夹中。 当我尝试连接时,我收到消息。

Could not establish a connection to "ipaddress". 

从输出终端(我似乎无法获取所有文本,因为带有失败消息的弹出对话框不允许我访问复制日志)。 但我注意到输出中的这一行

> no such identity: C:\\My Username Has a Space/\\.ssh\dev-env-open-ssh-format-key: No such file or directory
>username@ipaddress: Permission denied (publickey).

根据我的尝试,斜线的方向不同,但信息或多或少保持不变。 我不明白为什么错误消息中的斜杠比配置文件中指定的斜杠多。

我尝试过的:

  • 将斜线从向前更改为向后
  • 将私钥导出为 ssh 格式(正如我在 code.visualstudio.com/docs... 上看到的那样)
  • 来自 puttyGen 的原始 privKey
  • 指定密钥的完整路径 - C:\\Users\\My Username Has a Space.ssh\\privKey
  • 上面的点带有正斜杠和反斜杠,有和没有双引号。
  • 使用以下方法清除设置: Remote-SSH: Kill VS Code Server on Host
  • 我尝试将 privKey 直接放在 C 驱动器的根目录以排除用户名中的空间错误。
  • 重启本地电脑(无奈)
  • 重启虚拟机

什么工作

  • 通过 Putty 连接 VM(使用原始 privKey)
  • 通过 FileZilla 连接到 VM(使用原始 privKey)
  • 注意:以上两种方法都连接到虚拟机,然后提示输入密码。 我提供密码然后我就进去了。

我没有得到使用 vscode 输入密码的提示,但我想如果没有 privKey,它不会走得太远。

我正在使用带有 vs 代码 1.60.1 的 Windows 10。 VM 正在运行 Ubuntu 20.04 LTS。 远程 - SSH v0.65.8。

我不确定还有哪些其他信息与获得帮助有关。

对于配置文件,您应该使用以下配置:

Host your-instance-name
HostName external-ip-address
Identity files C:\path\to\your\key\this_is_the_key_name
User the-user-you-choose-for-the-key

您需要使用.pub格式的密钥(您可以安装 git 并使用 ssh-keygen.exe 创建一个密钥),因为如果您使用 PuTTy 生成了.ppk格式的密钥,这将不起作用。

另一件事:当您尝试连接到您的实例时,请确保C:\\Users\\yourname\\.ssh 中的文件

知道_主机

内部没有以前没有工作过的连接。

==============

如果您成功连接,请告诉我们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM