没有密码的ssh密钥认证。PEM_read_PrivateKey失败。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了没有密码的ssh密钥认证。PEM_read_PrivateKey失败。相关的知识,希望对你有一定的参考价值。

我设置了密钥对认证。我生成了没有口令的私钥。一个客户端建立了与服务器的连接,没有任何输入提示。但另一个客户端总是要求输入私钥的口令。试着在verbose模式下,我得到。

. . . . . . . . . 
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Trying private key: .ssh/priv.key
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '.ssh/priv.key':
debug1: Next authentication method: password
. . . . . . . . . 

但我可以成功读取这个密钥文件

$ ls -la .ssh/priv.key
-rw------- 1 xxxxx xxxxx 1834 May 18 14:49 .ssh/priv.key
$
$ cat .ssh/priv.key
-----BEGIN OPENSSH PRIVATE KEY-----
xxxxxxxxxxxxxxxxxxxxxxxxxxxx.......
-----END OPENSSH PRIVATE KEY-----
$
答案

当我把私钥转换为RSA格式后,我就成功了。

-----BEGIN RSA PRIVATE KEY-----
xxxxxxxxxxxxxxxxxxxxxxxxxxxx.......
-----END RSA PRIVATE KEY-----

以上是关于没有密码的ssh密钥认证。PEM_read_PrivateKey失败。的主要内容,如果未能解决你的问题,请参考以下文章

Xshell配置ssh免密码登录-密钥公钥(Public key)

ssh密钥认证

CentOS6.9下ssh密钥登录配置步骤(免密码登录)和ssh-keygen 命令常用参数

Debian9.5下ssh密钥登录配置步骤(免密码登录)和ssh-keygen 命令常用参数

SourceTree提示ssh密钥认证失败的解决

Xshell配置ssh免密码登录-密钥公钥(Public key)与私钥(Private Key)登录