CentOS ssh免密碼登入
在搭建Hadoop環境的時候,需要設定一下免密碼登入。
之前做過一次免密是成功的,最近又做了一次,居然不成功。。。很鬱悶,很納悶,
下面把我的操作步驟和經驗分享一下:
系統:虛擬機器CentOS 6.5
使用者名稱:hadoop
域名:hadoop1
預設情況下OpenSSH是已經安裝好的。
操作步驟:
1.生成公鑰私鑰
切換到使用者資料夾
/home/hadoop/.ssh 或 ~/.ssh
注意:.ssh檔案是隱藏檔案,預設情況下是看不到資料夾的,可以使用命令"ll -a
使用下面命令生成公鑰私鑰
命令:ssh-keygen -t rsa -P ''
注意:上面的命令的空格不要多了少了。
將生成的公鑰輸出到新建檔案authorized_keys 檔案中(該檔名就是配置檔案中配置的名稱AuthorizedKeysFile .ssh/authorized_keys )
命令:cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
2.給檔案賦正確的許可權
修改許可權命令:chmod xxx filename
注意:檔案許可權不能給太大,否則免密登入會失敗(我就是把私鑰的許可權給了777導致免密失敗的)。
3.修改SSH配置檔案
配置檔案目錄位置:/etc/ssh/sshd_config
命令:vi sshd_config
修改內容:將配置檔案中下面三行註釋放開,並修改成如下:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
4.重啟SSH服務
設定完後,需要重啟SSH服務
命令:service sshd restart
注意:可能使用者許可權不足,可以切換到root使用者執行重啟命令
檢視服務狀態:service sshd status
5.驗證SSH免密
命令:ssh hadoop1
下面是成功的情況:
[[email protected] .ssh]$ ssh hadoop1
Last login: Mon Dec 26 21:33:42 2016 from hadoop1