亚马逊密钥对已删除

时间:2017-05-03 00:11:57

标签: ssh amazon-ec2

我认为我删除了服务器密钥对,现在正在获取:

Using username "ubuntu".
Server refused our key

我正在为我的客户运行Amazon EC2服务器。如何恢复对服务器的访问?

2 个答案:

答案 0 :(得分:2)

虽然您无法登录Amazon EC2实例,但请不要惊慌。您的所有数据都是安全的!

实例需要将新密钥对加载到/users/ubuntu/.ssh/authorized_users文件中。

这可以通过两种方式完成:

  • 创建一个新实例,该实例将触发最初安装密钥的自动机制,或
  • 将文件复制到该磁盘卷

方法1:创建新实例

此方法生成启动卷的AMI(亚马逊机器映像),并从该映像启动新的Amazon EC2实例。这将触发在最初启动实例时用于安装密钥的相同机制。

  • 选择您的实例,然后选择图片>从操作菜单
  • 创建图片
  • 在控制台的 AMIs 部分,等到您的实例正在运行,然后选择它并选择启动
  • 输入配置信息(例如,实例类型,网络)
  • 点击最终启动按钮后,选择一个密钥对

启动过程将识别它正在新的Amazon EC2实例(具有不同的InstanceId)上运行,并将您指定的密钥对复制到authorized_users文件。然后你可以登录。

方法2:将密钥对复制到磁盘

此方法涉及将磁盘附加到另一个实例,复制密钥对,然后再次启动它。

  • 停止您的实例(“实例A”)
  • 启动另一个Amazon EC2实例,如果已有,则使用现有实例(“实例B”)
  • 从实例A中分离EBS卷
  • 将EBS卷附加到实例B
  • 登录实例B,访问新连接的磁盘并将密钥对复制到/users/ubuntu/.ssh/authorized_users文件
  • 反转以上内容:分离EBS卷,将其重新连接到实例A,启动实例A
  • 登录并快乐

这类似于过时的文件:How to Recover an Unreachable Linux Instance

答案 1 :(得分:0)

  1. 您可以停止(不终止)服务器并从中制作图像。

  2. 然后,您可以根据刚刚制作的图像启动新服务器。创建新服务器时,可以创建新密钥对。

  3. 最后,您可以登录新创建的服务器并照常使用它。