OpenVPN Zertifikat mit Kennwort

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
cscholz
Beiträge: 19
Registriert: 03.10.2008 16:01:19
Kontaktdaten:

OpenVPN Zertifikat mit Kennwort

Beitrag von cscholz » 26.03.2009 11:20:39

Hallo zusammen,

ich hab jetzt schon eingei Zeit mit suchen verbracht aber nichts passendens gefunden, daher dachte ich ich frage mal im Forum nach.

Ich benutzte einen OpenVPN das mit User Zertifikaten arbeitet. Nun möchte ich die Zertifikate der User mit Kennwörtern versehen. Ich weiß das es geht, kriegs aber nicht hin.

Muss ich das Kennwort bei der Zertifikatserstellung mit angeben?

Code: Alles auswählen

openssl req -new -newkey rsa:1024 -out certs/$1"csr.pem" -nodes -keyout private/$1"key.pem" -days 365 && \
openssl x509 -req -in certs/$1"csr.pem" -out certs/$1"cert.pem" -CA my-ca.pem -CAkey private/my-cakey.pem -CAserial /etc/openssl/serial -days 3650
Gruß Christian

Benutzeravatar
Duff
Beiträge: 6321
Registriert: 22.03.2005 14:36:03
Wohnort: /home/duff

Re: OpenVPN Zertifikat mit Kennwort

Beitrag von Duff » 26.03.2009 12:32:12

Oder meinst du, dass du bei einem tunnelaufbau über OpenVPN neben den Zertifikaten auch ein Passwort eingeben muss, damit die Verbindung aufgebaut wird?
Oh, yeah!

cscholz
Beiträge: 19
Registriert: 03.10.2008 16:01:19
Kontaktdaten:

Re: OpenVPN Zertifikat mit Kennwort

Beitrag von cscholz » 26.03.2009 13:52:54

Ehm ja, genau das meine ich...

Benutzeravatar
Duff
Beiträge: 6321
Registriert: 22.03.2005 14:36:03
Wohnort: /home/duff

Re: OpenVPN Zertifikat mit Kennwort

Beitrag von Duff » 26.03.2009 14:05:50

Ok.

Dazu muss auf dem OpenVPN-Server in der server.config folgende Zeile eingetragen sein:

Code: Alles auswählen

# zusätzliche Authentisierung (Benutzername + Passwort)
auth-user-pass-verify /etc/openvpn/checklogin.sh via-env
Es wird dann auf dem Server das Skript checklogin.sh mit dem Parameter via-env ausgeführt.

Code: Alles auswählen

#!/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 $?
Die einfache Text-Datei users sieht so aus:

Code: Alles auswählen

daniel@homer:/etc/openvpn$ cat users 
Benutzer:Passwort
Auf dem Client muss die client.config um diese Zeile ergänzt werden:

Code: Alles auswählen

# zusätzliche Authentisierung
auth-user-pass
Hoffe, ich habe nichts vergessen.
Oh, yeah!

cscholz
Beiträge: 19
Registriert: 03.10.2008 16:01:19
Kontaktdaten:

Re: OpenVPN Zertifikat mit Kennwort

Beitrag von cscholz » 29.03.2009 18:35:14

Vielen Dank. Werde das die Tage mal ausprobieren.

Gruß Christian

Antworten