Amazon EC2实例:服务器拒绝了我们的密钥

时间:2016-09-29 08:00:52

标签: amazon-web-services ssh amazon-ec2

我正在研究亚马逊ec2实例近一周了... 我昨天突然在我的ubuntu实例上安装了LAMP,当我尝试通过SSH在putty上连接时,它给了我一个错误"服务器拒绝了我们的密钥"和"没有可用的支持身份验证方法(服务器发送:公钥)

enter image description here

我不确定导致此错误的原因是因为我没有更改aws控制台和实例本身的任何设置。我之前能够在服务器上ssh。在我开始设置服务器之前,我为实例分配了一个弹性IP。

4 个答案:

答案 0 :(得分:1)

我正在使用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 :(得分: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

答案 2 :(得分:0)

我尝试巫婆ec2-user时间最长,直到意识到这仅对Amazon Linux有效。对于Ubuntu Server 18.04 AMI,用户为ubuntu(至少在撰写本文时)。

enter image description here

答案 3 :(得分:-1)

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