天天看點

ssh pubkey免密登陸遠端主機

二、公鑰登入

每次登入遠端主機都需要輸入密碼是很不友善的,如果想要省去這一步驟,可以利用密鑰對進行連接配接,還可以提高安全性。

1、在本機生成密鑰對

使用ssh-keygen指令生成密鑰對:

ssh-keygen -t rsa #-t表示類型選項,這裡采用rsa加密算法

然後根據提示一步步的按enter鍵即可(其中有一個提示是要求設定私鑰密碼passphrase,不設定則為空,這裡看心情吧,如果不放心私鑰的安全可以設定一下),執行結束以後會在 /home/目前使用者 目錄下生成一個 .ssh 檔案夾,其中包含私鑰檔案 id_rsa 和公鑰檔案 id_rsa.pub。

2、将公鑰複制到遠端主機中

使用ssh-copy-id指令将公鑰複制到遠端主機。ssh-copy-id會将公鑰寫到遠端主機的 ~/ .ssh/authorized_key 檔案中

ssh-copy-id  username@remoteipaddr      

經過以上兩個步驟,以後再登入這個遠端主機就不用再輸入密碼了。

遠端機器至少下面兩個條件:

      1) .ssh目錄的權限必須是700

     2) .ssh/authorized_keys檔案權限必須是600

除了ssh-copy-id  username@remoteipaddr 實作外還有比較麻煩點的公鑰複制實作scp和手動拷貝公鑰到遠端主機authorized_key檔案:

scp -p ~/.ssh/id_rsa.pub [email protected]:/root/.ssh/authorized_keys

手工複制粘貼的方式

  将本地id_rsa.pub檔案的内容拷貝至遠端伺服器的~/.ssh/authorized_keys檔案中