如何重新获得正在运行的 EC2 实例的访问权限?

如何重新获得正在运行的 EC2 实例的访问权限?

我们拥有一个 AWS 账户,但我们不再与对正在运行的 EC2 实例具有唯一访问权的开发人员联系。

可能无法重新启动实例:据我们了解,关闭实例可能会导致分配的 IP 发生变化。此外,可能存在需要手动启动的应用程序进程。我们还不知道。

因此,问题是:假设我们拥有该帐户并有权访问 AWS 管理 UI,我们如何获得对正在运行的实例的 root 访问权限?

(到目前为止,我们所了解的一切都指向安装新的密钥集,以便可以访问新启动的实例。)

答案1

我不明白分配的 IP 更改有什么问题。如果您使用分配给给定实例的 Amazon 静态 IP,那么这不会有影响。重启实例后,DNS 仍会解析。

要控制机器并获取密码:首先,停止实例(不要终止!!!)。然后,启动空白服务器的另一个实例(相同的操作系统),然后连接无法访问的实例的硬盘驱动器,然后您可以从中安装驱动器并使用常规方法恢复密码。恢复密码后,卸载驱动器,重新启动实例并登录。

我不认为您可以安装另一个实例的驱动器,除非另一个实例已关闭。因此,无论您做什么,听起来都需要长达一小时的停机时间。

答案2

  1. 拍摄实例的快照。
  2. 创建一个新的密钥对。
  3. 启动一个新实例。
  4. 通过 SSH 连接到它。
  5. 通过 AWS 控制台将快照作为 /mnt 上的简单卷附加到新实例。
  6. 将必要的数据/配置从 /mnt 复制到新实例上的正确位置。
  7. 测试。
  8. 将新实例设为“实时”实例(分配一个静态 IP 并将其他系统指向该 IP)
  9. 关闭旧实例。
  10. 删除旧的密钥对。

我相信这应该可以涵盖它。

答案3

获取正在运行的实例的根访问权限的唯一方法是使用开发人员可能拥有的密钥。

据我所知,密钥文件一旦生成,亚马逊就不会将其存储在任何地方。

答案4

当前 EC2 控制台(在 Amazon 帐户中)中还有另一种解决方案。您可以选择正在运行的实例并“创建 AMI”。之后,您可以使用不同的 ssh 密钥运行该 AMI 进行登录。不幸的是,当前用于创建 AMI 的 EC2 工具将重新启动您的机器以拍摄快照。

相关内容