準備工作:
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 [email protected]:/home/hadoop/.ssh
$scp authorized_keys_Slave2 [email protected]:/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