因?yàn)檫@個(gè)ssh免密登錄涉及到用戶,一般生產(chǎn)涉及到的免密登錄都是幾個(gè)相同的用戶之間,他們一般都是在同一個(gè)用戶組下面,以三臺(tái)hadoopadmin服務(wù)器為例
第一步,三臺(tái)服務(wù)器都執(zhí)行ssh-keygen
都會(huì)默認(rèn)在當(dāng)前服務(wù)器的當(dāng)前用戶的家目錄里面生成一個(gè).ssh文件夾
這個(gè)你進(jìn)入cd ~家目錄里面,肯定看不到,ll -a,因?yàn)橐?開頭認(rèn)為是隱藏文件,加上-a才能查看到

第二步
有時(shí)候上圖的authorized_keys文件會(huì)沒有,自己創(chuàng)建一個(gè)就行,這個(gè)文件內(nèi)容默認(rèn)是空的
第三步
比如A,B,C三臺(tái)服務(wù)器,設(shè)置A-B免密登錄
網(wǎng)上都是將B,服務(wù)器的.ssh文件夾下面的id_rsa.pub發(fā)送到A服務(wù)器,然后在cat一個(gè)這個(gè)id_rsa.pub文件內(nèi)容追加到A服務(wù)器的authorized_keys.
其實(shí)沒必要,設(shè)置A-B免密登錄,就是要將A服務(wù)器的這個(gè)id_rsa.pub內(nèi)容追加到B服務(wù)器的authorized_keys里面即可
cat A服務(wù)器的id_rsa.pub內(nèi)容,然后復(fù)制,粘貼到B服務(wù)器的authorized_keys文件里面.
然后在A服務(wù)器里面直接SSH B.ip即可,
有時(shí)候會(huì)出現(xiàn)配置了也不行,嘗試把剛才粘貼的刪除了,從新粘貼試試,注意空格
其他服務(wù)器之間都是這樣的,最后形成
A服務(wù)器的authorized_keys包含B服務(wù)器的id_rsa.pub和C服務(wù)器的id_rsa.pub的內(nèi)容
B服務(wù)器的authorized_keys包含A服務(wù)器的id_rsa.pub和C服務(wù)器的id_rsa.pub的內(nèi)容
C服務(wù)器的authorized_keys包含A服務(wù)器的id_rsa.pub和B服務(wù)器的id_rsa.pub的內(nèi)容
last最重要一點(diǎn),一定要將這個(gè)authorized_keys文件設(shè)置成600權(quán)限,不要給其他用戶權(quán)限,不然別人給你不小心修改了這個(gè)authorized_keys文件,那就不能免密了
chmod 600 authorized_keys
詳細(xì)講解請(qǐng)參見百度經(jīng)驗(yàn)
https://jingyan.baidu.com/article/3c343ff7b21a530d37796383.html