AWS新秀在这里。我在我的AWS账户下创建了一些EC2实例,并为所有这些实例重用了相同的密钥对。我相信(IIRC)我从AWS内部生成了密钥对,但这可能是错误的。
在过去的这个周末,我卖掉了我的旧笔记本电脑(完全擦拭硬盘后)并换了一台新笔记本电脑。我现在只记得(:facepalm
),我忘记将所有SSH私钥复制到闪存驱动器中,而且我不再拥有它们。
我想要/需要做的就是SSH进入我的EC2实例,但要做到这一点,我需要我的SSH密钥。我仍然可以访问AWS控制台,我可以登录并查看我的所有EC2密钥对。但我没有看到任何下载它们或使用新密钥对更新我的EC2实例的选项。
所以我问:
我真的不想拆除旧的EC2实例并重新配置新的EC2实例,这将花费我们大约一个星期的时间(尽管可以说,这对我有用!)。
答案 0 :(得分:3)
重建不应该是必须的。我建议选项2更快更容易。
1>可以更改/附加新密钥吗?
关闭您要访问的ec2实例(" target")。
创建一个新的("临时")实例。
从目标实例中删除主EBS卷(记下其当前附件!)。
在临时实例上附加/挂载目标卷。
在已装载的卷上编辑相应的authorized_keys文件。
卸载目标卷,并重新连接到目标ec2实例(使用您在分离时记下的配置)
启动目标实例并使用新密钥登录。
删除临时实例
2>是。快照实例。从快照中选择一个新实例,选择一个不同的密钥(在启动向导结束时单击启动时会出现密钥对弹出窗口)
答案 1 :(得分:0)
将 ec2 用户数据更改为多部分 mime。
零件:
cloud_final_modules:
- [scripts-user, always]
覆盖/home/ec2-user/.ssh/authorized_keys
请参阅此博客文章 replace ec2 ssh key