有权访问EC2实例时更改EC2 pem文件密钥对

时间:2018-12-05 17:24:16

标签: amazon-web-services amazon-ec2 ssh

谢谢您的时间。

我有一个EC2实例,但是出于安全原因,我需要更改.ssh / authorized_keys中关联的pem文件。我确实知道公共Pem文件进入了authorized_keys。

我不想将ec2实例的卷装入新的卷。我正在考虑作为最后的选择,因为我确实有权访问EC2实例。

这怎么办?

我尝试过: 这篇文章Change key pair for ec2 instance是Pat Mcb的回答,但没有运气。

  

下载AWS pem后运行此命令。

     

ssh-keygen -f YOURKEY.pem -y然后将输出转储到   授权密钥。

     

或将pem文件复制到您的AWS实例并执行以下命令

     

chmod 600 YOURKEY.pem,然后

     

ssh-keygen -f YOURKEY.pem -y >>〜/ .ssh / authorized_keys

但这对我不起作用。如果我严格按照此说明下载aws密钥对密钥,并在ssh进入实例时(当我执行ssh-keygen -f YOURKEY.pem -y >>〜/ .ssh / authorized_keys时,通过处理密钥来遵循说明),要求输入一个密码(无需输入密码)

我正在做的事情如下。 我用创建一个新密钥 ssh-keygen newpem.pem

和.pub文件,我将其复制到.ssh / authorized_keys

有人可以解释我做错了什么吗? 请注意,authorized_keys文件具有正确的权限。

2 个答案:

答案 0 :(得分:1)

似乎您想弃用旧密钥,而改用新密钥。这些步骤可能对您有帮助-

  1. 使用aws控制台创建新的密钥对,并将其下载到系统中。

  2. 使用命令-“ ssh-keygen -y”

  3. 从私钥(.pem)文件中检索公钥。
  4. 使用旧密钥SSH进入实例。

  5. 一旦您有权访问该实例,请将在第2步中获得的公钥添加到“〜/ .ssh / authorized_keys” 文件中,然后保存该文件。

  6. 注销实例,然后尝试使用新密钥访问实例。

希望有帮助。谢谢!

答案 1 :(得分:1)

您甚至不需要做所有这些事情,仅需注意AWS EC2的几件事,您就可以获得默认用户的私钥。例如ec2-user / ubuntu等。

您正在采取正确的步骤

ssh-keygen -t rsa -C“ your_email@example.com”

如果要求输入任何释义,请将其留空。

只需按以接受默认位置和文件名。如果.ssh目录不存在,系统将为您创建一个。

如果提示输入密码,请输入并重新输入

您现在拥有那个钥匙。

复制该密钥

  • 登录到您的Ec2服务器。

    sudo su

    vim〜/ .ssh / authorized_keys

    粘贴密钥。

    :wq!

您将在其中看到一个密钥,将其复制并保存为备份。

现在将新生成的密钥粘贴到该文件中

并保存文件。

现在要注意的最后一步是权限,因此请运行以下命令。

sudo chmod 700 .ssh && chmod 600 .ssh / authorized_keys

现在你可以去了。