从 PPK 文件创建 PEM [重复]

Posted

技术标签:

【中文标题】从 PPK 文件创建 PEM [重复]【英文标题】:Create a PEM from a PPK file [duplicate] 【发布时间】:2016-01-21 06:27:06 【问题描述】:

所以有很多关于如何使用puttyGenPEM 转换为PPK 的教程。但是我的问题是我的 Windows 机器只有一个 PEM 副本,我将其转换为 PPK 并删除了它。现在我需要弄清楚如何将PPK 转换为PEM,以便我的mac 可以ssh 进入服务器。我仍然可以访问服务器,所以如果需要,我也可以创建一个新密钥,有人知道如何将 PPK 转换为 PEM 吗?

【问题讨论】:

【参考方案1】:

    安装 PuttyTools

    apt-get install putty-tools
    

    ppk 生成一个pem 文件

    puttygen server.ppk -O private-openssh -o server.pem  
    

文件 server.pem 文件将保存在同一位置

【讨论】:

既然 OP 提到在 Mac 上使用 .pem 键,我只提一下,在使用 Homebrew 安装 putty 包后,您可以在 Mac 上运行相同的 puttygen 命令。 在 centos / redhat 上:'yum install putty' 提供了相关的可执行文件 像@Emizen 的魅力一样工作! 如果有人想知道 -0 是否为零,请不要。这是一个“O”。【参考方案2】:

如果您使用的是 Mac 并且之前已从终端安装了 Homebrew:

$ brew install putty
$ puttygen server.ppk -O private-openssh -o server.pem

this comment 中建议了第一个命令,Emizen Tech's answer 中建议了第二个命令。

【讨论】:

【参考方案3】:

试试这个来安装 putty-tools

sudo apt install putty-tools
puttygen key.ppk -O private-openssh -o key.pem
ssh -i ~/key.pem user@ip

【讨论】:

【参考方案4】:

首先,使用

安装适用于 Mac 的 PuTTY
brew install putty

然后,使用以下命令将 .ppk 格式的私钥转换为标准 PEM 格式的私钥:

puttygen privatekey.ppk -O private-openssh -o privatekey.pem

确保对私钥文件的权限设置正确。它应该只有拥有它的用户才能阅读。

chmod go-rw privatekey.pem

您现在可以使用该密钥从脚本和命令行登录:

ssh -i privatekey.pem user@hostname

【讨论】:

在最后的 ssh 上,我得到了 Enter passphrase for key - 我输入了登录密码,但得到了 Invalid key length。

以上是关于从 PPK 文件创建 PEM [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Ubuntu 中使用 PuTTYgen 将 PEM 文件转换为 PPK?

将 PEM 转换为 PPK 文件格式

将 PEM 转换为 PPK 文件格式

ppk和pem文件互转

使用 ppk 文件上传 Paramiko sftp [重复]

在 macOS 上将 .pem 转换为 .ppk