(我正在使用MAC)
我的id_rsa开头
-----BEGIN OPENSSH PRIVATE KEY-----
但我希望它以
开头-----BEGIN RSA PRIVATE KEY-----
我已将id_rsa.pub发送给服务器管理员以获取对服务器的访问权限,因此我不想生成新密钥。
有什么方法可以将我的id_rsa(这是一个openssh私钥)转移到RSA私钥? (请命令。)
如果可以转让,我还需要转让id_rsa.pub吗? (请使用命令。)似乎id_rsa.pub没有像id_rsa这样的标头,所以我不确定是否也应该传输它。
谢谢!
答案 0 :(得分:2)
这是对我进行带密码的密钥就地转换的方法:
ssh-keygen -p -P "old passphrase" -N "new passphrase" -m pem -f path/to/key
答案 1 :(得分:1)
您具有OpenSSH格式密钥,并且需要PEM格式密钥。这对我来说并不直观,但是建议的转换方式是通过更改密钥的密码并同时以其他格式写入。该命令如下所示:
ssh-keygen -p -N "" -m pem -f /path/to/key
它将更改文件的位置,因此以防万一,请备份当前密钥。 -N ""
会将密码短语设置为无。我还没有使用密码对此进行过测试。
公钥应该没有问题。
有关上述命令的完整说明,请参见此处的-m选项:https://man.openbsd.org/ssh-keygen#m
答案 2 :(得分:1)
如果您可以使用 Linux 系统,则可以轻松实现这一点。我正在使用 ubuntu 18.04 并执行以下操作:
sudo apt update
sudo apt install putty
sudo apt install putty-tools
puttygen yourkey -O private-sshcom -o newkey
ssh-keygen -i -f newkey > newkey_in_right_format
你可以走了