簡單說,ssh是一種網路協議,用於計算機之間的加密登入。
最早的時候,網際網路通訊都是明文通訊,一旦被截獲,內容就暴露無疑。
2023年,芬蘭學者tatu ylonen設計了ssh協議,將登入資訊全部加密,
成為網際網路安全的乙個基本解決方案,迅速在全世界獲得推
廣,目前已經成為linux系統的標準配置。
需要指出的是,ssh只是一種協議,存在多種實現,既
有商業實現,也有開源實現。本文針對的實現是openssh,
它是自由軟體,應用非常廣泛。
(1)客戶機向遠端主機傳送登入請求,並且把自己的公鑰傳送給遠端主機。
(2)遠端主機收到使用者的登入請求,首先判斷對應的使用者主目錄下是否存在
.ssh/authorized_keys並且這個檔案中有沒有有## 客戶機 ##的公鑰時,
如果條件不成立,就會使用## 賬戶口令登入登入的方式 ##。
同時向客戶機返回1.
## 自己的公鑰 ##
如果條件成立,則會使用## 公私鑰登入的方式 ##。
同時向客戶機返回1.自己的公鑰; 2.客戶機公鑰加密過的## 一些驗證資訊 ##
賬戶口令登入登入的方式:(每次都需要輸入密碼,不能免金鑰登入)
(3)使用者使用這個公鑰,將登入密碼加密後,傳送回來。
(4)遠端主機用自己的私鑰,解密登入密碼,如果密碼正確,就同意使用者登入。
基於公私鑰登入的方式:(可以實現 免金鑰登入)
能用到這種方式的前提是,使用者已經將自己的公鑰儲存在遠端主機上,
這個是重點,也就是所謂的「公金鑰分發」。
(3)使用者用自己的私鑰解密「隨機資訊」後,接著用「私鑰」加密簽名該「隨機資訊」,
最後再用遠端主機的公鑰加密傳送給遠端主機。
(4)遠端主機先用自己的私鑰解密,然後在用事先儲存的客戶機公鑰進行解密認證,
得出「隨機資訊」,如果「隨機資訊」正確,就證明使用者
是可信的,直接允許登入shell,不再要求密碼。
ssh 公鑰私鑰認證原理
通常,通過ssh登入遠端伺服器時,使用密碼認證,分別輸入使用者名稱和密碼,兩者滿足一定規則就可以登入。但是密碼認證有以下的缺點 而使用公鑰認證則可以解決上述問題。所謂的公鑰認證,實際上是使用一對加密字串,乙個稱為公鑰 public key 任何人都可以看到其內容,用於加密 另乙個稱為金鑰 priva...
ssh 公鑰私鑰認證原理
通常,通過ssh登入遠端伺服器時,使用密碼認證,分別輸入使用者名稱和密碼,兩者滿足一定規則就可以登入。但是密碼認證有以下的缺點 而使用公鑰認證則可以解決上述問題。所謂的公鑰認證,實際上是使用一對加密字串,乙個稱為公鑰 public key 任何人都可以看到其內容,用於加密 另乙個稱為金鑰 priva...
SSH公鑰私鑰安全通訊原理
客戶端在訪問伺服器的時候,防止通訊資訊被擷取,進行加密處理通訊。在伺服器上會有兩把鑰匙,公鑰和私鑰。公鑰可以對所有公開,私鑰只有伺服器自己知道,並且公鑰產生的密文只能通過私鑰才能解開 1 客戶端發起請求,連線到伺服器監聽埠,伺服器接收到請求使用者,伺服器把公鑰傳送回給客戶端 2 客戶端拿到公鑰後,用...