??在做大數(shù)據(jù)項(xiàng)目分布式開(kāi)發(fā)時(shí)會(huì)用到Hadoop組件,Hadoop集群由Namenode節(jié)點(diǎn)和Datanode節(jié)點(diǎn)組成,在運(yùn)行啟動(dòng)集群操作時(shí),需要從Namenode節(jié)點(diǎn)登錄到Datanode節(jié)點(diǎn),執(zhí)行相關(guān)啟動(dòng)腳本,因此需要配置免密碼登錄。
1.使用root賬戶修改shhd_config配置文件
執(zhí)行命令【vi /etc/ssh/sshd_config】

修改shhd_config配置文件.png
去掉RSAAuthention yes前面的#
去掉PubkeyAuthentication yes前面的#

shhd_config.png
然后運(yùn)行命令【service sshd restart】生效配置
2.使用rsa非對(duì)稱加密生成密鑰
進(jìn)入用戶目錄,運(yùn)行命令【ssh-keygen -t rsa】生成密鑰

生成密鑰.png
進(jìn)入【.ssh】目錄,會(huì)發(fā)現(xiàn)生成了如下幾個(gè)文件:

ssh目錄.png
authorized_keys:存放遠(yuǎn)程免密登錄的公鑰,主要通過(guò)這個(gè)文件記錄多臺(tái)機(jī)器的公鑰
id_rsa:私鑰文件
id_rsa.pub:公鑰文件
3.將公鑰添加到需要遠(yuǎn)程登錄機(jī)器的authorized_keys文件中
在添加之前先做一個(gè)測(cè)試,現(xiàn)在通過(guò)【ssh localhost】命令試試本機(jī)有沒(méi)有免密碼登錄

測(cè)試.png
出現(xiàn)需要輸入密碼界面,證明還沒(méi)有免密,需要將公鑰添加到authorized_keys中,運(yùn)行文件追加命令【cat id_rsa.pub >> authorized_keys】。
再通過(guò)【ssh localhost】命令試試本機(jī)有沒(méi)有免密碼登錄:

image.png
測(cè)試通過(guò),現(xiàn)在就可以將公鑰添加到需要遠(yuǎn)程登錄機(jī)器的authorized_keys文件中,然后就實(shí)現(xiàn)了Namenode節(jié)點(diǎn)到Datanode節(jié)點(diǎn)的免密碼登錄。