ssh localhost免密碼登錄(轉)

最近在ubuntu上安裝hadoop,需要配置ssh免密登錄localhost,多次嘗試之後任然需要輸入密碼才能訪問,主要原因是配置完成後未將私鑰添加到由ssh-agent 維護的列表中,使用ssh-add命令即可,百度到的ssh-agent和ssh-add命令的作用如下:
ssh-agent 是用於管理SSH private keys的, 長時間持續運行的守護進程(daemon). 唯一目的就是對解密的私鑰進行高速緩存。

ssh-add 提示並將用戶的使用的私鑰添加到由ssh-agent 維護的列表中. 此後, 當使用公鑰連接到遠程 SSH 或 SCP 主機時,不再提示相關信息.


整個配置過程如下:
===================================================================================
1.運行ssh localhost 查看是否需要密碼就能登錄,如果必須輸入密碼才能登錄的話,運行以下命令:
  $ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
  $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  $ chmod 600 ~/.ssh/authorized_keys

2.在此運行ssh localhost,顯示如下:

3.輸入yes,出現錯誤: sign_and_send_pubkey: signing failed: agent refused operation

這表示ssh-agent 已經在運行了,但是找不到附加的任何keys,就是說你生成的key,沒有附加到ssh-agent上,需要附加一下,執行
   $ ssh-add
 出現提示:
      Identity added: /home/qinyao/.ssh/id_rsa (/home/qinyao/.ssh/id_rsa)
  證明已經附加成功!

4.再次嘗試ssh localhost,成功登錄

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章