SSH免登录及原理
1.免登陆实现
1)在本机生成公钥/私钥对
ssh-keygen
执行成功后,在.ssh文件夹下,会多出两个文件
id_rsa和id_rsa.pub
2)将公钥写入远端服务器.ssh文件夹下的authorized_keys文件
scp {-P port} ~/.ssh/id_rsa.pub glowd@host:~
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
更改文件的权限
chmod 755 ~
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
3)从本机免密登录远端服务器
ssh glowd@host
2.免登陆原理
1)在本机A上生成公钥私钥对。
2)将公钥拷贝给远端服务器B的authorized_keys
3)本机A向远端服务器B发送请求,ssh glowd@host,包括用户名,ip
4)远端服务器B,接口请求,在authorized_keys中查找, 该用户名,ip的公钥,如果存在,则随机生成一个字符串,并用A的公钥加密,发送给A
5)本机A得到远端服务器B发来的消息后,使用私钥解密
6)本机A将解密的字符串发送给远端服务器B,服务器B进行比对,一致的话,允许免登陆。