如何更改EC2公钥?

4
我试图为自己、使用AWS的团队以及运行实例更改我的EC2公钥。
因此,旧的密钥是(例如)“my_key”,我创建了一个名为“my_key2”的新密钥。
我创建了新密钥,并将.pem文件保存在旧文件旁边,因此“my_key.pem”和“my_key2.pem”都存放在我的~/.ssh文件夹中。
现在,我正在尝试通过ssh进入其他实例来更改它们的授权密钥以共享我的公钥,但当我尝试ssh时,我会得到以下错误:
amy$ ssh ***-**-**-***-***.foo.com

Permission denied (publickey).

我尝试将新的'my_key2'文件从.ssh文件夹中移出,但是仍然存在同样的问题。在我开始摸索之前没有遇到这个问题。有什么技巧可以让ssh识别我的旧证书,以便我可以让所有人使用新的keys?

2个回答

4
您需要停止实例(如果是EBS支持的实例),以更改用于该实例的密钥对。如果不是EBS支持的卷,您只需从新的AMI启动另一个实例并使用新的密钥对即可。
如果您无法轻松重新启动实例或创建新实例,则有一种方法声称能够在运行中的实例上更改公钥,但我没有尝试过。真正正确的方法是通过停止/启动或创建新实例来完成。

http://seabourneinc.com/2011/01/19/change-key-pairs-on-aws-ec2-instance/


密钥在启动时从AWS下载,这是您无法更改的内容。最佳实践是使用您个人的密钥对创建一个新用户,并在/etc/sudoers中授予自己所需的访问权限。 - Kevin Willock

0

http://seabourneinc.com/2011/01/19/change-key-pairs-on-aws-ec2-instance/这个解决方案可行,我已经检验过了。操作简单易懂。

登录 AWS 控制台,创建一个新的 pem 密钥,系统会提示你将其保存至本地,保存即可。

运行以下命令:

ssh-keygen -y | tee my_key.pub 输入存放新 pem 密钥文件的路径和文件名。

上述命令将在屏幕上显示内容,将其复制并粘贴到 EC2 实例的 authorized_keys 文件中,保存并关闭。 现在,您可以使用所保存或下载的新 pem 密钥文件访问 EC2 实例了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接