設置ssh免密碼登錄localhost

參照網上的設置ssh免密碼登錄localhost

--------------------------------------------------------------------------

具體步驟如下:
第一步:產生密鑰
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
第二部:導入authorized_keys
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys


命令1:$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

這個命令會產生一個公鑰(~/.ssh/id_rsa.pub)和密鑰(~/.ssh/id_rsa),

  -t dsa:表示使用密鑰的加密類型,可以爲'rsa'和'dsa'

  -P '':表示不需要密碼登錄

  -f ~/.ssh/id_dsa:表示密鑰存放的路徑爲${USER}/.ssh/id_dsa

命令2:$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

將本機的公鑰添加進authorized_keys中,這樣允許本機通過ssh的形式免密碼登錄

注意使用>>,而不是>,因爲如果其它主機(如A)也採用免登陸的形式登錄,也可以把主機A的公鑰添加到authorized_keys文件中。這樣主機A就可以免登陸ssh到本機了。

------------------------------------------------------------------------------------------------


但是我執行完命令2後, 執行 ssh localhost依然要輸入密碼。

使用vi ~/.ssh//authorized_keys文件看,沒有將公鑰添加進authorized_keys中。

使用 vi ~/.ssh/id_dsa.pub 查看內容時,發現是不存在該文件,但是通過列表查看是存在的。

所以我是更換目錄操作,到.ssh 在執行 $ cat id_dsa.pub >> authorized_keys ,這次成功將公鑰添加進authorized_keys中。

再次執行 ssh localhost  出現以下信息

Agent admitted failure to sign using the key

執行ssh-add 出現信息 Identity added: /home/ubuntunew/.ssh/id_dsa (/home/ubuntunew/.ssh/id_dsa)

再次連接時,終於成功。


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