Я использовал дифференцированный подход, хотя в производстве plugin /usr/lib64/openvpn/plugin/lib/openvpn-auth-pam.so login
рекомендуется, но я взял один сценарий оболочки и получил аутентификацию, но помните, что это опасно.
добавьте следующие строки в ваш /etc/openvpn/server.conf
file
--verify-cline-cert none
script-security 2
auth-user-pass-verify /etc/openvpn/example.sh via-file
Теперь создайте файл в /etc/openvpn/example.sh
со следующим содержимым
!/bin/bash
echo "started"
username=`head -1 $1`
password=`tail -1 $1`
if grep "$username:$password" $0.passwd > /dev/null 2>&1
then
exit 0
else
if grep "$username" $0.passwd > /dev/null 2>&1
then
echo "auth-user-pass-verify: Wrong password entered for user '$username'"
else
echo "auth-user-pass-verify: Unknown user '$username'"
fi
exit 1
fi
Теперь создайте имя пользователя и пароль в /etc/openvpn/example.sh.passwd
со следующим содержимым
userone:securepassworduserone
usertwo:securepasswordusertwo
Теперь создайте файл клиента, импортируйте и подключитесь, используя ваш пароль, но здесь я нахожусь в стеке, так как не хочу предоставлять файл клиента.