1. 程式人生 > >基於SSH的使用者名稱密碼驗證和免密登入原理

基於SSH的使用者名稱密碼驗證和免密登入原理

關於SSH你只需要瞭解這些

SSH即安全外殼協議:專為遠端登入會話和其他網路服務提供安全性的協議,通過使用SSH,你可以把所有傳輸的資料進行加密。

瞭解OpenSSH

OpenSSH是SSH的免費開源實現,是使用SSH透過計算機網路加密通訊的實現。它是取代由SSH Communications Security所提供的商用版本的開放原始碼方案。

OpenSSH 由客戶端和服務端的軟體組成。服務端是一個守護程序(daemon), 它在後臺執行並響應來自客戶端的連線請求。服務端一般是 sshd 程序,提供了 對遠端連線的處理。

客戶端通過SSH遠端登入伺服器

這裡寫圖片描述

這是客戶端與伺服器的連線,使用使用者名稱密碼的形式登入,而在同一區域網內的伺服器與伺服器之間則可以使用ssh的免密登入

伺服器與伺服器間的免密登入

這裡寫圖片描述

配置伺服器1與伺服器2的免密登入

1.伺服器1生成祕鑰對

ssh-keygen -t rsa

會生成id_rsa.pub和id_rsa兩個檔案
2.將生成的公鑰(id_rsa.pub)傳送給伺服器2(authorized_keys)

ssh-copy-id 伺服器2的hostname或ip

首次連結需要輸入使用者密碼、驗證成功後後續免密登陸。當然你通過其他方式貼上到伺服器2的authorized_keys中也是可以的,一個公鑰為一行
3.伺服器2生成祕鑰對

ssh-keygen -t rsa

4.將生成的公鑰(id_rsa.pub)傳送給伺服器1(authorized_keys)

ssh-copy-id 伺服器1的hostname或ip

總結

由於博主的祕鑰對早已生成過,所以就不直接案例展示。