搜尋此網誌

2016年9月8日 星期四

OpenVPN 啟用 用戶名/密碼驗證 設定方法

(1)
修改SERVER端 server.ovpn , 增加以下幾行:

# 設置腳本安全等級 3, 這一行很關鍵
script-security 3 system

# 指定用戶名密碼驗證程序為 checkpsw.cmd
auth-user-pass-verify checkpsw.cmd via-env

# 設置用戶名為 os 通用帳號
username-as-common-name


(2)
在 openvpn\config 目錄下新建 checkpsw.cmd, 內容如下
不管是通過 exe 、bat 或者其它第三方程序 來驗證用戶名和密碼,
最終需要返回 0 表示驗證OK, 1表示失敗


@echo off 

for /f "tokens=1,2,3 delims= " %%i in (password.txt) do (

if %%i == %USERNAME% if %%j==%PASSWORD% if %%k == 1 exit /B 0 

)

exit /B 1



(3)
在 openvpn\config 目錄下新建 password.txt, 內容如下:
格式依據 checkpsw.cmd 而定,
第1個欄位表示用戶名, 第2個欄位表示密碼, 第3個欄位數字 1 表示帳號狀態/用 0 表示停用禁止用戶登陸
例如:
client1 client1 1
client2 client2 1
user1 password1 1


(4)
修改client端 client.ovpn 文件, 增加:

# 增加用戶名&密碼驗證
auth-user-pass

# cache 中不記憶輸入的用戶名稱和密碼
auth-nocache


參考

沒有留言:

張貼留言

搜尋此網誌