搭建Hadoop環(huán)境需要設(shè)置無密碼登陸,所謂無密碼登陸其實(shí)是指通過證書認(rèn)證的方式登陸,使用一種被稱為"公私鑰"認(rèn)證的方式來進(jìn)行ssh登錄。在linux系統(tǒng)中,ssh是遠(yuǎn)程登錄的默認(rèn)工具,因?yàn)樵摴ぞ叩膮f(xié)議使用了RSA/DSA的加密算法.該工具做linux系統(tǒng)的遠(yuǎn)程管理是非常安全的。telnet,因?yàn)槠洳话踩?在linux系統(tǒng)中被擱置使用了。
" 公私鑰"認(rèn)證方式簡(jiǎn)單的解釋:首先在客戶端上創(chuàng)建一對(duì)公私鑰 (公鑰文件:~/.ssh/id_rsa.pub; 私鑰文件:~/.ssh/id_rsa)。然后把公鑰放到服務(wù)器上(~/.ssh/authorized_keys), 自己保留好私鑰.在使用ssh登錄時(shí),ssh程序會(huì)發(fā)送私鑰去和服務(wù)器上的公鑰做匹配.如果匹配成功就可以登錄了。
1、確認(rèn)系統(tǒng)已經(jīng)安裝了SSH。
rpm –qa | grep openssh
rpm –qa | grep rsync
-->出現(xiàn)如下圖的信息表示已安裝
假設(shè)沒有安裝ssh和rsync,可以通過下面命令進(jìn)行安裝。
yum install ssh -->安裝SSH協(xié)議
yum install rsync -->rsync是一個(gè)遠(yuǎn)程數(shù)據(jù)同步工具,可通過LAN/WAN快速同步多臺(tái)主機(jī)間的文件
service sshd restart -->啟動(dòng)服務(wù)
2、生成秘鑰對(duì)
ssh-keygen –t rsa –P '' -->直接回車生成的密鑰對(duì):id_rsa和id_rsa.pub,默認(rèn)存儲(chǔ)在"/home/hadoop/.ssh"目錄下。
3、把id_rsa.pub追加到授權(quán)的key里面去。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
4、修改授權(quán)key的權(quán)限
chmod 600 ~/.ssh/authorized_keys
5、修改SSH配置文件
su - -->登陸root用戶修改配置文件
vim /etc/ssh/sshd_config -->去掉下圖中三行的注釋
6、測(cè)試連接
service sshd restart -->重啟ssh服務(wù),
exit -->退出root用戶,回到普通用戶
ssh localhost -->連接普通用戶測(cè)試
這只是配置好了單機(jī)環(huán)境上的SSH服務(wù),要遠(yuǎn)程連接其它的服務(wù)器,接著看下面。
7、現(xiàn)在秘鑰對(duì)已經(jīng)生成好了,客戶端SSH服務(wù)也已經(jīng)配置好了,現(xiàn)在就把我們的鑰匙(公鑰)送給服務(wù)器。
scp ~/.ssh/id_rsa.pub 遠(yuǎn)程用戶名@遠(yuǎn)程服務(wù)器IP:~/ -->將公鑰復(fù)制到遠(yuǎn)程服務(wù)器的~/目錄下
如: scp ~/.ssh/id_rsa.pub hadoop@192.168.1.134:~/
可以看到我們復(fù)制的時(shí)候需要我們輸入服務(wù)器的密碼,等我們把SSH配置好之后這些步驟就可以不用輸入密碼了。
8、上一步把公鑰發(fā)送到192.168.1.134服務(wù)器上去了,我們?nèi)?34機(jī)器上把公鑰追加到授權(quán)key中去。
注意:如果是第一次運(yùn)行SSH,那么.ssh目錄需要手動(dòng)創(chuàng)建,或者使用命令ssh-keygen -t rsa生成秘鑰,它會(huì)自動(dòng)在用戶目錄下生成.ssh目錄。特別注意的是.ssh目錄的權(quán)限問題,記得運(yùn)行下chmod 700 .ssh命令
在134機(jī)器上使用命令:cat ~/id_rsa.pub >> ~/.ssh/authorized_keys -->追加公鑰到授權(quán)key中rm ~/id_rsa.pub -->保險(xiǎn)起見,刪除公鑰同樣在134機(jī)器上重復(fù)第四步和第五步,service sshd restart --上一步把公鑰發(fā)送到192.168.1.134服務(wù)器上去了,我們?nèi)?34機(jī)器上把公鑰追加到授權(quán)key中去。
注意:如果是第一次運(yùn)行SSH,那么.ssh目錄需要手動(dòng)創(chuàng)建,或者使用命令ssh-keygen -t rsa生成秘鑰,它會(huì)自動(dòng)在用戶目錄下生成.ssh目錄。特別注意的是.ssh目錄的權(quán)限問題,記得運(yùn)行下chmod 700 .ssh命令
在134機(jī)器上使用命令:cat ~/id_rsa.pub >> ~/.ssh/authorized_keys -->追加公鑰到授權(quán)key中rm ~/id_rsa.pub -->保險(xiǎn)起見,刪除公鑰同樣在134機(jī)器上重復(fù)第四步和第五步,service sshd restart -->重啟ssh服務(wù)
>重啟ssh服務(wù)
9、回到客戶機(jī)來,輸入:ssh 192.168.1.134 -->應(yīng)該就能直接連接服務(wù)器咯。回到客戶機(jī)來,輸入:ssh 192.168.1.134 -->應(yīng)該就能直接連接服務(wù)器咯。
相關(guān)推薦:
LINUX系統(tǒng)怎么使用命令清理磁盤空間?
linux常怎么使用命令創(chuàng)建文件和文件夾?
Linux怎么配置雙機(jī)SSH互相信任實(shí)現(xiàn)免密碼登錄?