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 微網誌:@念槐聚 聯系;