天天看點

ssh無密碼登入問題

ssh無密碼登入配置:

ssh無密碼登入問題
ssh無密碼登入問題

可參考如下兩篇文章:

首先,root修改/etc/ssh/sshd_config檔案(用戶端、伺服器都需要更改)

将“#authorizedkeysfile .ssh/authorized_keys”前面的#号去掉

即,啟用“authorizedkeysfile .ssh/authorized_keys”

(如果需要root也能ssh登入,把“#permitrootlogin yes”前面的#号也去掉)

同樣root賬戶下,/etc/rc.d/init.d/sshd restart重新開機sshd服務使之生效

(用戶端中)切換到需要ssh登入的帳戶下:

ssh-keygen -t rsa 産生公私鑰對

回車 采用預設檔案儲存鑰匙

xxxxx 回車 鍵入密碼短語,直接回車為不建立密碼短語。密碼短語至少5個字元

xxxxx 回車 重複密碼短語,直接回車為不建立密碼短語

公私鑰産生在此賬戶的.ssh目錄中,id_rsa為私鑰,id_rsa.pub為公鑰

(伺服器中)切換到需要ssh登入的帳戶下:

如果伺服器中尚未建立公私鑰對,那麼首先按照用戶端的方法建立公私鑰對

scp 賬戶名@用戶端主機名或ip位址:/home/帳戶名/.ssh/id_rsa.pub /home/帳戶名/

将用戶端賬戶的公鑰拷到伺服器中。用戶端用主機名或ip位址均可,但是需與ssh登入指令相符,建議将主機名與ip位址寫入/etc/hosts中,此處用主機名即可(下同)。

yes 将用戶端寫入known_hosts中

輸入用戶端中的賬戶密碼完成複制

cat /home/帳戶名/id_rsa.pub >>/home/帳戶名/.ssh/authorized_keys 将id_rsa.pub中的内桶添加到authorized_keys檔案中,authorized_keys檔案名需與sshd_config中的設定相符。

chmod 644 /home/帳戶名/.ssh/authorized_keys 修改authorized_keys檔案的權限,至少為644,也可更為嚴厲(600),不修改的話ssh無密碼登入不起作用。

ssh 伺服器主機名 登入伺服器,若在伺服器與用戶端中的帳戶名不同,則

ssh 帳戶名@伺服器主機名

yes 将伺服器寫入known_hosts中

若産生公私鑰時設定了密碼短語,還需要輸入密碼短語,為了友善,可在用戶端中

ssh-add,然後輸入密碼短語,下次再ssh登入,無需再輸入密碼短語

關于公私鑰對的一點了解:

公 私鑰對就像是一套鑰匙和鎖,公鑰是鎖,私鑰是鑰匙。私鑰留在用戶端中,公鑰發給伺服器。伺服器可以有很多把鎖,用戶端隻有一把鑰匙。當用戶端ssh登入服 務器時,伺服器會找到這個用戶端發的鎖,然後跟用戶端要鑰匙,如果鑰匙是配套的,那麼登入成功,反之登入失敗。當然,以上是針對同一個使用者說的,不同使用者 的公私鑰對也不同,而且每次ssh-keygen産生的公私鑰對也不同。

轉載請注明出處:http://www.cnblogs.com/haochuang/ 8年it工作經驗,5年測試技術與管理,2年産品與項目管理,曾參與過雲計算\雲存儲\車聯網産品研發工作; 業餘自媒體人,有技術類垂直微信公衆号;如有招聘或求職方面需求,請mail to [email protected] ;或通過 qq:363573922 微網誌:@念槐聚 聯系;

繼續閱讀