JSCH连接SSH报错:Invalid privatekey



com.jcraft.jsch.JSchException: invalid privatekey: [B@6220eb1c

默认情况下,最新版本的OpenSSH(7.8及更高版本)会以新的OpenSSH格式生成密钥,其开头为

—–BEGIN OPENSSH PRIVATE KEY—–

JSch不支持此密钥格式。 版本为 0.1.55

1
  #没有加密,将原来的 openssh 转换为 rsa
2  ssh-keygen -p -N "" -m pem -f /home/grid/.ssh/id_rsa
3  #指定加密格式
4  ssh-keygen -p -N passphrase -m pem -f file -P passphrase
5
6
7
8
9  ssh-keygen的命令可选项
10  -b:指定密钥长度;
11  -e:读取openssh的私钥或者公钥文件;
12  -C:添加注释;
13  -f:指定用来保存密钥的文件名;
14  -i:读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥;
15  -l:显示公钥文件的指纹数据;
16  -N:提供一个新密语;
17  -P:提供(旧)密语;
18  -q:静默模式;
19  -t:指定要创建的密钥类型。
20
21
22  作者:moutory
23  链接:https://www.jianshu.com/p/92925df93626
24  来源:简书
25  著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。