ssh無密碼手順設(shè)置
由于網(wǎng)上好多配置無密碼登錄都很不好用,我干脆自己寫一個(gè)放上來共大家參考了,我這邊準(zhǔn)備了3臺(tái)測(cè)試機(jī),需求是這三臺(tái)機(jī)器都可以不使用密碼互相訪問。
步驟如下:
Java代碼
192.168.100.67 master
192.168.100.68 slave1
192.168.100.69 slave2
進(jìn)入master (hadoop用戶)
執(zhí)行:
ssh-keygen -t rsa
進(jìn)入~/.ssh目錄
生成的id_rsa id_rsa.pub
cp id_rsa.pub authorized_keys
然后確認(rèn)authorized_keys的權(quán)限是600如果不是就chmod 600 id_rsa 其余的都是644
然后ssh master date測(cè)試
進(jìn)入slave1 (hadoop用戶)
進(jìn)入~/.ssh目錄
將master上的ssh-keygen -t rsa
放入該目錄下
chmod 600 id_rsa
然后ssh slave1 date測(cè)試
然后master與slave1互相測(cè)試一下
slave2同slave1
其實(shí)cp id_rsa.pub authorized_keys無所謂,最好用cat命令,我這個(gè)就是圖省事兒了,另外我懶得巧scp所以麻煩點(diǎn),其實(shí)這個(gè)很容易理解,就是3個(gè)機(jī)器使用同樣的私鑰,于是公鑰生成一套就夠用了
當(dāng)然三個(gè)機(jī)器的~/.ssh目錄的權(quán)限以及下面文件的權(quán)限必須完全相同,如果不同也不行。
我一般為了省事,三臺(tái)機(jī)器都運(yùn)行ssh-keygen -t rsa命令,然后將一臺(tái)機(jī)器生成的密鑰對(duì)覆蓋后面兩個(gè)機(jī)器,并且chmod成相同的權(quán)限,也就是id_rsa 600 id_rsa.pub 644 authorized_keys 644。
由于密鑰一樣,所以自己可以連接自己就可以順利連接其他機(jī)器,如果連接不了可以看看/etc/hosts文件是不是沒配置。