Linux

我應該在哪里以及如何定義 OpenVPN 使用者通行證?

  • August 17, 2021

由於此連結用於進行使用者/通過身份驗證,因此應將以下行添加到伺服器配置文件中。

plugin /usr/share/openvpn/plugin/lib/openvpn-auth-pam.so login

但是該連結沒有提到login應該如何填寫文件。

我在 Ubuntu 18.04 上。

PAM 代表Pluggable Authentication Modules,是一個系統認證和授權框架。它可以使用文件、數據庫以及您配置為密碼儲存的任何內容。它甚至可以使用密碼以外的東西進行身份驗證(例如,OTP 等);它可以進行雙重身份驗證,連結到外部可信第三方(如 Kerberos)等等。在最簡單的情況下,它使用影子文件來儲存系統使用者的加密密碼。

openvpn-auth-pam模組允許您使用此系統身份驗證框架對 OpenVPN 對等方進行身份驗證。login這裡表示您的 OpenVPN 將使用的 PAM 服務。可能您已經擁有一些服務,例如system-auth用於本地使用者的服務。查看/etc/pam.d/文件以了解 PAM 的配置方式,還請閱讀其手冊。

您會發現login預設情況下該服務僅引用system-auth. 要按原樣使用它,您首先創建本地系統使用者並設置他們的密碼。然後,--auth-user-pass向客戶端配置添加一個選項,使用憑據文件名或裸機(然後它將以互動方式詢問憑據)。詳情請參閱man openvpn

最後,請記住始終首先使用基於證書的身份驗證。每個 VPN 對等體都必須有自己唯一的證書/密鑰對。使用者名/密碼認證必須僅被視為一種補充安全措施。最好不要使用“duplicate-cn”功能。

引用自:https://serverfault.com/questions/1074672