集群节点之间配置ssh免密登录

现在有七台机器,现在我们要配置这七台机器之间ssh免密登录

七台机器hostname分别是c1、c2、c3、c4、c5、c6、c7

现在每台机器上生成ssh密钥,使用ssh-keygen -t rsa 命令


集群节点之间配置ssh免密登录_第1张图片

生成的密钥文件在  /home/${你的用户名}/.ssh目录下


集群节点之间配置ssh免密登录_第2张图片

如果没有 authorized_keys 文件的自行创建,修改文件权限为600

chmod 600 authorized_keys

接下来为其他6台机器都生成密钥文件,把所有机器的公钥内容复制出来,如下:

集群节点之间配置ssh免密登录_第3张图片

然后把这些内容复制到c1的 authorized_keys 文件下,

然后在c1下分别执行:

scp authorized_keys c2:/home/hadoop/.ssh/

scp authorized_keys c3:/home/hadoop/.ssh/

scp authorized_keys c4:/home/hadoop/.ssh/

scp authorized_keys c5:/home/hadoop/.ssh/

scp authorized_keys c6:/home/hadoop/.ssh/

scp authorized_keys c7:/home/hadoop/.ssh/

上面的命令意思是复制当前的机器的authorized_keys文件到其他6台远程机器,需要输入密码

集群节点之间配置ssh免密登录_第4张图片

完成之后,重启所有机器的ssh 命令:service sshd restart

接下来就可用命令 ssh命令免密登录了,第一次会弹出一个是否要连接的对话框,输入yes回车,然后就可以连接到远程机器了


集群节点之间配置ssh免密登录_第5张图片

如果出现还要输入密码的问题,解决办法:修改安全配置,关闭selinux。

vi /etc/selinux/config

把SELINUX=enforcing修改为SELINUX=disabled

你可能感兴趣的:(集群节点之间配置ssh免密登录)