准备工作:
1、确认本机sshd的配置文件(需要root权限)
$ gedit /etc/ssh/sshd_config
找到以下内容,并去掉注释符”#“
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
2、如果修改了配置文件需要重启sshd服务 (需要root权限)
$ /sbin/service sshd restart
1. 使用hadoop用户登录在三个节点中使用如下命令生成私钥和公钥
$ssh-keygen -t rsa
2. 进入/home/hadoop/.ssh目录在三个节点中分别把公钥命名为authorized_keys_Slave1、authorized_keys_Slave2和authorized_keys_Master,使用命令如下
$cp id_rsa.pub authorized_keys_xxxxx
3. 把两个从节点(Slave1、Slave2)的公钥使用scp命令传送到Master节点的/home/hadoop/.ssh文件夹中
$scp authorized_keys_Slave1 hadoop@Master.Hadoop:/home/hadoop/.ssh
$scp authorized_keys_Slave2 hadoop@Master.Hadoop:/home/hadoop/.ssh
4. 把三个节点的公钥信息保存到authorized_key文件中
$cat authorized_keys_Master >> authorized_keys$cat authorized_keys_Slave1 >> authorized_keys
$cat authorized_keys_Slave2 >> authorized_keys
5. 把该文件分发到其他两个从节点上
$scp authorized_keys hadoop@Slave1 .Hadoop:/home/hadoop/.ssh
$scp authorized_keys hadoop@Slave2 .Hadoop:/home/hadoop/.ssh
6.在三台机器中使用如下设置authorized_keys读写权限
设置authorized_keys权限
$ chmod 600 authorized_keys
设置.ssh目录权限
$ chmod 700 -R .ssh
*权限设置错误,仍需输入密码
参考资料:http://blog.csdn.net/hjskl/article/details/8809282