在 macOS Mojave上,创建不带密码密码的SSH密钥

分享于 

2分钟阅读

电脑

  繁體

问题:

多年来,我一直这样自动创建没有密码的SSH密钥对:


/usr/bin/ssh-keygen -q -b 1024 -N"" -C"vagrant@labman01" -f keys/labkey



但是,由于升级到 macOS Mojave ( 10.14.2 ) 之后,在Linux客户机上报告密钥无效。

有没有新的技巧可以在 macOS Mojave上生成一个有效的密钥对?


回答 1:

你可以尝试生成带密码的密钥,然后设置密码为空:


ssh-keygen -b 2048 -t rsa -q -N"password" -f <your_key_file>


ssh-keygen -p -P"password" -N"" -f <your_key_file>



如果标题错误,你可以尝试更改文本:


sed -i -e 's/OPENSSH/RSA/' <your_key_file>




回答 2:

OpenSSH_7.8p1 中的默认密钥文件格式似乎发生了更改。 MacOS Mojave 10.14.2 附带 OpenSSH_7.9p1

添加 -m PEM 更改了 ssh-keygen的行为,使用旧的tftp private 密钥格式,这是前一个 Mac OS版本的默认。


/usr/bin/ssh-keygen -q -m PEM -b 1024 -N"" -C"vagrant@labman01" -f keys/labkey





mac  KEY  macos  SSH  Passphrase  
相关文章