目录
一、免密登陆实现流程
1、在第一台机器上生成公钥和私钥 -- 此时在当前用户的家目录下的.ssh目录中多了两个文件
图示如下:
2、将公钥拷贝给要免密登录的机器 -- 拷贝完成之后,会在要免密登录的机器上生成授权密码文件
注意点:
- 将公钥拷贝给要免密登录的机器的时后 使用 主机名或ip都可以(使用主机名要确保配置了ip的映射)
- 将公钥拷贝给要免密登录的机器的时后 还是需要输入 要免密的机器的登录密码
- 如果出现-bash: ssh-copy-id: command not found,说明ssh-copy-id这个指令没有找到, 自己安装下即可
安装命令: [root@qianfeng01 ~]# yum -y install openssh-clients
- 免密码登录是单向的
二、ssh免密登录原理
1、master使用 ssh-keygen -t rsa 生成公钥和私钥
2、执行ssh-copy-id root@slave1 ,将公钥拷贝到slave1节点 -- 实际上就是把公钥内容追加到authorized_keys文件中。
3、请求时:master向slave1发送连接请求时,会附带主机名、ip地址等信息。
4、slave1收到连接请求后,去授权文件里查找master的公钥,找到之后会随机生成一个字符串,并用公钥加密发送给master。
5、master收到来自slave1加密的密文后,会用私钥解密,并把解密的结果返回给slave1
6、slave1收到解密的结果后,会与之前生成的字符串比较,如果相同,则可以登陆成功。
三、免密登陆原理图