在 Windows automatically/script/command 行中将 .pem 密钥文件转换为 .ppk
Convert .pem key file to .ppk in Windows automatically/script/command line
我正在使用 Vagrant 在 Windows 主机上创建 VM,我想使用 PuTTY 连接到该主机。 Vagrant 以 .pem 格式创建 RSA 私钥。 PuTTY 需要 .ppk 格式的密钥才能创建连接。
我想在创建 vagrant VM 时自动将 .pem 转换为 .ppk。
关于如何将 .pem 转换为 .ppk 的问题已被多次询问和回答,但在 Windows 上,所有这些答案都涉及点击 puttygen GUI。在Linux上,puttygen似乎可以完全从命令行操作,但在Windows上必须使用GUI。
创建新 VM 时,必须通过 GUI 单击是我工作流程中的一个慢点,我想避免。
在 Windows 上是否有 command-line/scriptable/programmatic 将 .pem 文件转换为 .ppk 格式的方法?
WinSCP supports command-line conversion of private keys from the OpenSSH (or ssh.com) format to the PuTTY .ppk
format.
使用/keygen
开关:
winscp.com /keygen mykey.pem /output=mykey.ppk
(我是WinSCP的作者)
或者,您可以使用 Cygwin compile/run Unix 命令行 puttygen
。
或者从 PuTTY 代码构建您自己的工具,它是开源的。这相当容易(这基本上就是 WinSCP 所做的)。
使用import_ssh2
加载.pem
:
ssh2_userkey *import_ssh2(const Filename *filename, int type,
char *passphrase, const char **errmsg_p);
使用ssh2_save_userkey
保存为.ppk
:
bool ssh2_save_userkey(
const Filename *filename, ssh2_userkey *key, char *passphrase);
我已经编写了一个实用程序来为您完成这项工作,因为它也让我抓狂。它将监视一个目录并在它们到达时自动转换它们。还将让您快速启动 putty 会话。
从 here
获取副本
我正在使用 Vagrant 在 Windows 主机上创建 VM,我想使用 PuTTY 连接到该主机。 Vagrant 以 .pem 格式创建 RSA 私钥。 PuTTY 需要 .ppk 格式的密钥才能创建连接。
我想在创建 vagrant VM 时自动将 .pem 转换为 .ppk。
关于如何将 .pem 转换为 .ppk 的问题已被多次询问和回答,但在 Windows 上,所有这些答案都涉及点击 puttygen GUI。在Linux上,puttygen似乎可以完全从命令行操作,但在Windows上必须使用GUI。
创建新 VM 时,必须通过 GUI 单击是我工作流程中的一个慢点,我想避免。
在 Windows 上是否有 command-line/scriptable/programmatic 将 .pem 文件转换为 .ppk 格式的方法?
WinSCP supports command-line conversion of private keys from the OpenSSH (or ssh.com) format to the PuTTY .ppk
format.
使用/keygen
开关:
winscp.com /keygen mykey.pem /output=mykey.ppk
(我是WinSCP的作者)
或者,您可以使用 Cygwin compile/run Unix 命令行 puttygen
。
或者从 PuTTY 代码构建您自己的工具,它是开源的。这相当容易(这基本上就是 WinSCP 所做的)。
使用import_ssh2
加载.pem
:
ssh2_userkey *import_ssh2(const Filename *filename, int type,
char *passphrase, const char **errmsg_p);
使用ssh2_save_userkey
保存为.ppk
:
bool ssh2_save_userkey(
const Filename *filename, ssh2_userkey *key, char *passphrase);
我已经编写了一个实用程序来为您完成这项工作,因为它也让我抓狂。它将监视一个目录并在它们到达时自动转换它们。还将让您快速启动 putty 会话。
从 here
获取副本