1. 程式人生 > >SSH密碼和秘鑰認證原理

SSH密碼和秘鑰認證原理

原理 png 進行 copy 消息 9.png 技術分享 客戶端 nbsp

SSH登錄方式主要分為兩種:

1. 用戶名密碼驗證方式

技術分享圖片

說明:

  (1) 當客戶端發起ssh請求,服務器會把自己的公鑰發送給用戶;

  (2) 用戶會根據服務器發來的公鑰對密碼進行加密;

  (3) 加密後的信息回傳給服務器,服務器用自己的私鑰解密,如果密碼正確,則用戶登錄成功。

2. 基於密鑰的登錄方式

技術分享圖片

說明:

  (1) 首先在客戶端生成一對密鑰(ssh-keygen);

  (2) 並將客戶端的公鑰ssh-copy-id 拷貝到服務端;

  (3) 當客戶端再次發送一個連接請求,包括ip、用戶名;

  (4) 服務端得到客戶端的請求後,會到authorized_keys中查找,如果有響應的IP和用戶,就會隨機生成一個字符串,例如:qwer;

  (5) 服務端將使用客戶端拷貝過來的公鑰進行加密,然後發送給客戶端;

  (6) 得到服務端發來的消息後,客戶端會使用私鑰進行解密,然後將解密後的字符串發送給服務端;

  (7) 服務端接受到客戶端發來的字符串後,跟之前的字符串進行對比,如果一致,就允許免密碼登錄。

SSH密碼和秘鑰認證原理