Ein VPN ist in vielen Situationen recht nützlich, besonders dann, wenn man sich mit seinem MacBook oder dem iPhone oder iPad in einen offenen, unverschlüsselten WLAN-Hotspot einwählt. Es ist natürlich lästig, immer selbst dran denken zu müssen das VPN einzuschalten. Darum erfahrt ihr nun hier, wie ihr recht einfach ein VPN-on-demand für euer MacBook oder iOS-Gerät einrichtet, dass sich automatisch immer dann aktiviert, wenn ihr in einem fremden WLAN unterwegs seid.

Dazu erstellen wir uns nun ein Profil, das alle erforderlichen Angaben enthält und einfach auf dem MacBook oder dem iOS-Gerät installiert werden kann und das VPN on demand so einrichtet.

Zuerst ladet euch aus dem Mac App Store die App „Apple Configurator 2“ herunter, öffnet diese und wählt im Menü den Punkt Ablage -> Neues Profil.


Nun wählt ihr links die Rubrik „Allgemein“ und tragt in der rechten Fensterhälfte unter „Name“ einen Namen für euer Profil ein. Das erscheint so in den Systemeinstellungen im Punkt Profile, der nach dem Installieren erscheint.

Nun wechselt ihr in die Rubrik „VPN“ und konfiguriert dort das VPN. Im Beispiel verwende ich das VPN von sipgate.de mit IPsec als VPN-Protokoll. Wenn ihr ein Fritzbox habt, dann könnt ihr das analog einrichten, da die Fritte auch IPsec beherrscht.

Ihr müsst nun die folgende Felder ausfüllen:

  • Verbindungsname: das erscheint in den Systemeinstellungen -> Netzwerk und ihr könnt es frei wählen
  • Verbindungstyp: hier wählt ihr IPsec aus.
  • Server: da tragt ihr den Server eures Providers ein. Ich verwende hier den von sipgate. Bei einer Fritzbox nehmt ihr deren DynDNS-Namen.
  • Account: dein Accountname bei sipgate (oder eurer Fritte)
  • Passwort: und das dazu gehörende Passwort.
  • Geräte-Authentifizierung: Das sollte schon auf „Schlüssel (Shared Secret) / Gruppenname“ stehen. Falls nicht, dann wählt es bitte aus.
  • Gruppenname: das ist hier wieder derjenige von sipgate
  • Schlüssel (Shared Secret): den habt ihr ebenso von sipgate (oder in eurer Fritzbox konfiguriert)

Wenn ihr alles eingetragen habt, sieht das Ganze nu so aus. Nun speichert ihr dieses Profil ab, als Name ist derjenige schon voreingetragen, den ihr unter Allgemein gewählt habt.

Da der Apple Configurator 2 leider für IPsec keinen Abschnitt für das „on demand“ vorsieht müssen wir das in der gerade abgespeicherten Datei selbst ergänzen. Keine Angst, das geht recht einfach. Öffnet dazu die Profildatei mit einem Editor mittels Rechtsklick -> Öffnen mit. Als Editor könnt ihr z.B. TextEdit oder den BBEdit (die kostenlose Version recht vollkommen) verwenden. Im Text sucht ihr ziemlich am Anfang die folgende Stelle…

… und fügt nach der Zeile mit dem XAuthPassword String „<string>……</string>“ und vor der Zeile mit dem „</dict>“ den nachfoldenden Textteil ein.

<!-- VPN-On-Demand Codeblock -->
<key>OnDemandEnabled</key>
<integer>1</integer>
<key>OnDemandRules</key>
<array>
	<dict>
		<!-- VPN bei ausgewählten WLAN-Netzen deaktivieren -->
		<key>InterfaceTypeMatch</key>
		<string>WiFi</string>
		<key>SSIDMatch</key>
		<array>
			<string>WLAN-Name</string>
			<string>anderesWLAN</string>
		</array>
		<key>Action</key>
		<string>Disconnect</string>
	</dict>
	<dict>
		<!-- VPN bei aktiver WLAN-Verbindung aktivieren -->
		<key>InterfaceTypeMatch</key>
		<string>WiFi</string>
		<key>Action</key>
		<string>Connect</string>
	</dict>
	<dict>
		<!-- VPN im Mobilfunknetz nicht aktivieren -->
		<key>InterfaceTypeMatch</key>
		<string>Cellular</string>
		<key>Action</key>
		<string>Disconnect</string>
	</dict>
	<dict>
		<!-- VPN Default state -->
		<key>Action</key>
		<string>Disconnect</string>
	</dict>
</array>
<!-- VPN-On-Demand Codeblock ENDE-->

