首先,需要了解ssh登陆方式原理:
1.登陆端需要发送给被登陆端 ssh请求
2.然后被登陆端发送给登陆端一个公钥
3.登陆端用公钥加密用户名和密码,将密文发送给被登陆端
4,然后被登陆端会用自己的私钥进行解密,解密成功就可以登陆成功
ssh免密登陆原理
登陆端需要生成一对秘钥,公钥和私钥
公钥发送给被登陆端,与上面的方式不同,上面的公钥和私钥都是被登陆端的
与ssh登陆方式的原理不同
1.登陆端 向 被登陆端 发送一个请求,包括ip,用户名
2.被登陆端 会接受到 发送过来的ip,用户名 ,然后到自己的authorized_key中查找
如果存在这个信息,随机生成一个字符串。
3.然后将字符串用公钥加密,发送给 登陆端
4.登陆端接受到字符串,用私钥进行解密
5.然后将解密后的密码发送给 被登陆端
6.被登陆端将字符串与之前的字符串进行对比,对比成功就可以免密登陆