OpenVPN配置密码认证

下载密码认证脚本checkpsw.sh
https://dl.t2.re/Others/OpenVPN/checkpsw.sh

服务端配置
修改服务端配置文件,在文件最后增加以下内容

auth-user-pass-verify /etc/openvpn/checkpsw.sh via-env
username-as-common-name
verify-client-cert none
script-security 3

第一行为密码认证脚本所在路径

修改密码认证脚本checkpsw.sh
PASSFILE="/etc/openvpn/psw-file"为密码文件所在路径

创建密码文件psw-file,一行一个,内容格式如下
username password

客户端配置
手机客户端
修改客户端配置文件,增加以下内容
auth-user-pass

PC客户端
Windows客户端虽然可以记住密码但无法自动连接,修改客户端配置文件,在下面增加一行
auth-user-pass psw-file

在配置文件同目录下创建密码文件psw-file,内容第一行为用户名,第二行为密码

tips
针对OpenVPN每小时都重新认证的问题,可以修改服务端和客户端的配置文件,增加参数
reneg-sec 0
设置为不重新认证

设置允许一个账号在多个客户端并发连接,在服务端配置文件增加参数
duplicate-cn