linux下設置ssh無密碼登錄


ssh配置  

主機A:10.0.5.199

主機B:10.0.5.198 

需要配置主機A無密碼登錄主機A,主機B

先確保所有主機的防火牆處於關閉狀態。

在主機A上執行如下:

 1. $cd ~/.ssh

 2. $ssh-keygen -t rsa  --------------------然后一直按回車鍵,就會按照默認的選項將生成的密鑰保存在.ssh/id_rsa文件中。

 3. $cp id_rsa.pub authorized_keys 

         這步完成后,正常情況下就可以無密碼登錄本機了,即ssh localhost,無需輸入密碼。

 4. $scp authorized_keys summer@10.0.5.198:/home/summer/.ssh   ------把剛剛產生的authorized_keys文件拷一份到主機B上.  

 5. $chmod 600 authorized_keys       

     進入主機B的.ssh目錄,改變authorized_keys文件的許可權限。

   (4和5可以合成一步,執行:  $ssh-copy-id -i summer@10.0.5.198 )

 

正常情況下上面幾步執行完成后,從主機A所在機器向主機A、主機B所在機器發起ssh連接,只有在第一次登錄時需要輸入密碼,以后則不需要。

 

可能遇到的問題:

1.進行ssh登錄時,出現:”Agent admitted failure to sign using the key“ .

   執行: $ssh-add

   強行將私鑰 加進來。

2.如果無任何錯誤提示,可以輸密碼登錄,但就是不能無密碼登錄,在被連接的主機上(如A向B發起ssh連接,則在B上)執行以下幾步:

  $chmod o-w ~/

   $chmod 700 ~/.ssh

   $chmod 600 ~/.ssh/authorized_keys

3.如果執行了第2步,還是不能無密碼登錄,再試試下面幾個

  $ps -Af | grep agent 

        檢查ssh代理是否開啟,如果有開啟的話,kill掉該代理,然后執行下面,重新打開一個ssh代理,如果沒有開啟,直接執行下面:

       $ssh-agent

  還是不行的話,執行下面,重啟一下ssh服務

       $sudo service sshd restart

4. 執行ssh-add時提示“Could not open a connection to your authenticationh agent”而失敗

執行: ssh-agent bash 


免責聲明!

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



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