OpenVPN und iOS

Es gibt seit kurzem eine OpenVPN App für iOS Geräte. Diese funktioniert wunderbar zusammen mit IPCop, wenn man ein paar Dinge beachtet. Hierzu habe ich mal eine kleine Anleitung gebastelt.

 

1. App installieren:

Auf dem iOS-Gerät die App OpenVPN Connect installieren. Wenn dies erfolgreich war, dann sollte folgendes App-Symbol auf irgendeinem Home-Bildschirm erscheinen. Ebenso gibt es einen neuen Menüpunkt in den Einstellungen. (siehe Screenshots)

Bild Bild

Ggf. kann es hilfreich sein, den Connection timeout in den Einstellungen etwas zu erhöhen. Der Standardwert ist 30 Sekunden.

 

2. OpenVPN Verbindung einrichten:

Die OpenVPN Verbindung wie gewohnt auf dem IPCop einrichten, das Client-Paket herunterladen und auf einem Rechner entpacken.

 

3. Client-Paket anpassen:

Auf dem IPCop, einer anderen Linux-Maschine oder auf einem Windows-PC in der DOS-Box (hierzu braucht man ein entsprechendes Programm (siehe Links)) in das Verzeichnis des entpackten Client-Paketes wechseln und die drei folgenden Befehle ausführen:

openssl pkcs12 -in ZERTIFIKAT.p12 -clcerts -nokeys -nodes -out user.pem
openssl pkcs12 -in ZERTIFIKAT.p12 -nocerts -nodes -out keys.pem
openssl pkcs12 -in ZERTIFIKAT.p12 -cacerts -nodes -out ca.pem

Hinweis: 
Es wird jedes Mal nach dem Passwort, welches bei Anlegen der Verbindung eingegeben wurde, gefragt!

 

3.1. Möglichkeit 1:

Jetzt muss noch die .ovpn-Datei aus dem Client-Paket wie folgt angepasst werden.

#OpenVPN Server conf
tls-client
client
dev tun
proto udp
tun-mtu 1400
remote xxx.xxx.com 1194 <-hier eure dyndns Adresse oder IP rein
ca ca.pem
cert user.pem
key keys.pem
cipher BF-CBC <- hier eure Verschlüsselung rein.
verb 3
ns-cert-type server

 

3.2. Möglichkeit 2:

Auch hier muss noch die .ovpn-Datei aus dem Client-Paket angepasst werden. Dies ist auch in der integrierten Anleitung der App so beschrieben. Dazu muss der Inhalt der drei vorher erzeugten Dateien in XML-Form unten an die .ovpn-Datei angefügt werden. (siehe Screenshot)

Bild

#OpenVPN Server conf
tls-client
client
dev tun
proto udp
tun-mtu 1400
remote xxx.xxx.com 1194 <-hier eure dyndns Adresse oder IP rein
cipher BF-CBC <- hier eure Verschlüsselung rein.
verb 3
ns-cert-type server

<ca>
...
</ca>

<cert>
...
</cert>

<key>
...
</key>

Dies hat den Vorteil, dass nur eine Datei auf das iOS-Gerät übertragen werden muss. Ansonsten funktionieren beide Möglichkeiten identisch.

 

4. Client-Paket auf das iOS-Gerät übertragen:

Dies geschieht an irgendeinem Rechner, auf dem iTunes installiert ist. Gerät verbinden, auf das Gerät wechseln, Apps anklicken und dann unterhalb von Freigabe die App OpenVPN auswählen. Durch Klick auf Hinzufügen kann/können jetzt die Datei/en ausgewählt werden, die vorher erzeugt wurden.

Bild

Auf dem iOS-Gerät erscheint jetzt der Hinweis, dass eine neue Konfiguration vorhanden ist. Durch Antippen des grünen Pluszeichens wird die Verbindung hinzugefügt. Den Namen kann man noch anpassen, indem man zuerst die Verbindung und danach Rename antippt.

Bild

 

5. Verbindung herstellen:

Wenn bis jetzt alles korrekt funktioniert hat, dann muss nur noch das Passwort für die Verbindung eingegeben werden. Die Verbindung wird dann aufgebaut.

Bild Bild

 

6. Verbindungs-LOG einsehen:

Kommt die Verbindung nicht zustande, dann kann man zum einem in den Systemprotokollen auf dem IPCop oder direkt in der App nachsehen. Dazu einfach die Zeile unterhalb des Verbindungsnamens antipppen.

Bild

 

7. Links:

Pfeil rechts Link zur App
Pfeil rechts OpenSSL Binary für Windows (die ZIP-Datei neben Binaries)

 

Persönliche Anmerkung des Autors:
Bitte nicht über den Verbindungsnamen wundern. icon_wink.gif
nach oben


2 Comments

  1. Kommentare von Martin:

    Gibt es noch irgendwo einen versteckten Schalter mit dem man den Client erst aktivieren muss? Ich habe eine ähnliche Konfiguration auf mein iPhone geladen aber wenn ich sie aktiviere passiert rein gar nichts. Weder im Log auf dem iPhone noch auf dem Server sind auch nur irgendwelche Indizien zu finden, dass irgendetwas passiert.

    Grüße!

  2. Kommentare von Chris:

    Klasse Anleitung!

    Besser konnte man es nicht beschreiben :)

    Danke!

Hinterlasse eine Antwort

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


*