Im Abschnitt „VPN bei ausgewählten WLAN-Netzen deaktivieren“ tragt ihr anstelle des Platzhalters „WLAN-Name“ den Namen eures Home-WLAN ein, da ihr ja in eurem WLAN zuhause das VPN nicht nutzen wollt. Ihr könnte auch noch weitere WLANs in jeweils einer neuen Zeile mit „<string>….</string>“ direkt darunter eintragen. Habt ihr kein weiteres vertrauenswürdiges WLAN, dann löscht bitte die Zeile „<string>anderesWLAN</string>“ aus dem obigen Beispiel heraus.

Die weiteren Abschnitte regeln dann, dass das VPN bei allen anderen WLANs eingeschaltet werden soll, bei Mobilfunkverbindungen aber nicht (da dort die Funkstrecke regelmäßig nicht mitgehört werden kann und verschlüsselt ist) und auch ansonsten, also bei Verbindungen via LAN-Kabel, ebenso ausgeschaltet bleibt. Nachdem ihr eure Änderungen nun gespeichert habt, sollte das Ganze wie folgt aussehen:

Um das Profil nun zu installieren, reicht es aus, dass ihr auf dem MacBook auf die Datei doppelklickt, die Frage ob ihr das wirklich installieren wollt bejaht und auch die nochmalige Nachfrage bejaht. Diese erscheint, da ihr kein Entwicklerzertifikat habt, mit dem das Profil signiert wurde. Brauchts ja aber für unsere Zwecke auch nicht.

Anschließend erscheint das folgende Fenster und ihr seht, dass euer gerade erstelltes VPN on demand Profil installiert wurde. In den Systemeinstellungen -> Netzwerk sieht das dann so aus. Dort erscheint nun auch die Funktion „Bei Bedarf“, die ihr manuell in die Profildatei eingefügt habt und die ihr hier aktivieren oder wieder deaktivieren könnt.

Für eurer iOS-Gerät sendet ihr einfach die Profildatei via AirDrop auf das iPhone bzw. iPad. Das Profil findet ihr dann in den Systemeinstellungen gleich oben am Beginn der Liste…

… und nach dem Installieren erscheint dann der neue Menüpunkt „VPN“…

… unter dem ihr das VPN-Profil nun aktivieren könnt. Weiterhin könnt ihr, wenn ihr auf das i-Symbol tippt…

… den Schalter erreichen, um die Funktion „Bei Bedarf verbinden“ ein- oder auszuschalten.

So, der Artikel ist doch länger geworden, als ich gedacht habe. Ich hoffe aber mal, dass er euch geholfen hat, euer VPN on demand einzurichten.

Happy VPN-ing.

Kategorien: macOSVPN

11 Kommentare

Spot · 18. Oktober 2020 um 21:22

Ausführliche u. gut gemachte Anleitung ! Ich werde es ausprobieren.
Vielen, vielen Dank!!

    Pille · 15. September 2021 um 7:00

    Super-Beitrag. Die Anleitung hat bei meinem 6er-iphone mit iOS12.54 sofort funktioniert.
    Vielen Dank.

André · 30. Oktober 2020 um 10:46

Ich habe das VPN mittels OpenVPN aufgesetzt. Den Konfigurator brauch ich dafür nicht, um die Zertifikate auf die iOS Devices zu bekommen. Allerdings habe ich kein OnDemand konfiguriert, da ich das IMHO nicht brauche. Könnte ich bei Gelegenheit mal probieren.
Btw. bist Du bei GIMP nicht mehr aktiv? Ich habe Dich seit vielen Jahren im RSS reader, immer mit der Hoffnung, dass da nochmal wieder was kommt.

    Simone · 30. Oktober 2020 um 16:39

    Das freut mich, dass du mir die Treu hälst. Das mit GIMP habe ich mittlerweile aufgegeben, da ich in einigen Diskussionen mit dem Core-Entwicklerteam recht unterschiedlicher Meinung war, was die Anpassung an macOS betraf. Ich wollte da deutlich mehr in den GIMP-Sourcen machen, die das nur „verallgemeinert“ und den GTK-Libraries. Und darauf habe ich keine Lust. Außerdem wurden die Sources immer Linux-spezifischer und sind von den Konzepten immer weiter weg von den macOS-Möglichkeiten gewandert. Naja, dann habe ich es halt sein lassen. Insoweit ist es zwar schade, aber nach 10 Jahren GIMP on OS X war der Zeitpunkt gekommen, das abzuschließen. Hat dennoch Spaß gemacht.

      André · 30. Oktober 2020 um 15:46

      Danke für die Erklärung. Sehr schade für GIMP.

