我多年来一直在从Ubuntu访问我的AWS EC2实例,没有任何问题。我也希望从Windows机器连接到它。该过程似乎很简单...将我的*.pem
文件复制到Windows计算机并使用PuTTYgen转换为*.ppk
。
亚马逊指令提供以下内容......
但是当我打开PuTTYgen时,我得到......
没有可用于SSH-2 RSA的选项。
我在这里缺少什么?如果没有给定选项,如何以SSH-2 RSA格式创建.ppk
?
答案 0 :(得分:46)
只需跳过第2步:
- 醇>
在要生成的密钥类型下,选择 RSA 。
如果您使用的是旧版PuTTYgen,请选择 SSH-2 RSA 。
AWS文档在这里是错误的。 要在PuTTYgen中转换现有私钥文件(pem到ppk),您无需选择密钥类型。 PuTTYgen将自动检测私钥文件中的密钥类型。您将在两个顶部框中看到已加载键的密钥类型。
另请注意,虽然目前AWS始终生成RSA密钥,但如果他们更改了密钥,请不要担心并保留密钥的生成,无论它是什么类型。
文档错误引用的选择仅用于“生成”新密钥(正如其标签清楚地说明的那样)。它对转换现有密钥完全没有影响。
无论如何,要回答这个问题:这是第一个“RSA”选项:
如今,SSH-2已成为事实上的标准。所以在PuTTYgen的最新版本中,他们选择不明确提及版本(为新的ECDSA和ED25519密钥类型节省空间)。
AWS文档中的屏幕截图来自较旧版本的PuTTYgen,它不支持ECDSA和ED25519密钥类型。
检查PuTTYgen documentation。它明确提到所有密钥类型(明显例外的“SSH-1(RSA)”)都是针对SSH-2的。
SSH-1协议仅支持RSA密钥
SSH-2协议支持多种密钥类型。 PuTTY支持的类型是RSA,DSA,ECDSA和Ed25519。