VPN on demand mit Iphone und Fritzbox

Eigentlich war ich aus einem ganz anderen Grund im Netz der Netze unterwegs, als ich eher durch Zufall auf einen interessanten Ansatz gestoßen bin…

Herstellung einer sicheren VPN Verbindung mit dem heimischen Netzwerk immer dann, wenn man man sich in fremden WLAN Netzwerken befindet. Tolle Sache dachte ich mir und versuchte das Ganze gleich einmal aus.

Grundsätzlich verhält es sich mit dem Iphone leider so, dass die VPN Verbindung immer erst manuell über die Einstellungen aktiviert werden muss. Zudem deaktiviert sich diese wieder, wenn das Gerät in die Bildschirmsperre geht.  Abhilfe schafft hier die Erstellung eines eigenen Profils für das Iphone, welches immer dann automatisch eine VPN Verbindung zum eigenen Netzwerk herstellt, wenn man sich nicht im eigenen WLAN oder aber  Mobilfunknetz aufhält.

Bei der Erstellung eines solchen Profils sind MAC User klar im Vorteil. Hier kann man das Tool “Apple Configurator” nutzen. Windows User bleibt hier der “Umweg” über einen entsprechenden Editor. Ich emfehle hier, wie für viele anderne Maßnahmen auch, den Notepad++ Editor.

Die XML basierte Profildatei sollte auf einem IOS 11.x wie folgt aussehen:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>IPSec</key>
<dict>
<key>AuthenticationMethod</key>
<string>SharedSecret</string>
<key>LocalIdentifier</key>
<string>hier Gruppenname der FritzBox VPN Verbindung einsetzen</string>
<key>LocalIdentifierType</key>
<string>KeyID</string>
<key>RemoteAddress</key>
<string>IP-Adresse oder Hostname der FritzBox eintragen (DynDNS Adresse)</string>
<key>SharedSecret</key>
<data>Shared Secret der FritzBox eintragen</data>
<key>XAuthEnabled</key>
<integer>1</integer>
<key>XAuthName</key>
<string>Accountname der FritzBox eintragen</string>
<key>XAuthPassword</key>
<string>Passwort des FritzBox Users eintragen</string>
<key>OnDemandEnabled</key>
<integer>1</integer>
<key>OnDemandRules</key>
<array>
<dict>
<key>Action</key>
<string>Disconnect</string>
<key>InterfaceTypeMatch</key>
<string>WiFi</string>
<key>SSIDMatch</key>
<array>
<string>WLAN Name bei dem KEIN VPN aufgebaut werden soll</string>
</array>
</dict>
<dict>
<key>Action</key>
<string>Connect</string>
<key>InterfaceTypeMatch</key>
<string>WiFi</string>
</dict>
<dict>
<key>Action</key>
<string>Disconnect</string>
<key>InterfaceTypeMatch</key>
<string>Cellular</string>
</dict>
<dict>
<key>Action</key>
<string>Ignore</string>
</dict>
</array>
</dict>
<key>IPv4</key>
<dict>
<key>OverridePrimary</key>
<integer>1</integer>
</dict>
<key>PayloadDescription</key>
<string>Configures VPN settings</string>
<key>PayloadDisplayName</key>
<string>VPN</string>
<key>PayloadIdentifier</key>
<string>com.apple.vpn.managed.selbst generierte UUID hier eintragen</string>
<key>PayloadType</key>
<string>com.apple.vpn.managed</string>
<key>PayloadUUID</key>
<string>selbst generierte UUID hier eintragen</string>
<key>PayloadVersion</key>
<real>1</real>
<key>Proxies</key>
<dict>
<key>HTTPEnable</key>
<integer>0</integer>
<key>HTTPSEnable</key>
<integer>0</integer>
</dict>
<key>UserDefinedName</key>
<string>Accountname der VPN Verbindung hier eintragen</string>
<key>VPNType</key>
<string>IPSec</string>
</dict>
</array>
<key>PayloadDisplayName</key>
<string>VPN on Demand-Profildatei</string>
<key>PayloadIdentifier</key>
<string>com.apple.vpn.managed.selbst generierte UUID hier eintragen</string>
<key>PayloadRemovalDisallowed</key>
<false/>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>selbst generierte UUID hier eintragen</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>

Eine UUID kann man sich kostenlos hier generieren:

https://www.famkruithof.net/uuid/uuidgen

Die Profildatei muss man nun in einer Datei mit der Endung .mobileconfig abspeichern (IrgendeinName.mobileconfig) und diese am besten per Mail an das Iphone senden.

Die Datei lässt sich anschliessend durch klick als Profil installieren.

Sobald man sich nun NICHT im eigenen WLAN befindet oder aber über eine als sicher zu definierende Mobilfunklösung verbunden ist, wird automatisch eine VPN Verbindung zum eigenen FritzBox Netz aufgebaut. Jeglicher Internetverkehr wird nunmehr über den VPN Tunnel gesendet.

Bei der Nutzung öffentlicher Netzwerke etc. ist man nun auf der sicheren Seite.

Möchte man den ganzen Spass deaktivieren, so baut man sich einfach auf dem Iphone eine 2. VPN Verbindung und setzt diese auf aktiviert (kleiner blauer Haken vor der VPN Verbindung).  Selbstverständlich kann man auch das komplette Profil wieder vom IPhone löschen.

Anmerkung: Natürlich kann man den “Umweg” über das hemische Netz via VPN Anbindung nicht mit Diensten wie NordVPN etc. vergleichen. Jedoch sichert man seine Kommunikation in als eher als unsicher zu bezeichnenden Netzwerken ab. Zudem spart man sich über das soeben erstellte Profil die manuelle Aktivierung der VPN Verbindung.

Weiter gesponnen: Setzt man Dateiverwaltungstools wie den Filebrowser auf dem Iphone ein, über welchen man auf Daten des eigenen Servers zugreift, so kann man auch hier ein entsprechendes Profil auf dem IPhone bereitstellen. Immer dann, wenn auf den Adressbereich des eigenen Servers bzw. Netzwerks zugegriffen werden soll, wird die VPN Verbindung automatisch im Hintergund hergestellt. 😉 Tolle Sache…