ssh免密碼登錄配置


假設兩台主機為master和slave,兩台主機中要做ssh鏈接的兩個用戶名最好相同,否則在之后ssh鏈接時會比較蛋疼。下面是修改主機名的操作步驟

首先注銷掉需要修改用戶名的用戶(!!必須注銷掉),然后最好ctrl+alt+f1進入純命令行操作,登錄root用戶,按照順序做如下操作

passwd 原名字

設置新的密碼

chfn -f 新名字 原名字

usermod -l 新名字 -d /home/新名字 -m 原名字

groupmod -n 新名字 原名字

然后重啟就ok了。

下面進入正題:

1 首先分別把兩台主機安裝上openssh-server,執行如下命令即可:

sudo apt-get install openssh-server

2 在兩台主機分別創建sshkey,步驟如下

ssh-keygen -t rsa

ps:ssh和-keygen之間是沒有空格的,沒有,沒有,重要的事要說三遍,初學者很容易看錯了。

 

一直回車就行了,如下圖

進入/home/hadoop下就會產生一個新目錄,叫.ssh,進入該目錄ls就會發現有兩個文件,id_rsa和id_rsa.pub,前者為私鑰,后者為公鑰

兩台主機分別把自己的公鑰發給對方,命令如下:

ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop@192.168.8.94

其中,hadoop為對方的要執行ssh鏈接的用戶名,192.168.8.94是對方主機的ip地址,我在hosts中做了配置,也可以用配置后的別名,如下圖:

中間輸入的密碼是對方主機用戶的密碼。

如果分別在兩台主機執行了以上操作,就會發現,兩台主機的.ssh/目錄下多出了一個文件authorized_keys。

然后就可以通過如下ssh命令鏈接到對方了

ssh hadoop@192.168.8.94

然后關鍵來了,我最先說的最好設置成相同的用戶名,如果兩個主機用戶名相同,那么可以直接通過 ssh 對方ip  訪問。如下:

  

如果想退回就執行exit命令。

遇見的錯誤:執行ssh鏈接的命令后,顯示如下一行提示,並且需要輸入對方密碼才能ssh訪問

 agent admitted failure to sign using the key

解決方法:在本機執行如下命令就可以解決了

ssh-add

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM