您好,登錄后才能下訂單哦!
小編給大家分享一下hadoop2.5.2如何配置免密碼登錄,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
配置免登錄
?創建或者修改密鑰目錄權限
假設本機的IP為“192.168.1.100”,配置免登錄的操作步驟如下:
1. 以hadoop用戶登錄各服務器。
2. 執行以下命令,修改“.ssh 目錄”權限。
chmod 755 ~/.ssh
說明:如果“.ssh”目錄不存在,請在/home/hadoop目錄執行 mkdir ~/.ssh 命令創建。
a)若“.ssh目錄”不存在,創建”.ssh目錄”。
mkdir ~/.ssh
b)修改“.ssh 目錄”權限。
chmod 755 ~/.ssh
? 創建公鑰和私鑰(此操作在所有服務器完成后再進入下一步)
1. 以hadoop用戶登錄本機(假設本機的IP為“192.168.1.100”)。
2. 執行以下命令,進入“.ssh”目錄。
cd /home/hadoop/.ssh
3. 執行以下命令后,如果提示,就一直按“Enter”鍵,直至生成公鑰。
ssh-keygen -t rsa
如果創建公鑰和私鑰后(上圖最下面部分),提示的用戶名hadoop@后面不是本機別名(上圖紅色部分:如master),說明主機名稱需要重新配置一次,然后記得重啟,然后刪除/.ssh目錄下的公鑰和私鑰,重新生成,直到生成的密鑰后綴是本機別名。
接著在Master節點上做如下配置,把id_rsa.pub追加到授權的key里面去。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
在驗證前,需要做兩件事兒。第一件事兒是修改文件"authorized_keys"權限(權限的設置非常重要,因為不安全的設置安全設置,會讓你不能使用RSA功能),另一件事兒是用root用戶設置"/etc/ssh/sshd_config"的內容。使其無密碼登錄有效。
1)修改文件"authorized_keys"
chmod 600 ~/.ssh/authorized_keys
2)設置SSH配置
用root用戶登錄服務器修改SSH配置文件"/etc/ssh/sshd_config"的下列內容。
vi /etc/ssh/sshd_config
RSAAuthentication yes # 啟用 RSA 認證
PubkeyAuthentication yes # 啟用公鑰私鑰配對認證方式
AuthorizedKeysFile .ssh/authorized_keys # 公鑰文件路徑(和上面生成的文件同)
設置完之后記得重啟SSH服務,才能使剛才設置有效。
service sshd restart
退出root登錄,使用hadoop普通用戶驗證是否成功。
ssh localhost (主機名) [黃色部分為變量]
從上圖中得知無密碼登錄本級已經設置完畢,接下來的事兒是把公鑰復制所有的Slave機器上。
? (3)拷貝公鑰到服務器(要登錄上去的那臺服務器slave)
使用下面的命令格式進行復制公鑰:
scp ~/.ssh/id_rsa.pub 遠程用戶名@遠程服務器IP:~/
例如:
scp ~/.ssh/id_rsa.pub hadoop@192.168.1.101:~/
上面的命令是復制文件"id_rsa.pub"到服務器IP為"192.168.1.101"的用戶為"hadoop"的"/home/hadoop/"下面。
下面就針對IP為"192.168.1.101"的Slave01.Hadoop的節點進行配置。
1)把Master.Hadoop上的公鑰復制到Slave1.Hadoop上
從上圖中我們得知,已經把文件"id_rsa.pub"傳過去了,因為并沒有建立起無密碼連接,所以在連接時,仍然要提示輸入輸入Slave01.Hadoop服務器用戶hadoop的密碼。為了確保確實已經把文件傳過去了,用SecureCRT登錄Slave1.Hadoop:192.168.1.101服務器,查看"/home/hadoop/"下是否存在這個文件。
從上面得知我們已經成功把公鑰復制過去了。
?追加到授權文件"authorized_keys">
1)把Master.Hadoop的公鑰追加到Slave1.Hadoop的授權文件"authorized_keys"中去。使用下面命令進行追加并修改"authorized_keys"文件權限:
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
2) 用root用戶修改"/etc/ssh/sshd_config"
具體步驟參考前面Master.Hadoop的"設置SSH配置",具體分為兩步:第1是修改配置文件;第2是重啟SSH服務。[同理2)設置SSH配置 ]
3) 用Master.Hadoop使用SSH無密碼登錄Slave01.Hadoop
當前面的步驟設置完畢,就可以使用下面命令格式進行SSH無密碼登錄了。
ssh slave01[遠程服務器IP]
從上圖我們主要3個地方,第1個就是SSH無密碼登錄命令,第2、3個就是登錄前后"@"后面的機器名變了,由"master"變為了"slave01",這就說明我們已經成功實現了SSH無密碼登錄了。
最后記得把"/home/hadoop/"目錄下的"id_rsa.pub"文件刪除掉。
rm –r ~/id_rsa.pub
到此為止,已經實現了從"master.Hadoop"到"slave01.Hadoop"SSH無密碼登錄,下面就是重復上面的步驟把剩余的兩臺(slave02.Hadoop和slave03.Hadoop)Slave服務器進行配置。這樣,我們就完成了"配置Master無密碼登錄所有的Slave服務器"。
? 配置所有Slave無密碼登錄Master
和master無密碼登錄所有slave原理一樣,就是把slave的公鑰追加到master的".ssh"文件夾下的"authorized_keys"中,記得是追加(>>)。
為了說明情況,我們現在就以"slave01.Hadoop"無密碼登錄"master.Hadoop"為例,進行一遍操作,也算是鞏固一下前面所學知識,剩余的"Slave2.Hadoop"和"Slave3.Hadoop"就按照這個示例進行就可以了。
首先創建"slave01.Hadoop"自己的公鑰和私鑰,并把自己的公鑰追加到"authorized_keys"文件中。用到的命令如下:
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
以上是“hadoop2.5.2如何配置免密碼登錄”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。