root用户的互信没有什么权限的操作直接执行如下语句可以使用了
ssh-keygen -t rsa
然后回车,直到生成了几个公钥和私钥的文件
id_rsa
id_rsa.pub
known_hosts
之后把公钥文件追加到authorized_keys文件中
命令:>是覆盖,>>是追加
cat id_rsa.pub >> authorized_keys
root用户就完成了互信,可以试试直接链接本机,如果链接的上那么就是成功了
非ROOT用户会有权限问题注意如下几点:
我以yjapp用户作为实例
1./home/yjapp 目录必须是700权限
2./home/yjapp/.shh 目录必须是 700权限
3./home/yjapp/.ssh/authorized_keys 必须是600 权限
chmod 700 /home/yjapp
chmod 700 /home/yjapp/.ssh
chmod 600 /home/yjapp/.ssh/authorized_keys
连接本机测试通过,
现在说几台机器互信的操作,作为例子,举例为 192.168.102.1,192.168.102.2,192.168.102.3
就是把几台机器的生成的密钥合在一起,话不多说,直接操作
首先每个机器做好密钥操作,就是我上面写好的操作,然后进行下面的步骤
ssh 192.168.102.2 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
ssh 192.168.102.3 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
把192.168.102.1上的authorized_keys分发到两台机器上去
scp ~/.ssh/authorized_keys 192.168.102.2:~/.ssh/
scp ~/.ssh/authorized_keys 192.168.102.3:~/.ssh/
测试第一次要输入密码,第二次就不用:
ssh 192.168.102.2
ssh 192.168.102.3
ssh 192.168.102.1