Google server putty connect'断开连接:没有支持的authentication方法可用(服务器发送:publickey)

我试图通过PuTTy连接到我的Debian谷歌计算引擎服务器(我也试过其他select),但是当我这样做,我得到错误“断开:没有支持的身份validation方法可用(服务器发送:publickey)

谷歌服务器没有用户名和密码,只有一个URL自动login到自己的terminal。

我有PuTTY工作,然后有一天得到这个错误。

解决scheme :我修改了包含我的证书(私钥)的文件夹path名,这导致Pageant失去了证书的跟踪,所以是空的。

一旦我将证书重新安装到了Pageant中,那么腻子又开始工作了。

打开密码validation

默认情况下,您需要使用密钥sshlogin到您的Google计算引擎计算机,但是如果您不需要该级别的安全性,则可以启用密码身份validation。

提示:使用您的云端控制台中的Open in browser窗口中的 SSH选项访问本机。 然后使用sudo su - root切换到root用户,在下面进行configuration更改。

在这里输入图像说明

  1. 编辑/etc/ssh/sshd_config文件。
  2. PasswordAuthenticationChallengeResponseAuthentication更改为yes
  3. 重启ssh /etc/init.d/ssh restart

您需要使用SSH密钥login到您的实例。

GCE文件解释了这里的过程。

我有同样的问题,只是想通了!

假设您已经创build了私钥/公钥,并在远程服务器上添加了您的公钥,请键入username@remotehost.com,然后转至连接 – > SSH – >validation,然后单击浏览find您的私钥。 在你select之后,它将填充input字段。 之后,点击OPEN …

所以这里重要的是顺序…确保你首先input主机的参数,然后find你的私钥。

请按照此指南: https : //gist.github.com/feczo/7282a6e00181fde4281b与图片。

简而言之:

使用Puttygen,点击“生成”按照指示移动鼠标并等待

  • input你想要的用户名

  • input您的密码

  • 保存私钥

复制“公钥粘贴到OpenSSH authorized_keys文件”窗口的全部内容。 确保从头到尾复制每一个字符!

转到Google云端平台控制台中的“ 创build实例”页面 ,然后在高级选项链接中粘贴公钥的内容。

请注意实例完成后的IP地址。 打开putty,从左侧菜单进入Connection / SSH / Auth,定义保存的密钥文件位置。

从左侧菜单转到连接/数据并定义相同的用户名

  • input您的实例的IP地址
  • 将保存的会话下面的连接命名为“GCE”,点击“保存”
  • 双击刚刚创build的“GCE”条目
  • 接受主人的身份

现在用你之前指定的密码login,运行sudo su – 你就全部设置好了。

显然你的主文件夹上运行sudo chmod -R a+rw也会导致这种情况发生。

我得到了这个错误,因为我忘了在GCE元数据部分的密钥后面添加我的用户名。 例如,您打算在元数据部分添加一个条目,如下所示:

 sshKeys username:key 

我忘了username:部分,因此当我试图用该用户名login时,我得到了没有支持auth方法错误。

或者,要完全closuresssh密钥要求 ,请查看我的其他答案 。

PasswordAuthentication和ChallengeResponseAuthentication在rhel7中默认设置为NO。

将它们更改为NO并重新启动sshd。

如果在Linux中使用ssh-keygen生成私钥,则需要使用puttygen进行转换,因为Putty不支持openssh密钥。

启动puttygen,点击转换 – 导入键,然后点击浏览并select用openssh生成的私钥,然后点击保存私钥。

使用你的新密钥连接。