使用命令 ssh-keygen -t rsa
生成ssh,默认是以新的格式生成,id_rsa的第一行变成了“BEGIN OPENSSH PRIVATE KEY” 而不再是“BEGIN RSA PRIVATE KEY”,这是一种新的密钥格式, 而且很多软件对这种格式的密钥都是不支持的。此时用来msyql、MongoDB,配置ssh登陆的话,可能会报 “Resource temporarily unavailable. Authentication by key (/Users/youname/.ssh/id_rsa) failed (Error -16). (Error #35)” 提示资源不可用,这就是id_rsa 格式不对造成的。这时候就不得不把私钥转换成RSA – PEM格式。然而ssh-keygen
并不提供这种格式转换的功能。
解决方案
方案1:直接生成新的RSA-PEM格式公私密钥
使用 ssh-keygen -m PEM -t rsa -b 4096
来生成
1 |
|
方案2:将私钥转换格式为RSA PRIVATE KEY
安装putty
1 |
|
转换格式
1 |
|