Veit · 17. April 2021 um 12:43

Vielen Dank für diesen Artikel. Als ich jedoch deiner Anleitung gefolgt bin, dachte ich, ich könnte mein altes VPN on Demand-Profil auf dem iphone rauswerfen und alles ist wie früher.
Dem war leider nicht so, denn in deiner Konfiguration hattest du festgelegt, dass im Mobilfunknetz grundsätzlich keine VPN-Verbindung aufgebaut werden soll.
Da ich zu Hause aber ein Synology-NAS betreibe und hin und wieder auch von unterwegs, ohne WLAN auf meine Dateien zugreifen will, musste ich das exportiere File noch ergänzen bzw. einen Teil darin ersetzen.
Vielleicht willst du das noch in deinem Artikel ergänzen. Das könnte für andere sicher auch sehr hilfreich sein.

Hier ist meine Ergänzung:

Action
EvaluateConnection
ActionParameters

Domains

192.168.200.1
192.168.200.5
192.168.200.36
192.168.200.188
192.168.200.225
fritz.box

DomainAction
ConnectIfNeeded

Sie ersetzt folgenden Part:


InterfaceTypeMatch
Cellular
Action
Disconnect

    Diak · 5. Dezember 2021 um 20:56

    Hallo Veit, könntest du vielleicht deine Ergänzung für mich Dummi mit den erforderlichen Ergänzungen „key, array, string“ versehen? ich bekomme es so nicht hin…
    Dankeschön im Voraus.
    diak

      diak · 6. Dezember 2021 um 21:20

      Ich antworte mir mal selbst, habs doch hingekriegt:
      so funktioniert es bei mir:Action
      EvaluateConnection
      ActionParameters

      Domains

      *.local
      *.fritz.box
      fritz.box

      DomainAction
      ConnectIfNeeded

      Wenn ich die Netzwerkgeräte dann z.B. über den Namen mit *.fritz.box aufrufe, schaltet sich das VPN ein.

      Danke für die Anleitung!
      diak

Nik · 28. Juni 2021 um 19:44

Vielen Dank für die Anleitung.

Kann der Beitrag ev noch um folgende Fragestellungen und Anregungen ergänzt werden?

Weshalb lässt sich dieses Profil in den Systemeinstellungen von macOS (zT?) nicht mehr löschen (Minuszeichenn ausgegraut)?

Weshalb sehe ich nach aufgebauter VPN-Verbindung trotzdem die Geräte im lokalen Netz und nicht diejenigen am Zielort des VPN?

Gibt es eine Möglichkeit, sämtlichen lokalen Verbindungen auszuschliessen (ich werde nicht gesehen und sehe auch niemanden)?

Allerdings kann es wichtig sein, dass ich mein 2. Gerät oder zB einen Drucker im lokalen Netz sehen kann. Gibt es eine Lösung für dieses Dilemma?

In Zusammenhang mit der Frage „minus grau“ wäre ev noch gut zu erwähnen …

… dass die mobileconfig-Datei etwas durcheinander gerät, wenn sie nach dem Ergänzen in TextEdit nochmals mit Apple Configurator 2 geöffnet wird – und klarzustellen ob das ein Problem ist.

… dass das Profil überschrieben werden kann, indem der PayloadIdentifier des alten Profils übernommen wird (zB wenn die VPN-Verbindung wegen eines Fehlers in den Einstellungen nicht funktioniert hat).

    Simone · 11. Juli 2021 um 11:07

    Das mit dem Nicht-löschen können kann ich hier nicht nachvollziehen.

    Wenn du das so gemacht hast, wie ich es beschreiben habe, den wird das VPN ja im heimeichen WLN überhaupt nicht aktiviert, so dass du natürlich nach wie vor deine Geräte im lokalen Netz siehst und nicht die remote Geräte.

    Ich wüsste auch keine Möglichkeit, wie du im lokalen Netz nicht gesehen werden kannst, solange du es nutzt. Dein Router gibt ja in jedem Fall immer deinem Gerät eine IP und daher sieht das natürlich auch jedes andere Gerät im LAN, vollkommen unabhängig von VPN.

    Und nein, das Dilemma ist nicht aufzulösen. Jedenfalls fällt mir keine Lösung dazu ein.

Michael · 9. Oktober 2023 um 15:15

Super Anleitung!
Funktioniert auch mit dem aktuellen MacBookAir.

Schreibe einen Kommentar

Avatar-Platzhalter

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

Bitte löse die kleine Aufgabe, um den Kommentar abzuschicken. *