看了这个文章,JSCH连接SSH报错:Invalid privatekey,里边提到了是版本的问题,我也打开了私钥一看果然也是,抬头直接不一样,服务器上的是BEGIN RSA PRIVATE KEY
,但是本地的是BEGIN OPENSSH PRIVATE KEY
服务器的
-----BEGIN RSA PRIVATE KEY-----
balabalbalbalbalbbalabalbalbalbalb
-----END RSA PRIVATE KEY-----
本机的
-----BEGIN OPENSSH PRIVATE KEY-----
balabalbalbalbalbbalabalbalbalbalb
-----END OPENSSH PRIVATE KEY-----
网上有很多说升级服务器版本,那服务器版本也不是能随便动的,所以还是选择了另一种方案。
解决方法
修改密钥格式,让他变成RSA即可。
生成密钥时指定格式,ssh-keygen -m PEM -t rsa
,加上参数-m PEM
,生成的密钥对,就是RSA的了。(实测个人情况有效)
或者降低本机的版本。
Ref
JSCH连接SSH报错:Invalid privatekey
https://blog.csdn.net/a17816876003/article/details/107457369