按理說ssh localhost是非常簡單的一個操作。
使用下面的命令即可生成秘鑰
ssh-keygen -t rsa
使用下面的命令即可免密碼登錄localhost
ssh-copy-id localhost
但是到了這裡執行ssh localhost的時候依然提示我輸入密碼。我仔細分析了原因,一般來講失敗的原因有兩個。
首選.ssh目錄權限是700, 兩個dsa 和 rsa的 私鑰權限是600,其余文件權限是644.
下面列出.ssh目錄及子文件的權限表:
drwx------ 2 root root 4096 1月 28 23:03 ./
drwxr-xr-x 9 root root 4096 1月 28 23:03 ../
-rw------- 1 root root 394 1月 28 23:03 authorized_keys
-rw------- 1 root root 1679 1月 28 23:03 id_rsa
-rw-r--r-- 1 root root 394 1月 28 23:03 id_rsa.pub
-rw-r--r-- 1 root root 1776 1月 28 23:03 known_hosts
我的.ssh文件夾絕對路徑是/root/.ssh
,所以/root
目錄的權限應該是755。這次我的問題就出現在這裡。
下面關於SSH相關的文章您也可能喜歡,不妨參考下:
CentOS 7.1下SSH遠程登錄服務器詳解 http://www.linuxidc.com/Linux/2016-03/129204.htm
CentOS 6.5之SSH免密碼登錄配置 http://www.linuxidc.com/Linux/2016-10/136200.htm
Ubuntu 14.04 下安裝Samba 及SSH 服務端的方法 http://www.linuxidc.com/Linux/2015-01/111971.htm
Ubuntu 14.04 安裝SSH http://www.linuxidc.com/Linux/2016-12/137908.htm
Ubuntu集群下利用Shell腳本進行SSH免密碼登陸 http://www.linuxidc.com/Linux/2017-01/140035.htm
CentOS6.4之圖解SSH無密碼驗證雙向登陸配置 http://www.linuxidc.com/Linux/2016-06/132219.htm
如何為Linux系統中的SSH添加雙重認證 http://www.linuxidc.com/Linux/2014-08/105998.htm
在 Linux 中為非 SSH 用戶配置 SFTP 環境 http://www.linuxidc.com/Linux/2014-08/105865.htm
Linux 上SSH 服務的配置和管理 http://www.linuxidc.com/Linux/2014-06/103627.htm