Linux
如何使用 OpenVPN 為所有使用者使用共享密鑰和證書?
我有一個 OpenVPN 伺服器,它對 Active Directory 進行身份驗證,因此要求每個使用者輸入使用者名和密碼。
最重要的是,它還要求每個使用者都有一個客戶端證書和客戶端密鑰(+ 伺服器 ca.crt)。
問題
我希望每個使用者都必須使用他們的 AD 使用者名和密碼登錄,並且所有客戶端都共享相同的客戶端證書和客戶端密鑰。
我想要一個共享客戶端證書和密鑰的原因是為了便於管理,它可以保護網路免受暴力破解密碼的侵害。
一種方法是像這樣創建一個客戶端
cd /etc/openvpn/easy-rsa/2.0/ . /etc/openvpn/easy-rsa/2.0/build-key client1
並將其提供給每個使用者。
在這些條件下這是正確的方法嗎?還是應該以特殊方式創建客戶端證書和密鑰?
您不應該這樣做,因為一旦您的單個密鑰因任何原因(筆記型電腦被盜、木馬、員工離開公司等)被盜用,您將需要為每個使用者提供一個新密鑰,這很可能會導致花費更多時間比你最初只創建一個保存的。
如果您想避免創建 CA 和簽署(和撤銷)客戶端證書的複雜性(儘管使用 easy-rsa 腳本確實並不難),OpenVPN 還支持靜態密鑰(使用 生成
openvpn --genkey
)非常簡單句柄(儘管它們也將用於加密,而不是 TLS)。