首先需要做的是修改需要互信的服务器的/etc/ssh/sshd_config文件如下:
RSAAuthentication yes 这句话可能是没有的,需要添加
1. 生成钥匙
在任何路径下都可以执行该命令
ssh-keygen -t rsa
一直回车,直到出现如图所示:
之后可在如图目录看到生成了2个文件,一个公钥id_rsa.pub,一个私钥id_rsa
2. 把秘钥导入包括本机在内的其他主机
输入时,会让你选择输入yes/no,这里选择yes
之后会让你输入 ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.12 中 192.168.1.12主机的密码,如下每一个都需要在各个服务器上分别执行
如果默认远程端口号不是22,着下面的ip需要ssh-copy-id -i /root/.ssh/id_rsa.pub -p 2223 root@10.xx.xx.19 ,2223就是远程端口号
#在192.168.1.10上执行
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.10
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.11
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.12
#在192.168.1.11上执行
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.10
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.11
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.12
#在192.168.1.12上执行
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.10
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.11
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.1.12
3. 测试
输入如下:
ssh 192.168.xxx.130
可以看到不需要输入密码,直接登录到该主机了
对了,还有一种方式
1.在3台主机上都生成公钥私钥
2. 把3台主机上的公钥拷贝出来(注意,是单行哦),每个公钥占一行
3. 把3行公钥复制到3台主机的/root/.ssh/authorized_keys 文件中
4.打完收工!