1、假设master 机器需要免密访问slave1 ,slave2机器 (注意:访问的用户名和登录用户一致 如:三台机器都有hadoop用户,以下的行为都基于同一用户)
在master 机器上运行 ssh-keygen
运行结束以后, 默认在 ~/.ssh目录生成两个文件:
id_rsa :私钥
id_rsa.pub :公钥
2.导入公钥到认证文件,更改权限
导入本机(master)
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
导入要免密码登录的服务器(slave1 slave2)
首先将公钥复制到远端服务器,用户为hadoop
scp ~/.ssh/id_rsa.pub hadoop@slave1:~
scp ~/.ssh/id_rsa.pub hadoop@slave2:~
3、在被访问的服务器上(slave1 slave2 )
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
在服务器上更改权限(必须) (slave1 slave2)
chmod 755 ~
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
4、在master 机器 上
ssh slave1 登录成功