ar2200 因密钥长度问题,用linux终端ssh登录失败

发布时间:  2016-06-26 浏览次数:  200 下载次数:  0
问题描述
ar2200设备配置的远程登录方式SSH登录,在Linux6.4版本操作系统下使用ssh -l admin 加需要登录设备的ip, 远程ssh登录路由器,部分设备可以正常登录,剩下一部分设备登录失败。
告警信息
登陆失败提示如下图:
处理过程
1、查看告警,应该是密钥长度不正确。查看登录成功和登录不成功的设备的配置,都是一模一样。对比两台设备系统版本,一个是v200r003c01spc900,一个是v200r005c20spc200。查看这两个版本默认的密钥长度,发现老版本是512,新版本是2048。
2、如上排查,明显是老版本的密钥长度不正确,通过rsa local-key-pair create,修改密钥长度为2048,发现还是不能登录成功。
3、只能怀疑到客户端有什么限制,是否是因为已经保存过512的密钥导致。
根因
最后确认,因为V200R003C01版本的默认密钥长度是512,但是linux ssh工具不接受密钥长度小于768的认证,导致登录失败,虽然登录失败,但是公钥信息被linux自动记录了。
ar2200设备重新生成大于768的密钥之后,公钥也被改变了,ssh再次登录时发现公钥和本地记录的512的公钥不匹配,导致再次认证失败,无法登录。
V200R005C20默认密钥长度为2048,所以不存在这个问题。

 

解决方案
1.在设备上重新生成长度大于768的密钥对,建议长度为2048。
2.在Linux主机上删除~/.ssh/known_hosts文件,再尝试登录。

END