sshd提供了遠端登入伺服器的功能,客戶端通過ssh命令就可以登入到遠端伺服器,為了實現對使用者的許可權控制和檔案的安全訪問,預設的設定需要在每次登入的時候輸入使用者名稱和密碼。但訪問一些經常訪問的伺服器的時候,經常需要免密碼登入。
在linux系統裡面,設定免密碼登入可以通過把客戶端的公鑰id_rsa.pub/拷貝到伺服器的公共~/.ssh/authorized_keys檔案裡面去。如果.ssh目錄不存在,可以通過ssh-keygen來生成。處此之外,還需要保證許可權設定正確:
root mod 550 :保證組合其他使用者沒有寫許可權
私鑰id_rsa: 只有root有讀寫許可權,其他使用者沒有任何許可權
公鑰id_rsa.pub: root有讀寫許可權,組內使用者有讀許可權
此外,還要保證/root/.ssh下檔案屬性和~訪問許可權屬性正確。
另外,還可以參考預設的配置檔案/etc/ssh/sshd_config以及man ssh手冊
如果根據上面的設定仍然無法實現免密碼登入,可加上-vvvv 用ssh命令進行除錯方法,例如:
ssh -vvvvv [email protected]/45
ssh 免密碼登入
ssh 無密碼登入要使用公鑰與私鑰。linux下可以用用ssh keygen生成公鑰 私鑰對,下面我以centos為例。有機器a 192.168.1.155 b 192.168.1.181 現想a通過ssh免密碼登入到b。1.在a機下生成公鑰 私鑰對。chenlb a ssh keygen t rs...
ssh 免密碼登入
ssh 免密碼登入 ssh 無密碼登入要使用公鑰與私鑰。linux下可以用用ssh keygen生成公鑰 私鑰對,下面我以centos為例。有機器a 192.168.1.155 b 192.168.1.181 現想a通過ssh免密碼登入到b。1.在a機下生成公鑰 私鑰對。chenlb a ssh k...
ssh免密碼登入
實現原理 主機a 產生公鑰和金鑰,將主機a的公鑰傳送到主機b 主機b 接收主機a傳送的公鑰 主機a ssh請求登入到主機b 主機b 傳送給主機a一串字元 主機a 收到主機b傳送的字元,使用金鑰進行加密,並傳送回到主機b 主機b 接收到主機a使用金鑰加密後的字元,使用主機a的公鑰執行一定演算法進行對比...