2016-03-28 82 views
3

如果其他人拥有我们用于ec2实例的私钥,并且密钥对不再安全使用,我们应该如何继续?Amazon AWS密钥对不再安全使用。如何在ec2实例上禁用/替换此密钥对?

从我所了解的情况来看,一旦实例开始运行,就无法取代密钥对。我认为唯一的选择是以某种方式将当前的ec2实例替换为新的实例(一个副本,包含完全相同的数据/卷,并希望使用相同的ip地址),但我不确定如何安全地执行此操作(以及最好让我们的服务器停机时间最少)。这样,一旦旧实例终止,可以生成一个新的密钥对,并且旧密钥对将变为废弃。否则,另一种选择可能是以某种方式禁用当前密钥对并添加一个新密钥对,但我不知道该怎么做(也可能不是最好的长期解决方案)。

在这种情况下,有人可以向我提供最佳解决方案的说明吗?并希望让我知道,如果我在正确的轨道上。使用aws可能很危险,所以我想确保我正确地做到了这一点。

回答

6

放松。这不是非常困难,也不需要终止实例。在更改密钥对之前,请始终保持多个会话处于打开状态,以便在出现错误时使用其他ssh会话来恢复访问。

在这个例子中,我假设用户为ubuntu,但适用于任何用户。

  1. 采取的AMI机器万一出了差错

  2. 生成一个新的密钥对。将私钥保存在安全的地方。让公共密钥是key.pub

  3. 编辑/home/user/ubuntu/.ssh/authorized_keys文件,并与key.pub

  4. 的内容替换文件的内容尝试ssh到机器与新的私钥

  5. 如果可以ssh使用新密钥重新启动机器,以便关闭所有活动的ssh会话

  6. 如果您不能使用新密钥ssh,请返回t第2步,看看出了什么问题。

+0

太棒了,谢谢 – Matt