ich habe mal eine Frage zu OpenVPN.
Und zwar habe ich auf meinem Home-Server openvpn als user nobody laufen. Das ganze würde ich jetzt gerne neben den Zertifikaten noch mit Hilfe von einer zusätzlichen Authentisierung machen.
Dazu habe ich in der server.conf die Zeile
Code: Alles auswählen
auth-user-pass-verify /etc/openvpn/checklogin.sh via-env
Das einfache Skript
Code: Alles auswählen
root@homer:/etc/openvpn# cat checklogin.sh
#!/bin/bash
# Zur Sicherheit - Authentisierung mit Benutzername + Passwort bei OpenVPN
if [ "$username" == "" -o "$password" == "" ]
then
exit 1;
fi
# Usernamen und Passwort werden zusammengesetzt
USER_PASS="$username:$password"
# Der Eintrag wird in der Datei users gesucht
cat /etc/openvpn/users | grep $USER_PASS
# wenn grep einen Eintrag gefunden hat ist der Exitcode 0
exit $?
Code: Alles auswählen
root@homer:/etc/openvpn# cat /etc/openvpn/user
Benutzername:Passwort
duff:beer
Code: Alles auswählen
-rw-r--r-- 1 root root 41 2009-02-10 19:39 users
-rwxr-xr-x 1 root root 385 2009-02-10 19:43 checklogin.sh