将 PEM 转换为 PPK 文件格式
Posted
技术标签:
【中文标题】将 PEM 转换为 PPK 文件格式【英文标题】:Convert PEM to PPK file format 【发布时间】:2011-03-12 13:33:30 【问题描述】:有没有办法将 PEM 文件转换为 PPK 文件? (你可能猜到 Amazon EC2 给了我一个 PEM 文件,我需要使用 PPK 格式进行 SSH 连接)。
【问题讨论】:
从未听说过 ppk 格式,但我怀疑 .NET 中是否有任何内容。 PPK 是 Putty 客户端格式。我不认为 .NET 与它有任何关系。 好吧,我没有意识到这一点......所以 PPK 只是一种专有/奇怪的格式,只存在于 Putty 领域? 这也是 FileZilla 接受的唯一格式。 AmazonWebServices 提供密钥的默认格式。 【参考方案1】:使用PuTTYGen
创建和使用 SSH 密钥
概述
vCloud Express 现在能够为 Linux 服务器创建 SSH 密钥。此功能将允许用户通过选择“我的帐户/密钥管理”选项来创建多个自定义密钥。创建密钥后,用户将需要在 Linux 的“创建服务器”过程中选择所需的 SSH 密钥。
创建和使用 SSH 密钥
-
创建密钥
导航到“我的帐户”
选择“密钥管理”
创建新密钥。
在密钥创建过程中,系统将提示您下载 .PEM 格式的私钥文件。您将无法再次下载私钥,因为它未存储在 vCloud Express 中。
“默认”复选框用于 API。
部署服务器并选择密钥
连接
SSH (Mac/Linux) 将 .PEM 文件复制到您要连接的机器上。 确保 .PEM 文件的权限适当(chmod 600 file.pem) 用 ssh 命令连接:ssh vcloud@ipaddress –i privkey.pem 腻子 (Windows) 从 - here 下载 Putty 和 puttygen 使用 puttygen 将 .PEM 文件转换为 .PPK 文件。 启动 puttygen 并选择“加载” 选择您的 .PEM 文件。 Putty 会将 .PEM 格式转换为 .PPK 格式。 选择“保存私钥”密码不是必需的,但如果需要额外的安全性,可以使用。与 Putty 连接。
启动 Putty 并输入主机 IP 地址。如果连接到 10.X 私有地址,您必须先建立 SSL *** 连接。 导航到连接/SSH/身份验证单击“浏览”并选择您从 puttygen 导出的 .PPK 文件。
单击“打开”。建立连接时输入用户名(默认为 vcloud)。
从here复制的说明
【讨论】:
谢谢,我做到了,它成功了! LoneRanger,我认为您可以将此标记为正确答案:-)【参考方案2】:我很震惊,因为解决方案非常简单,所以这个问题没有得到回答。
正如之前的帖子中提到的,您不想使用 C# 对其进行转换,而只想转换一次。使用 PuTTYGen 很容易做到这一点。
-
从 AWS 下载您的 .pem
打开 PuTTYgen
点击右侧约 3/4 处的“加载”
将文件类型设置为 *.*
浏览并打开您的 .pem 文件
PuTTY 会自动检测所需的一切,您只需点击“保存私钥”即可保存您的 ppk 密钥以与 PuTTY 一起使用
享受吧!
【讨论】:
对于此解决方案不起作用的用户,请从 chiark.greenend.org.uk/~sgtatham/putty/download.html 更新您的 puttygen。我的是 2005 年的,无法打开 PEM 当你在寻找如何做你很久没有做的事情时,你会发现你在 2.5 年前给出的 *** 答案,这真的很有趣。 @trex005 好吧,*** 现在似乎是我们记忆的延伸,我们不需要记住所有事情。 @ParamvirSinghKarwal 你说的太对了...我可能每一两年都会使用这篇文章作为我自己的记忆,但我不再发表评论了,因为它会很烦人!【参考方案3】:-
下载puttygen
然后打开puttygen
点击加载
将文件类型设置为。所有文件
保存私钥
然后你可以保存文件成为 ppk 文件的任何名称
【讨论】:
【参考方案4】:如果你有 Linux 机器,只需在你的系统中安装 puttygen 并使用下面的命令来转换密钥
pem 到 ppk 使用以下命令:
puttygen keyname -o keyname.ppk
以下命令用于将 ppk 转换为 pem 而不是 pem 转换为 ppk
puttygen filename.ppk -O private-openssh -o filename.pem
【讨论】:
你可以在大多数 Linux 发行版上安装 putty - 这里有一个很好的列表:command-not-found.com/puttygen 下面推荐将 pem 转换为 ppk puttygen keyname -o keyname.ppk 有什么问题 您已编辑并提及用于将 ppk 转换为 pem 的命令 请不要像官方文档所说的那样使用sudo,上面提到的命令是正确的。 puttygen 文件名.ppk -O private-openssh -o 文件名.pem【参考方案5】:要通过 SSH 连接到 AWS EC2 实例,即使在 Windows 机器上,您也不需要将 .PEM 文件转换为 PPK 文件,使用“git bash”工具进行简单 SSH。无需下载和转换这些软件 - 希望这将节省您下载和转换密钥的时间,并让您有更多时间在 EC2 上。
【讨论】:
或者,在 Windows 10 中,“Bash on ubuntu on windows” 你需要ppk才能使用putty做ssh 答案是正确的但没有解决标题中的问题 在我看来,这确实解决了这个问题。这不像“只使用 abc 而不是 xyz”的建议,这个答案是说使用 ssh 来做 ssh,因为 ssh 不需要 ppk。【参考方案6】:-
将 YourPEMFILE.pem 保存到 .ssh 目录中
从命令提示符运行 puttygen
一个。单击“加载”按钮以“加载现有的私钥文件” 湾。将文件过滤器更改为“所有文件 (.) C。选择 YourPEMFILE.pem d。点击打开 e. Puttygen 显示一条通知,说它已成功导入外键。点击确定。 F。点击“保存私钥”按钮 G。当询问您是否确定要在不输入密码的情况下进行保存时,请回答“是”。 H。输入文件名 YourPEMFILE.ppk 一世。点击“保存”
【讨论】:
【参考方案7】:将 .pem 文件转换为适用于 Windows 10 的 .ppk
您需要做到以下几点:
1. 使用 Pageant 下载 PuTTYGen。2. 按 “加载” 按钮并选择您的 ".pem" 文件。3. 按 “保存私钥” 按钮并保存您的“.ppk” 文件。4. 打开 Pageant 并按 “添加密钥” 按钮。只是所有。 继续在后台运行 Pageant。5. 现在通过 SSH 或 SFTP 登录,无需选择密码字段。
【讨论】:
【参考方案8】:用于 Ubuntu/Linux 的 PuTTYgen 和 PEM 到 PPK
sudo apt install putty-tools
puttygen -t rsa -b 2048 -C "user@host" -o keyfile.ppk
【讨论】:
【参考方案9】:我使用了 ZOC 终端仿真器的试用版,它运行良好。它很容易接受亚马逊的 *.pem 文件。
但诀窍是,您需要为用户名指定“ec2-user”而不是“root”——尽管 EC2 控制台中显示了示例,但这是错误的! ;-)
【讨论】:
【参考方案10】:sudo yum install putty
sudo apt-get install putty-tools
将 .pem 文件转换为 .ppk 文件
sudo puttygen pemKey.pem -o ppkKey.ppk -O private
将 .ppk 文件转换为 .pem 文件
sudo puttygen ppkkey.ppk -O private-openssh -o pemkey.pem
【讨论】:
【参考方案11】:我遇到了同样的问题,PuttyGen 不想导入 openSSH 私钥。我尝试了一切,我发现旧版本的 PuttyGen 不支持导入 OpenSSH。一旦我下载了最新的 Putty,puttygen 就允许它很好地导入 openssh 私钥。现在,我的桌子边上有一个洞,过去一个小时我用头撞它。
【讨论】:
以上是关于将 PEM 转换为 PPK 文件格式的主要内容,如果未能解决你的问题,请参考以下文章
在 Windows 中自动/脚本/命令行将 .pem 密钥文件转换为 .ppk