ssh遠端存取自動登入方法 前言:linux端伺服器管理往往需要頻繁切換,每次切換都需要輸入被訪問伺服器的帳號和密碼。對於管理員來說也是帶來一定的不便。 ssh 全稱為secure shell,中文翻譯為安全殼層協議。主要用來伺服器之間提供安全的遠程登入工作階段,這個協議是基於運用層和傳輸層的基礎之上。 ssh有兩種認證方式:一種是通過使用者名稱密碼認證登陸,最常用的方式,但是這種方式存在暴力破解的危險。一種是通過密鑰認證,更加安全。 www.2cto.com 在整個通訊過程中,為實現 SSH的安全連線,伺服器端與用戶端要經曆如下五個階段: 1、版本號碼協商階段,SSH目前包括 SSH1和SSH2兩個版本, 雙方通過版本協商確定使用的版本2、密鑰和演算法協商階段,SSH支援多種密碼編譯演算法, 雙方根據本端和對端支援的演算法,協商出最終使用的演算法3、認證階段,SSH用戶端向伺服器端發起認證請求, 伺服器端對用戶端進行認證4、會話要求階段, 認證通過後,用戶端向伺服器端發送會話請求5、互動會話階段 ,會話請求通過後,伺服器端和用戶端進行資訊的互動 具體操作:1、ssh的公開金鑰和密鑰資訊存在在/root/.ssh/目錄下。這個目錄存放四類檔案、1.公開金鑰 2.私密金鑰 3.已知訪問帳號記錄 4.已認證公開金鑰. -rw-r--r--. 1 root root 405 6月 12 04:56 authorized_keys-rw-------. 1 root root 1675 6月 12 04:49 id_rsa-rw-r--r--. 1 root root 405 6月 12 04:49 id_rsa.pub-rw-r--r--. 1 root root 391 6月 12 04:54 known_hosts www.2cto.com 2、首選需要用命令【ssh-keygen】產生公開金鑰(id_rsa.pub)和密鑰(id_rsa)檔案。 3、把你要訪問的伺服器的公開金鑰(id_rsa.pub)拷貝到原生/root/.ssh/目錄下,修改命名為authorized_keys。 註:如果有多個被訪問伺服器的公開金鑰,只需要在檔案authorized_keys最後一行添加資訊。如 cat *** >>authorized_keys 4、修改ssh設定檔(/etc/ssh/sshd_config),設定公開金鑰認證登入 將下邊2行的注釋去掉,重啟ssh服務RSAAuthentication yesAuthorizedKeysFile .ssh/authorized_keys 5、ok了,趕緊試試看吧,ssh *.*.*.*(ip地址)。再試試看scp命令,是不是也不需要使用者認證了呢。 註:參考http://itercast.com it部落格視頻講解
作者 HYHOLINE