1. 程式人生 > >linux下實現ssh自動登入遠端伺服器

linux下實現ssh自動登入遠端伺服器

前言:開發工作中,由於有時需要通過ssh登入遠端伺服器上去,每次都要輸入密碼,密碼很難記,感覺很麻煩,於是上網搜了通過

ssh自動登入遠端伺服器上去,從而免去了每次都要輸入密碼的困擾。

系統說明:
本地機器:Redhat
遠端機器:Redhat

步驟:


A.本地機器需要做的修改工作

1.通過ssh-keygen產生RSA公私金鑰對
#ssh-keygen -t rsa

一路敲回車下去,最後在~/.ssh資料夾下生成id_rsa和id_rsa.pub兩個檔案

2.在~/.ssh資料夾下建立config檔案
具體如下:

Host abc //伺服器別名

HostName xxx.xxx.xxx.xxx //伺服器的ip地址

User root  //

Port 22  //ssh服務埠

注:如果需要對遠端多臺機子配置,則config文字檔案裡面再新增一條記錄,格式和上面的一樣。

3.將id_rsa.pub檔案通過gftp上傳到遠端伺服器上中~/.ssh資料夾下


B.遠端機器需要做的修改工作

1.用vi開啟/etc/ssh/sshd_config這個檔案
將下面幾行前面“#”註釋取掉
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

2.在使用者根目錄下建立.ssh資料夾,如果已經有了就不用建立了.具體路徑為(~/.ssh)
# cd ~/.ssh
在.ssh資料夾下建立authorized_keys檔案,記住authorized_keys是檔案,不是資料夾。
將先前客戶端上傳id_rsa.pub檔案中的內容拷貝貼上到authorized_keys中去,
然後儲存authorized_keys。

3.重啟ssh服務命令

 #service sshd restart

C.回到本機機器linux客戶端進行測試

   在終端中敲入命令

# ssh abc //注abc 是config檔案中配置的伺服器別名

就直接進入遠端伺服器了。

備註:這一步如果出現bad owers啥錯誤時 需要改名.ssh資料夾和裡面檔案許可權才行
具體命令如下:
#chmod 700 ~/.ssh
#chmod go+rwx ~/.ssh/*