Geschrieben von Frank Mankel
Kategorie: IPFire

Bedingt durch den Versuch einen BananaPI als IPFire zu nutzen, musste ich ziemlich viel wieder installieren bzw. konfigurieren. Dazu gehörte auch mein OpenVPN-Tunnel. Was macht OpenVPN? Es richtet über eine verschlüsselte Verbindung ein Virtuelles Privates Netzwerk ein. Das kann man sich so vorstellen, das man im Hotel sitzt, und sein Notebook dann mittels einer virtuellen Leitung in sein Heimnetzwerk einklinkt. Man kann dann z.b. ganz einfach und sicher einen Server auf 192.168.x.x erreichen.

Vorraussetzung:

- funktionierende IPFire-Installation - DynDNS-Domain

Installation:

Grundvoraussetzung für die Nutzung eines OpenVPN-Tummels ist eine dynamische DNS. Was ist das? Eine dynamische DNS ist ein Name unter dem Euer Rechner immer zu erreichen ist, egal welche IP-Adresse ihr gerade habt. Dazu sendet die IPFire die IP-Adresse in regelmäßigen Abständen an einen Dynamic DNS Anbieter. Dieser stellt dann einen Domainnamen zur Verfügung unter dem Eure IPFire ständig erreichbar ist. Es gibt sehr viele Anbieter auf dem Markt, zum Teil auch kostenlos. Ich gehe in diesem Beitrag von einem Account bei DynDNS aus. Ihr findet aber auch in der Eingabemaske der IPFire eine große Anzahl an Anbietern. Sucht Euch einen aus ;)

Auswahl DynDNS-Anbieter

Auswahl DynDNS-Anbieter

Dynamischer DNS:

Unter "Dineste/Dynamischer DNS" findet ihr die Eingabemaske. Den Dienst auswählen, die Datenfelder rechts ausfüllen, mit den Daten des DynDNS-Anbieters. Dann auf "Hinzufügen" klicken. Ein Klick auf "Sofortiges Update" sollte Eure IP-Adresse sofort beim Dienst registrieren. Wenn alles geklappt hat, dann ist der Hostname in grün dargestellt. Damit wäre jetzt die IPFire von außerhalb, unter der gewählten Adresse, permanent zu erreichen. So weit, so gut..

OpenVPN:

Nun geht es an die Konfiguration von OpenVPN. Sieht furchtbar kompliziert aus, ist es aber gar nicht. Mehr Schwierigkeiten hat mir immer die Konfiguration meines Smartphones bereitet, aber immer ein Schritt nach dem anderen. Globale Einstellungen: OpenVPN auf ROT: Ja OpenVPN-Gerät: TUN Protokoll: UDP MTU: 1400 LZO: Ja Ziel-Port: 1194 Verschlüsselung: AES-CBC (256 Bit) unter "Erweiterte Server-Optionen" noch den DNS-Server angeben und fertig. Zertifizierungsstellen und -Schlüssel: Das wichtigste sind erstmal die Root/Host-Zertifikate. Die Daten entsprechend Ausfüllen und dann den entsprechenden Button klicken und warten bis alles erledigt ist. Das kann je nach der Bit-Länge des Diffie-Hellman-Parameters sehr lange dauern. Ich nutze den mit 2048 Bit. Also am besten einen Kaffee machen, das kann auch schon mal eine halbe Stunde dauern ;)

OpenVPN Konfiguration

OpenVPN Konfiguration

Verbindungsstatus und -Kontrolle: Wenn das erledigt ist, brauchen wir einen Zugang. Datzu klicken wir unter "Verbindungsstaus und -Kontrolle" auf "Hinzufügen". Dann auf "Roadwarrior", das ist der Außendienstler der von unterwegs auf das Firmennetzwerk zugreifen will.

RoadWarrior Konfiguration

RoadWarrior Konfiguration

Die Felder sollten selbsterklärend sein. Bei "Gültig bis" setze ich immer auf 999. Das Passwort wird hinterher bei der Installation der Zertifikate auf dem Clientrechner benötigt. Unter "Erweiterte Client-Optionen" könnt ihr z.B. setzen, auf welche Netzwerke der Roadwarrior Zugriff haben soll. Wir gehen hier mal von GRÜN in unserem Besipiel aus. Nach dem Speichern der Daten kommen wir wieder zum Hauptbildschirm zurück. Dort sehen wir nun den Roadwarrior. Dort kann man dann mit dem linken Diskettensymbol das Clientpaket herunterladen, das brauchen wir dann auf dem Client für die Konfiguration des Zuganges. Fertig, wenn noch nicht geschehen, den OpenVPN-Dienst starten, dazu auf "Starte OpenVPN-Server" klicken.

Client-Installation:

Beispiel: Android Smartphone Nexus 5 Die App OpenVPN für Android von Arno Schwabe installieren.

OpenVPN für Android

OpenVPN für Android

Ein neues Profil anlegen. Reiter Grundeinstellungen: Unter Clientzertifikat das heruntergeladene Zertifikat der IPFire installieren. Dabei wird das vergebene Passwort abgefragt. Reiter Serverliste: Euren Domain Namen eintragen, den ihr Euch bei eurem DNS-Anbieter angelegt habt. Den port der IPFire (1194) eintragen. Protokoll UDP. bild005

Reiter Authentifizierung

Dort tragen wir unter Verschlüsselungsalgorithmus AES-256-CBC ein. Das muss gleich sein, mit dem Eintrag des Servers! Das sollte es gewesen sein, nun geht es ans Probieren. Wichtig, es muss eine externe Verbindung sein, also am Smartphone WLAN aus! Dann auf das Profil klicken und warten bis alles ereldigt ist. Wenn erfolgreich steht am Ende "....CONNECTED,SUCCESS..." Der Tunnel steht, im Bildschirm taucht oben ein Schlüssel auf. Auf der IPFire sieht das dann wie folgt aus.

bild006

Auf dem Smartphone kann das schon ein wenig nervenaufreibend sein, ich habe schon Stunden damit verbracht zu verstehen was denn nun wieder falsch läuft. Ein Tipp von mir, wenn es nicht klappt, schaut euch ganz genau das Log an, dort stehen alle Fehler drin. Einfach danach googlen und man findet fast immer eine Lösung. Es sollte aber reichen die o.g. Schritte durchzuführen um einen funktionierenden Tummel zu haben.

Noch ein Tipp, bei einem bestehenden Tunnel wird nur der Traffic ins lokale Netz über den Tunnel geschickt. Sprich, wenn ich 192.168.x.x aufrufe geht die Verbindung durch den Tunnel. Würde ich nun eine Bankingseite aufrufen, geht der Traffic nicht durch den Tunnel. Wenn ich aber nun möchte, das alle Verbindungen durch den Tunnel gehen, stelle ich folgende Option auf dem Client ein. Dann geht der gesamte Traffic durch den Tunnel.

bild007

Wieder einen Schritt näher am Sicheren Internet :) Viel Spaß beim Testen.