OpenVPN Server mit Debian Lenny 11


Nach dem ich auf

http://www.henningdippel.de

eine gute Anleitung gefunden hatte für Ubuntu habe ich nach der etwas abgewandelten Anleitung OpenVPN auf einem Debian Lenny System  installiert (in einer Xen Umgebung – DomU)

Die Beispielkonfigurationen findet man in:

/usr/share/doc/openvpn/examples

Debian legt ein Verzeichnis

/etc/openvpn

an.  Ich habe mir die Beispiele alle mittels

cp -av /usr/share/doc/openvpn/examples/ /etc/openvpn/in das Konfigurationsverzeichnis kopiert.

Um ein VPN zu konfigurieren muss man sich für ein Netzsegment entscheiden aus dem man den VPN-Clienten (und dem Server) Adressen zuordnet. Es bietet sich z.B. an ein Netz aus dem Bereich 10.0.0.0  (10.0.0.0 – 10.255.255.255) zu wählen. OpenVPN nutzt in den Beispielkonfigurationen den Bereich 10.8.0.0/24.

Authentifikation …

Es gibt  zwei Methoden Zur Authentifikation – preshared key oder  zertifikatsbasiert.

Bei der Installation sollen sich mehrere Clients gleichzeitig an einem Server anmelden/verbinden da bietet sich die zertifikatsbasierende Authentifizierung an.

Es werden jeweils 2 Schlüssel (privat und öffentlich) für die Clients benötigt und eben so für den Server – für den Server erstellt man noch einen Master-Schlüssel (und Zertifikat) mit dem die Client Zertifikate signiert werden.

Im der Datei

/etc/openvpn/examples/easy-rsa/2.0/vars

passt man die Parameter

export KEY_COUNTRY="DE"
export KEY_PROVINCE="NRW"
export KEY_CITY="Essen"
export KEY_ORG="NEW-VPN"
export KEY_EMAIL="info@foo.bar"
an . Danach kann man die PKI (Public-Key-Infrastruktur)  intialisieren mit

cd /etc/openvpn/examples/easy-rsa/2.0/

source ./vars
./clean-all
./build-ca

Das  Master-Zertifikat und der Master-Schlüssel wurden nun  erstellt.

Jetzt wird das Zertifikat und den Schlüssel für den Server erstellt mit

./build-key-server server
Danach werden die Schlüssel für die Clients erzeugt.

./build-key client1

./build-key client2

Dann: ./build-dh

Im Verzeichnis /etc/openvpn/examples/easy-rsa/2.0/keys liegen danach die Schlüssel/Zertifikate.

Ich habe dann ein Verzeichnis [code] mkdir /etc/openvpn/keys[/code] angelegt und die Schlüssel/Zertifikate dorthin kopiert mit :

cp -av /etc/openvpn/examples/easy-rsa/2.0/keys/* /etc/openvpn/keys/

Zur Konfiguration…

Die Beispielconfigurationen liegen in dem Verzeichnis

/etc/openvpn/examples/sample-config-files Zuerst wird mit  gunzip  server.conf.gz die Server-Konfiguration entpackt.

Die meisten Einstellungen können übernommen werden (z.B. UDP-Port 1194, Netz 10.8.0.0/24 ,  etc) .
Wenn die VPN  Clients sich später gegenseitig „sehen“ sollen, muss die Zeile
client-to-client geändert werden (ohne Semikolon).

Die Pfade zu den Zertifikaten/Keys müssen noch angepasst werden damit OpenVPN alle notwendigen Dateien nach einem Neustart einliest :

ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh1024.pem

Jetzt wird die client.conf angepasst (die Serveradresse muss eingetragen werden).

Den Servr startet man mit /etc/init.d/openvpn start

und den Client mit openvpn client.conf (ggf. müssen noch die Rechte des TUN-Device angepasst werden)

Weitere Informationen :

http://wiki.ubuntuusers.de/OpenVPN

http://www.online-tutorials.net/security/openvpn-tutorial/tutorials-t-69-209.html

http://wiki.freifunk.net/OpenVPN_Howto

Open VPN und Samba:

http://openvpn.net/index.php/open-source/documentation/howto.html#samba

Client einrichten (auch Windows)

http://forum.fachinformatiker.de/security/80441-windows-openvpn-client-einrichten.html

http://www.online-tutorials.net/security/openvpn-tutorial/tutorials-t-69-209.html#openvpn-client


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

11 Gedanken zu “OpenVPN Server mit Debian Lenny

  • bert Autor des Beitrags

    ich habe einfach die Kofigurationsbeispiele von Debian

    /etc/openvpn/examples/sample-config-files

    angepasst (die Anpassungen stehen ja im Beitrag)
    Bei den Beipielen ist eine client.conf und eine server.conf dabei.

  • Thomas

    Vielen Dank für dieses einfach zu lesende Howto!
    Ich habe allerdings noch einen Konsistenzfehler gefunden: in der server.conf sollte der pfad zu den keys nach Deinen Kopieraktionen doch sein:

    ca /etc/openvpn/keys/ca.crt
    cert /etc/openvpn/keys/server.crt
    key /etc/openvpn/keys/server.key
    dh /etc/openvpn/keys/dh1024.pem

    Noch dazu wäre der hinweis hilfreich, die fertigen conf dateien nach /etc/openvpn zu linken oder zu kopieren.
    Auf alle Fälle danke! Du hast mir eine Menge Arbeit gespart.

  • a

    Bei „Die meisten Einstellungen können übernommen werden (z.B. UDP-Port 1194, Netz 10.8.0.0/24 , etc) .
    Wenn die VPN Clients sich später gegenseitig “sehen” sollen, muss die Zeile“, leider steht dort nicht, welche Datei bearbeitet werden soll. Ich gehe davon mal aus, das die „server.conf“ bearbeitet werden muss, wo z.B. auch „client-to-client“ irgendwo reingehört.

  • a

    Nachtrag:

    openvpn client.conf
    Sun Feb 3 17:01:40 2013 OpenVPN 2.1.3 i486-pc-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [MH] [PF_INET6] [eurephia] built on Feb 20 2012
    Sun Feb 3 17:01:40 2013 NOTE: OpenVPN 2.1 requires ‚–script-security 2‘ or higher to call user-defined scripts or executables
    Sun Feb 3 17:01:40 2013 Cannot load certificate file client.crt: error:02001002:system library:fopen:No such file or directory: error:20074002:BIO routines:FILE_CTRL:system lib: error:140AD002:SSL routines:SSL_CTX_use_certificate_file:system lib
    Sun Feb 3 17:01:40 2013 Exiting