我應該在哪裡以及如何定義 OpenVPN 用戶通行證?

我應該在哪裡以及如何定義 OpenVPN 用戶通行證?

由於此關聯為了進行使用者/密碼身份驗證,應將以下行新增至伺服器設定檔。

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

但該連結並未提及應如何login填寫文件。
我使用的是 Ubuntu 18.04。

答案1

PAM 代表可插拔的身份驗證模組,是一個系統認證和授權框架。它可以使用檔案、資料庫以及您配置為密碼儲存的任何內容。它甚至可以使用密碼以外的方式進行身份驗證(例如 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”功能。

相關內容