我被授予了 AWS 控制台访问权限,可以访问一个正在运行的 2 个实例,我无法关闭它们(在生产中)。但是,我想获得这些实例的 SSH 访问权限,是否可以创建新的密钥对并将其应用于实例,以便我可以通过 SSH 访问?目前无法获取创建实例时所用密钥对的现有 pem 文件。
如果这不可能的话还有其他方法可以让我进入实例吗?
答案1
https://forums.aws.amazon.com/thread.jspa?threadID=46776&tstart=45#179656
- 启动新实例
- 从锁定的实例中分离根设备(必须是 EBS)
- 将锁定实例的根设备附加到新实例
- 登录到新实例,挂载附加设备,将 .ssh/authorized_keys 替换为新实例的 .ssh/authorized_keys(或其他)
- 卸载、分离、重新连接
答案2
只是为了在有人读到这篇文章时提供另一种选择:如果实例是通过某种配置管理系统(如 Puppet 或 Chef)进行管理的,则您可以使用它将新密钥推送到正在运行的实例。
答案3
除非使用的 AMI 有“后门”(您可以在自定义 AMI 上添加后门,但从安全角度来看这绝对不是一个好主意,我所说的后门是指启用预设私钥和/或密码验证),否则您将陷入困境,除非您拥有这些实例上使用的密钥对的 PK。您唯一的选择是使用新密钥对启动新实例。
很抱歉我无法提供您想要的答案。