声明:写此博客是为了记录个人技术学习的全过程,防止后期时间久了会有遗忘。希望同时也能帮到有需要的朋友
首先,准备至少两台虚拟机。(例如:192.168.1.11、192.168.1.12)
然后,保证这两台虚拟机之间可以ping通(配置ip,关闭防火墙等,可参考前面的文章),如果无法ping通,则后续操作无法成功。
然后,在虚拟机(192.168.1.11)上,执行如下命令
1.各节点生成私钥和公钥
ssh-keygen -t rsa
对所有的确认提示,一直按回车默认就好
2.将公钥导入到认证文件中
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3.将当前机器(192.168.1.11)的authorized_keys传到其他机器(192.168.1.12)的.ssh目录下
scp -r ~/.ssh/authorized_keys root@192.168.1.12:~/.ssh
# 如果有在hosts中配置别名也可以用如下写法
scp -r ~/.ssh/authorized_keys root@node02:~/.ssh
注意,弹出的确认提示,要输入yes,再按回车。直接按回车会失败
4.验证一下是否可以免密ssh登录
ssh 192.168.1.12
# 如果有在hosts中配置别名也可以用如下写法
ssh node02
不用输入密码,即可登录到node02(192.168.1.12)
5.一台虚拟机的SSH免密登录配置OK,其他虚拟机也照此配置即可。如果配置完不能免密登录,建议从第一步重复操作一遍。 亲测有效!