如何将 Filezilla PPK 转换为 openssh sftp 兼容密钥

如何将 Filezilla PPK 转换为 openssh sftp 兼容密钥

我想使用命令行sftp客户端,sshfs并且已获得 filezilla ppk 文件。如何将密钥提取为适用于 sftp、openssh 的格式?

我尝试将部分内容从 ppk 复制到私有 pem 文件中,但没有成功。运行openssl rsa -in keyfile.pem后显示它不是 RSA 密钥。

unable to load Private Key 140462727153304:error:0D0680A8:asn1
encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1197:
140462727153304:error:0D07803A:asn1 encoding
routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:374:Type=RSA
140462727153304:error:04093004:rsa routines:OLD_RSA_PRIV_DECODE:RSA
lib:rsa_ameth.c:119: 140462727153304:error:0D0680A8:asn1 encoding
routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1197:
140462727153304:error:0D07803A:asn1 encoding
routines:ASN1_ITEM_EX_D2I:nested asn1
error:tasn_dec.c:374:Type=PKCS8_PRIV_KEY_INFO
140462727153304:error:0907B00D:PEM
routines:PEM_READ_BIO_PRIVATEKEY:ASN1 lib:pem_pkey.c:141:

我该怎么做呢?

答案1

感谢 Spas Spasov (@pa4080) 的评论,我确实做到了。

这就是我所做的。

matthewh@xen:~/.ssh$ puttygen
The program 'puttygen' is currently not installed. You can install it by typing:
sudo apt install putty-tools

matthewh@xen:~/.ssh$ sudo apt install putty-tools
...

最后,我需要阅读手册页以使用 puttygen 来转换 ppk。

执行转换的命令是:

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

然后我就可以将密钥用于 ssh/sftp 和 sshfs。

相关内容