亚马逊EC2实例:服务器拒绝了我们的密钥。

6
我已经在Amazon EC2实例上工作了将近一周了。 我在Ubuntu实例上安装了LAMP,但昨天突然间,在尝试通过putty连接SSH时出现了错误“服务器拒绝了我们的密钥”和“没有可用的支持身份验证的方法(服务器发送:公钥)”。

enter image description here

我不确定是什么原因导致这个错误,因为我没有在AWS控制台和实例本身上更改任何设置。在设置服务器之前,我能够在服务器上进行SSH连接。在分配弹性IP给实例之前,我进行了操作。

你解决了这个问题吗? - CLIFFORD P Y
我在AWS上使用了Bitnami的WordPress AMI,遇到了同样的问题。管理控制台猜测Debian的putty用户名为admin,但实际上是错误的。在搜索AMI后,我发现正确的名称是Bitnami。 一旦我在putty中使用相同的用户名,我就能够连接成功。 - Anshumaan Bakshi
5个回答

2

我正在使用Bitnami AMI在aws EC2上设置ubuntu-Wordpress。在最后一次安装过程中,我添加了基于SSH的安全性,并下载了一个.pem私钥。 尝试使用putty创建SSH隧道时,我遇到了众所周知的putty登录问题,包括用户名和私钥。我通过以下方式解决了这些问题: 1)用户名应为“bitnami”(ec2-user不起作用) 2)使用puttykey将公共SSH密钥从.pem转换为.ppk(因为putty要求私钥为ppk格式),我必须使用SSH-1(RSA)而不是默认参数。 通过这样做,putty可以完美地连接到我的EC2实例的私有IP。 希望这可以帮助!


1
Putty发送到实例的公钥被拒绝了。即使您可能没有改变任何东西,但事情已经发生了变化。需要检查的事项包括确保您以正确的用户身份登录,Putty能够读取公钥文件,并且您正在尝试登录到正确的EC2实例。如果您的实例没有弹性IP并且您的实例已停止并启动,则实例的公共IP将更改,您现在连接到不同的实例。确认SSH连接中的所有内容都是正确的。

1
将以下与编程有关的内容从英语翻译为中文。仅返回翻译后的文本:将其作为评论发布,这不是一个解决方案。 - Pranav Totla

0

对我有效的方法是:

  • 停止 EC2 实例
  • 卸载卷
  • 使用相同密钥将卷附加到旧实例上,并能够 SSH
  • 在某个临时文件夹中挂载该卷
  • 检查目录中的文件 mount_point/home/ec2-user/.ssh/authorized_keys 理想情况下,此文件需要具有我们的密钥信息,但对我来说,此文件为空
  • 将旧实例的 authorized_keys 文件复制到新挂载的卷上
  • 卸载设备
  • 重新附加到原始 EC2 实例
  • 启动并让其通过健康检查

这次对我起作用了。 但我不知道为什么在实例启动时它没有我的密钥文件信息。 也请查看此链接 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html#TroubleshootingInstancesConnectingMindTerm


0

我曾经尝试使用ec2-user,但最终意识到这只适用于Amazon Linux。对于Ubuntu Server 18.04 AMI,用户是ubuntu(至少在撰写本文时如此)。

enter image description here


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接