centos7.9安装ssh免密
先配置下hosts文件
编辑下hosts 文件,将想要添加的集群添加进来;
sudo vim /etc/hosts
之后我们在每台机器上安装密钥;执行:ssh-keygen -t rsa 该命令,然后一路回车
当你看到下面这样的情况恭喜该机器已经安装成功;
ssh-keygen -t rsa
我们可以切换到 .ssh 目录下。该目录是隐藏文件;切换到该目录我们看下有几个文件。
一般会有2-4个,id_rsa id_rsa.pub是必要的,如果没有authorized_keys文件我们就需要建一个;
并将本机公钥复制到authorized_keys,在通过scp 命令将在将该公钥发送到其他主机的.ssh目录下。
# 将该公钥复制到authorized_keys下
cp id_rsa.pub authorized_keys
# 在将该公钥发送到其他主机的.ssh目录下
# hp01 是目的主机的生成密钥的用户,hadoop101是对应主机名,~是hp01的家目录
scp -r ./authorized_keys hp01@hadoop101:~/.ssh
我们再将该目录下的公钥复制到authorized_keys中。和上面一样在使用scp 命令将在将该公钥发送到下一个主机的.ssh目录下,并将下一个的公钥复制到authorized_keys中。这样最后一个主机上就有所以主机的公钥。我们在将authorized_keys的权限改为600。我们再将authorized_keys发送到其他主机上,你可以使用rsync,也可以用scp.
# 我们将cat的目的地重定向到authorized_keys文件
cat id_rsa.pub >> authorized_keys
scp -r ./authorized_keys hp01@hadoop102:~/.ssh
我们在每台主机上测试登录到其他主机上,第一次登陆需要输入密码,再次登录就不需要了。
ssh hadoop101
exit
ssh hadoop102
exit
ssh hadoop100
exit