我正在尝试遵循一个简单的过程,对此处描述的实例进行ssh'ing。不幸的是,我不断收到此错误:
Server refused our key FATAL
ERROR: Disconnected: No supported authentication methods available
(server sent: publickey)
看起来我做的一切都是正确的。
- 我创建了一个新的 ubuntu instanse
- 尝试使用
$ gcloud compute username@ssh example-instance --zone us-central1-a
登录 收到将生成 ssh 密钥的警告
WARNING: You do not have an SSH key for Google Compute Engine. WARNING: [C:Program Files (x86)GoogleCloud SDKgoogle-cloud-sdkbinsdkwinkeygen.exe] will be executed to generate a key. Updated [https://www.googleapis.com/compute/v1/projects/sharp-kayak-120708].
我收到上面提到的错误
Server refused our key FATAL ERROR: Disconnected: No supported authentication methods available (server sent: publickey)
我看到在本地机器和实例上创建的密钥(gcloud 将它们添加到元数据 -> SSH 密钥(。网络设置中允许使用 SSH。
我尝试了此处描述的替代路线:
- 使用 gcloud 生成 SSH
- 将其添加到选美
- 使用 PuTTY 的 SSH
相同的错误:
No supported authentication methods available (server sent: publickey)
非常感谢您的想法。
感谢您的报告。
此问题已在云 SDK 版本 98.0.0 中修复。它包括识别损坏的 Windows 密钥文件并动态重新生成它们的修正。
问题出在google-cloud-sdk\bin\sdk\winkeygen.exe中。它拙劣地破坏了生成的.ppk和.pub文件中的公钥模数表示。然后,ssh 服务器将模数解释为带符号的 bignum 并保释。
感谢乔治的帮助:https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!topic/gce-discussion/uAPNpkBJXi4
分步指南在这里:
- 下载PuTTY和PuTTYgen。
- 使用 PuTTYgen 生成密钥。将注释框中的文本替换为您的窗口用户名。将代码从窗口复制并粘贴到项目和实例的 SSH 密钥中(转到实例,编辑,向下滚动到 SSH 密钥列表并单击"添加"((不确定是否两者都是必需的(。不要使用密码短语。
- 此外,另存为私钥文件。为方便起见,请将其保存在 C:\Users\.ssh 文件夹中。PuTTY 将需要这种格式的密钥才能工作。
- 打开 PuTTY。将密钥添加到会话:连接>SSH>身份验证>浏览。指向刚刚在 .ssh 中创建的新生成的密钥文件。
- 设置会话。 输入 IP 地址。 此时值得保存 - 它会记住 IP 和密钥。
- 打开。。。
- 登录身份:...输入您在密钥生成中作为注释添加的 Windows 用户名。
我现在启动并运行了! 期待一个修复,让"谷歌计算ssh命令工作!错误报告:https://code.google.com/p/google-cloud-sdk/issues/detail?id=546