我可以从 Windows 7 笔记本电脑通过 SSH 和 SFTP 连接到我的 Google Compute Engine 实例,直到我更换了笔记本电脑并升级到 Windows 10。在这种情况下,我丢失了之前的设置,所以不得不重新开始。我按照下面提供的步骤操作,但没有成功 -
无法通过 SSH 连接到 Compute Engine 实例
https://cloud.google.com/compute/docs/console#sshkeys
我的设置相同,只有一点变化,那就是我的本地机器在 Windows 10 上运行。
我在 Windows 10 上使用了 gcloud sdk,它将第一次生成的公钥自动更新到我的云实例上,我也可以验证这一点。
但是从 gcloud 和 Putty 登录都失败,并显示错误代码“已断开连接:没有可用的受支持的身份验证方法(服务器发送:公钥)”。
但是我可以通过 Web SSH 成功登录。
可能是什么问题?
是不是我在生成密钥时只能使用我的 Gmail 帐户/电子邮件(采用某种特定格式)?还是 Windows 10 SDK 兼容性问题?还是其他什么?
答案1
OP 已通过将他的 SSH 密钥复制到 authorized_keys 文件解决了此问题。如果您的虚拟机上未运行 Google 帐户守护程序,则可能导致此问题。此守护程序负责在元数据和虚拟机之间同步 ssh 密钥和用户帐户信息。有关帐户守护程序的更多信息,您可以访问此关联。