【问题标题】:generate pem File for EC2 Instance at Amazon为 Amazon 的 EC2 实例生成 pem 文件
【发布时间】:2015-12-30 15:33:48
【问题描述】:

对于我们的生产系统,我们正在运行 Amazon EC2 实例。 负责这件事的同事(比如叫他乔)已经离开了公司。

现在我们想让ssh 访问我们的实例。

他给我们留下了他的私钥和公钥文件。

id_dsa
id_dsa.pub

在后端我们可以看到,键“joe”被分配给正在运行的实例,ssh 访问是通过以下命令完成的:

ssh -i "joe.pem" ec2-user@11.22.11.123

我们如何生成.pem 文件?或者更笼统地说,需要做什么才能获得 ssh 访问权限?

我们需要亚马逊的证书吗?如果有,怎么做?

【问题讨论】:

  • 您不会为已经运行的正在运行的实例“生成”pem 文件。您启动第一个使用它的实例之前生成它,并且您只有一次机会下载它。如果丢失它,则无法恢复,必须停止实例,分离根驱动器,添加新密钥,重新附加并重新启动。否则,它不会是一种安全机制。这就是你想要做的吗?

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


【解决方案1】:

用于创建新 Pem 密钥:

转到EC2 Dashboard>Key Pair>Create Key Pair

这将为您下载pem key文件。

对于 SSH 访问:

  1. 您可以将 id_rsa.pub 添加到实例 ~/.ssh/auth* 文件中。之后,您可以使用ssh ubuntu@ip ssh 到它
  2. 您可以通过ssh -i "file.pem" ubuntu@ip 使用与该实例关联的 pem 密钥

【讨论】:

  • 只是奇怪,我觉得这不像你解释的那么简单。
  • 我可以下载现有的密钥对吗?
  • 如何将这个新的 .pem 文件附加到现有的 ec2 实例 @animesh
【解决方案2】:

访问新实例

在使用 Amazon 提供的标准 Amazon 系统映像 (AMI) 时,密钥对用于授予对新推出的 Amazon EC2 实例的访问权限。 (来自其他位置的 AMI 可能有自己的登录方法。)

启动实例时,会指定一个密钥对。然后,EC2 服务会将密钥对的公共部分复制到 /home/ec2-user.ssh/authorized_keys(路径可能因所选的 AMI 而异)。

然后,要连接到实例,请使用密钥对的私有部分,就像您展示的那样:

ssh -i joe.pem ec2-user@11.22.11.123

ec2-user 登录用于 Amazon Linux 实例。Ubuntu 使用 ubuntu 作为用户名。)

要使用的密钥对的名称显示在管理控制台中 EC2 实例的信息部分:

一旦实例被访问,建议更改正在使用的密钥对,创建新用户并通常负责实例的安全性。遵循您组织的标准安全实践,而不是依赖于实例启动时使用的密钥对。

访问现有实例

对于您的特定情况,实例已经启动,并且授予访问权限的 ssh 密钥对可能(也可能不是!)是首次启动实例时使用的密钥对。

您还提到您可以看到他们的键 joe 与实例相关联。在这种情况下,您应该尝试找到joe.pem 并登录到该实例。如果找不到该文件,请尝试改用 id_dsa 文件。

如果这些都不起作用,那么问题是以下两种情况之一:

  • 您没有启动实例时使用的密钥对,或者
  • 实例本身的密钥对已更改(根据安全建议)

底线是,如果没有密钥对,您将无法 ssh 进入实例。

恢复访问权限

最坏的情况,如果你不能ssh 到实例,你仍然可以解决问题。一般步骤是:

  • 停止实例(我们称之为实例 A)
  • 分离启动卷(我们称之为卷 A)
  • 启动一个新实例,或选择一个现有实例(我们称之为实例 B)
  • 附加卷 A 到实例 B
  • 登录到实例 B 并将新的公钥对复制到卷 A 上的 .ssh/authorized_keys 文件
  • 卸载分离卷 A 从实例 B
  • 附加卷 A 到实例 A
  • 启动实例A

您现在应该可以ssh 进入实例。

一些参考资料:

【讨论】:

  • 我忘记反馈了……上面的分步说明如何帮助我。我能够获得 SSH 访问权限。非常感谢。如果有人处于同样的情况。请注意正确的挂载点。安装点显示在 Javascript 弹出窗口中。
  • 这对我有用。请记住在实例 A 的同一区域创建实例 B,否则您无法将卷 A 附加到实例 B。
【解决方案3】:

您还可以使用UserifySSH UKM 等专用工具来更新密钥——只需在生成新公钥后粘贴它,使用 Windows 上的 Putty 或 Linux 或 OSX 中已内置的工具。 (免责声明:我为 Userify 工作)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-14
    • 2013-10-06
    • 1970-01-01
    • 1970-01-01
    • 2011-10-23
    • 2016-08-11
    • 1970-01-01
    • 2014-06-07
    相关资源
    最近更新 更多