.ppk和.pem有什么区别?在亚马逊EC2集群中,.pem存储在哪里?

22

我正在使用亚马逊的EC2集群运行GraphLab。他们需要我的 .pem 文件的位置,这是我的私钥。

经过搜索,我仍然找不到该文件在Ubuntu中的位置。我正在使用PuTTY。

2个回答

58

.pem文件是您在创建密钥对时从AWS下载的文件。这只是一次性下载,您无法再次下载。

您的软件正在要求您提供.pem文件。现在您需要找到那个文件。您可能已经将其下载到您的笔记本电脑/台式机等设备上。

正如我上面所说,.pem文件不会保存在EC2上的任何地方。这是一次性下载,您必须妥善保管。

对于Putty(Windows SSH客户端),它不支持.pem格式。因此,您需要使用PuTTyGen将其转换为.ppk格式。它本质上是.pem文件,但以不同的格式使得Putty可以使用它。


1
嗨,slayed,谢谢回复。我实际上下载了.pem文件,然后将其上传到Amazon S3,然后使用sudo wget在我的机器上获取它。我认为它能够访问.pem文件。但是我现在遇到了一些其他问题。 - Divine Retribution
没问题。如果问题与ssh有关,我很乐意帮忙。如果问题涉及到GraphLab,那么我就没有相关的专业知识了。 - slayedbylucifer
1
喜欢你的解释... (y) - Sourav Roy

22

您在这里有两个问题。我知道我回答晚了,但我会继续回答。

问题#1

.ppk和.pem之间有什么区别?

.pem.ppk文件很相似,因为它们都是私钥文件格式。而公钥文件格式则是.pub文件——但那是另一回事。

.pem.ppk之间的区别如下:

  1. 系统/平台兼容性

    .pem是一种事实上的标准

    • Linux BASH用户-.pem文件格式
    • Mac BASH用户-.pem文件格式
    • Windows / Linux / Mac PowerShell用户-.pem文件格式
    • Windows PuTTY / Cygwin用户-.ppk文件格式
  2. 文件内容

    .pem

-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAxZls7NgRS5rtDH+mCgEeqSO12BiPAY2dhZZbTkPEoDUVqG46
PHGIBBERISHFKS3xE4eMMY+uWPriviY0W12EFqYBUJDq6GmGSQPMSI8Kep7OgVGK
d2t3/Lq+I8ZqlFwAgPwS7n18mlgTV/YyA0HCCIa+kZGKqbsuylfsODUAJGQqOtUM
FKX4+O45RrJwcQGI2M+pbD4+Ow28iEsNP3flQKvamNuezm2VallhGiO/E39UITrB
27FWM1pLQo5etyE378h5q8BKMGKt1ZPxPhjiNjBefGZ1Dscw7CA5
-----END RSA PRIVATE KEY-----

.ppk

PuTTY-User-Key-File-2: ssh-rsa
Encryption: none
Comment: imported-openssh-key
Public-Lines: 3
AAAAB3NzaC1yc2EAAAADAQABAAABAQDFmWzs2BFLmu0Mf6YKAR6pI7XYGI8BjZ2F
llGIBBERISHobjo8c6DjH6iBW0UpLfETh4wxj65Y+uK+JjRbXYQWpgFQkOroaYZJ
1DxehJUvZpuZqLSUGvZrUzbYmx25oVE5+x6UBSA0NUiTpq6jWFPH
Private-Lines: 3
AAABAFLQsak2CVGhldYWLbWlsH78+3qdGFpzSuCxGoVbu63VccVMpVWutHBcVVgZ
s4GIBBERISHcVhru01cUVf8w22pOmuB0TC+qAmDZmaWTZbXslun2Dc1tGjWu4n/F
S0KOXrchN+/IeavASjBirdWT8T4Y4jYwXnxmdQ7HMOwgOQ==
Private-MAC: 5fGIBBERISHda60d2e8b049e655e4a8a78bb18dc

第二个问题

在亚马逊EC2集群中.pem文件存储在哪里?

在AWS中,.pem文件并不直接存储在单个机器上。

您可以通过以下方式获取.pem文件:

  1. 启动新实例

    当您创建EC2实例时,您将获得一个默认的.pem文件,您可以使用该文件访问新实例。

  2. 通过IAM创建新的.pem文件


根据我的观察,使用Base64解码pem格式的私钥和ppk格式的私钥部分后,可以发现pem密钥以ppk私钥部分的每个字节结尾。因此,我认为pem必须有一个前缀,其中包含与ppk文件本身编码不同的相关信息(这是我的假设)。 - timmi4sa

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