AWS 密钥对丢失如何恢复

AWS Key Pair Lost how to Recover

据我所知,没有办法恢复丢失的密钥对。亚马逊,即使他们可以,也不会再给你了。

如果您仍然可以访问 aws 控制台,您可以创建 运行 实例的快照并从该快照中启动一个新实例并为其分配一个新的密钥对 - 这次制作一些复制并存放在几个安全的地方。

无法恢复丢失的密钥对。除了来自@E.J 的建议。 Brennan,还有另一种方法可以访问您的实例,而无需通过快照重新创建它。

停止实例,解除启动磁盘与实例的关联。然后,您可以将该卷与另一个实例相关联,安装它,然后您就可以访问文件系统。

更新 /home/ec2-user/.ssh 中的 authorized_keys,然后还原步骤 - 解除与临时实例的关联,将其与原始实例关联,然后重新启动原始实例。

您可以从您的私钥重新创建一个 public 密钥,如果您有的话:

ssh-keygen -f "your-private-key.pem" -y > "newPublicKey.pem"

新密钥生成后,在编辑器中打开,复制内容。

转到 AWS 控制台 → EC2 控制台 → 密钥对 → 导入密钥对。

在选项中,使用丢失密钥的名称,并粘贴您复制的public密钥数据。

还有另一种方法无需反汇编实例,这是对我有用的唯一方法:

1- 在实例中使用 ssh-keygen 或使用 putty 创建另一个密钥对(如果使用 putty,请使用 putty gen 创建 ppk 文件)

2- 使用 pem 文件创建一个 ppk 文件(其中有 public 部分和密钥的私有部分)

3- 通过 AWS 内部的 EC2 实例连接访问实例

4- 使用 vim 访问文件 .ssh/authorized_keys 并使用以下内容添加或替换内容: ssh-rsa ppk_public_part pem_filename_without_extension

5- 保存 authorized_keys 文件

6- 使用您机器上的 pem 文件测试访问

重要提示:您仍然需要确保安全组允许通过您的 IP 和端口 22 访问实例才能正确使用 SSH。