如何使用 ssh-keygen 将现有私钥转换为 ppk 格式?

如何使用 ssh-keygen 将现有私钥转换为 ppk 格式?

private.key)我有一个格式为 的私钥-----BEGIN RSA PRIVATE KEY-----IEpAIBAAKCAQEAvKwuhMiQR/THmjK.....-----END RSA PRIVATE KEY-----,我正尝试通过 cygwin 使用 ssh-keygen 命令将其转换为 putty (.ppk) 可以理解的格式,但我得到的却是公钥。我需要以任何特定格式保存原始文件 (private.key) 吗?

我尝试以 .pem 格式保存 (private.key),不使用扩展名。尝试ssh-keygen -t rsa -e -f private.key > privatekey2.ppk 尝试ssh-keygen -t rsa -i -f privatekey2.key 尝试ssh-keygen -p 期望密钥采用以下格式:

Comment: imported-openssh-key
Public-Lines: 6
AAAAB3NzaC1yc2EAAAADAQABAAABAQCiud9bCgiaSX7ck2Y1orbH3U5+4lsOmAbT
Az361YM3XwX6nLNyPycFkTdYfX75IhUPCT9ywPm4WvEy9B78qL6EoKZctAM/DUZA
7DDJeeK4NWsulN4qDUyWoR50wVJCswgwMLCZPwcXeyed8WpUi2qbi8Di4KJphdtV
HIAeq2pDYaj1HMBtxI2Lrd5DPSt7u28v/twrOksDpSA7DXzRu7AsIKvO/dF9/PR4
WB/cqctC9RPvDK1VWNj+xPFGZ2ylBr0aC3TilbKaou/8S2AmJyp5FOGUEBCUMGWs
P/fQbN0XQX6dQuvfTtYUBf4ZuJKxhPDBKiacUg5YufXdNR3I/JIx
Private-Lines: 14
AAABACLXmqgDG3lxsCypkPJ+DxX3YFXRwL58tcVbxdsd+XUTLxQMlm2pcQEDqW6U
nGnartij2caH5FBhhJCs7a+asAR043oo/yLyhC7lg8K4Ct/3bCYysOkfJN2BzSQh
uqvWarPq0P1XHf0chidx4AxTsLxz0DQ5nG89tXlu4eQRYHq4jdR5Pkr5wWHjYzpX/
o9C3bcgSlKqFVJMnw06eUI6c1STtQAj/Tn+1wLpTS+p3P7kO6oXXwAKU6kOnjbx5
S0u4XUY+ZKTlhrY24zbXhGPliGDyaTL8387AE1cqWAJeWenAlbIxRzy13BQ/8RNe
hpmLaHhCz32d+BFc4Oav3GyxibkAAACBANA8e5hWJOGnbSIugrWrkDGuSTQp1BFi
rYEaxml69w8QmsY2s5kzLXvuWPIZCUzMv1XjHJxsa8LmzwZ/tdKKfcfQILRT54Oe
NHkznPj4LgwsmVw+8WyCoA8sOykZ+tIOtwpEQUzBEGCPrMR/tsg3qigvbnno9daT
BdOTiYFbowQVAAAAgQDIDQ5qRRWuyu0broHDoB0JozFPUvIDZfIwfjWqVQqgjO5HG
I4kIKCS5JYC2HDtgb8t7f841hKvLzitmRiswZr5koEKBOrZTxPhI6CNBtZPTgFfV
ipJHukDSkZxzxlaG52bc1NxqXh8Q6XZFiURQ36JbQtWmCLQTFC2vRXOMEiuQrQAA
AIEAxo+trWXMfn7W21wMCEXDTtX5ciZMPupIoUjZ/rmRxVLSI5PmJDJS549UmVWy
Q8bnU9rFgc7dG/ZuB4HD+iVSpFDhkovGCE8a2DF47Bu100bOVPIH3o7KxfWFCtzh
Yw/KqweHiU1iUwuC4FUIxJW8jyxv2sOmxbOgZCZ7WNm8Qvo=
Private-MAC: 22f55dc7c54402157df04950dsf67d8473bb5476f```

答案1

不能使用 OpenSSH 的 ssh-keygen 执行此操作;它既不能导入也不能导出 PuTTY 的密钥格式。

(您的-e-i选项不起作用,因为它们与 PPK 完全无关。手册页实际上说它将输出 RFC4716 格式的密钥,这是一个非常不同的事情。

要制作 PuTTY PPK 文件,您需要puttygen

$ puttygen private_key.key -O private -o private_key.ppk

相关内容