Das Entfernen eines VPN auf macOS sieht wie eine Aktion aus und ist tatsächlich mindestens vier. Die Schaltfläche in den Systemeinstellungen löscht einen Netzwerkdienst aus dem Systemspeicher für Konfigurationen. Sie löscht nicht die Client-App, die Netzwerkerweiterung, die diese App installiert hat, den Zugangsschlüssel im Schlüsselbund und auch nicht ein von der Geräteverwaltung verteiltes Profil. Zu wissen, welches Objekt jedes Symptom besitzt, verhindert, dass ein entferntes VPN unbemerkt zurückkehrt.

Was die Schaltfläche „Konfiguration entfernen“ tatsächlich löscht

Jedes VPN, das Sie hinzufügen, wird zu einem Netzwerkdienst, derselben Art von Objekt wie Wi-Fi oder Thunderbolt Bridge. macOS hält alle in /Library/Preferences/SystemConfiguration/preferences.plist, jeweils mit Dienst-ID, Anzeigename und einem Konfigurationswörterbuch, das den Tunneltyp, die Serveradresse und den Start des Tunnels beschreibt.

Wenn Sie Systemeinstellungen, VPN öffnen, die Informationsschaltfläche neben einem Dienst anklicken, Konfiguration entfernen wählen und bestätigen, stoppt macOS den Tunnel, löscht dieses Dienstobjekt und schreibt den Speicher neu. Der Abbau ist vollständig für das, was das System besitzt: Der Dienst ist aus der Liste verschwunden, und nichts startet ihn bei der Anmeldung.

Was die Schaltfläche nicht erreicht, ist alles, was ein anderes Subsystem besitzt. Das App-Bundle liegt in /Applications. Ein NetworkExtension-Client läuft als Systemerweiterung, die getrennt von ihrer Konfiguration registriert ist. Zugangsdaten sind Schlüsselbund-Einträge mit den Zugriffsregeln des Schlüsselbunds, der sie hält. Ein Konfigurationsprofil gehört dem Profilsystem. Entfernen Sie den Dienst, und alle vier bleiben genau, wo sie waren.

Listen Sie auf, was der Mac noch für installiert hält

Machen Sie eine Bestandsaufnahme, bevor Sie etwas löschen. Drei Befehle decken die drei Ebenen ab, die denselben sichtbaren Fehler erzeugen:

scutil --nc list
networksetup -listallnetworkservices
profiles -P

scutil --nc list ist die maßgebliche Ansicht der VPN-Konfigurationen mit Verbindungsstatus, Dienstname und Dienst-ID. Sie zeigt oft Einträge, die nie in der Liste der Einstellungen erscheinen: übrig gebliebene Dienste eines Clients, den Sie vor Monaten deinstalliert haben, und bedarfsgesteuerte Konfigurationen, die still starten. networksetup -listallnetworkservices zeigt die Netzwerkdienste unter den Namen, welche die Befehlszeilenwerkzeuge erwarten, was Sie zum Entfernen nach Namen brauchen. profiles -P listet installierte Konfigurationsprofile auf; auf einem verwalteten Mac ist das VPN vielleicht gar kein von Ihnen hinzugefügter Dienst, sondern eine Nutzlast in einem dieser Profile.

Lesen Sie die Listen zusammen, statt der ersten zu vertrauen. Ein Dienst in scutil, aber nicht in den Einstellungen, bedeutet meist, dass ein Drittanbieter-Client den Tunnel besitzt und ihn in seinem eigenen Fenster zeigt. Ein Dienst in beiden Ansichten, der in den Einstellungen ausgegraut ist, bedeutet Richtlinie. Ein Name, der nach dem Löschen wieder auftaucht, bedeutet, dass etwas ihn neu erzeugt, und dieses Etwas ist das eigentliche Ziel.

Entfernen Sie den Dienst über seinen Eigentümer

Für einen Dienst, den Sie selbst hinzugefügt haben, bleiben Sie auf dem dokumentierten Weg: Systemeinstellungen, VPN, die Informationsschaltfläche, Konfiguration entfernen. Apple dokumentiert diesen Ablauf, und er hält den Konfigurationsspeicher konsistent. preferences.plist von Hand zu bearbeiten, während der Netzwerk-Stack läuft, führt zu doppelten oder Zombie-Diensten, die keine Oberfläche entfernt.

Entfernen Sie den Dienst im Terminal nach Namen mit networksetup -removenetworkservice "Service Name" und bestätigen Sie dann mit scutil --nc list. Der Befehl wirkt auf dieselbe Dienstliste wie die Oberfläche, daher wird ein Name, der nicht in networksetup -listallnetworkservices erscheint, auf keinem der beiden Wege entfernt. Wenn ein Client den Tunnel besitzt, nutzen Sie zuerst dessen Entfernungs- oder Deinstallationsweg, weil der Client den Dienst beim nächsten Start neu aufbaut.

Wenn das VPN aus der Geräteverwaltung stammt, sind Sie nicht der Eigentümer. Von MDM installierte Profile können als nicht entfernbar markiert sein, und selbst ein entfernbares kann beim nächsten Check-in erneut verteilt werden. Bestätigen Sie mit profiles -P und nutzen Sie dann den Offboarding-Prozess Ihrer Organisation. Das lokale Löschen der Nutzlast schlägt entweder fehl oder löst eine Neuinstallation aus.

Die Reste, die sich ohne Dienst neu verbinden

Der übliche Bericht „es ist zurück“ betrifft nicht den zurückkehrenden Dienst, sondern die Erweiterung, die ihn besitzt. Listen Sie registrierte Systemerweiterungen und App-Erweiterungen für Netzwerkerweiterungen auf:

systemextensionsctl list
pluginkit -m -p com.apple.networkextension.packet-tunnel

Ein NetworkExtension-Client hält seinen Tunnelanbieter unter seiner eigenen Kennung installiert, getrennt von jeder Konfiguration. Die Erweiterung kann aktiv bleiben, nachdem die Konfiguration weg ist, und der Menüleisten-Agent des Clients kann beim nächsten Start eine neue Konfiguration anlegen, manchmal unter Wiederverwendung des Namens, den Sie gerade gelöscht haben. Prüfen Sie Anmeldeobjekte und den Helfer des Herstellers in /Library/LaunchDaemons, bevor Sie schließen, dass das Entfernen fehlgeschlagen ist.

Zugangsdaten sind der zweite Rest. Ein gespeichertes Passwort oder Client-Zertifikat im Anmeldeschlüsselbund wird nicht mit dem Dienst gelöscht, und ein IPSec-Shared Secret lebt historisch im Systemschlüsselbund, weshalb Entfernen und erneutes Hinzufügen manchmal die Passwortabfrage überspringt. Wenn der Mac Ihre Kontrolle verlässt, suchen Sie den Eintrag in der Schlüsselbundverwaltung über den Dienstnamen und widerrufen Sie das Konto, Zertifikat oder den Peer-Schlüssel, den die gespeicherten Zugangsdaten repräsentieren. Eine kopierte Konfigurationsdatei ist auch nach lokalem Entfernen ein gültiger Zugangsschlüssel.

Überprüfen Sie das Entfernen und lesen Sie ein zurückkehrendes Profil richtig

Das Entfernen ist abgeschlossen, wenn der Dienst aus beiden Ansichten verschwunden ist und nach einem Neustart verschwunden bleibt. Prüfen Sie scutil --nc list auf die Dienst-ID, bestätigen Sie mit scutil --dns, dass die Namensauflösung den erwarteten Resolver nutzt, und starten Sie dann einmal neu, denn bedarfsgesteuerte Regeln und Anmeldeagenten sind die zwei Dinge, die sich nur bei einem frischen Start zeigen.

Wenn er noch da ist, löschen Sie keine weiteren Objekte. Finden Sie heraus, welche Ebene ihn neu erzeugt hat: Ein MDM-Profil verteilt den Dienst erneut, ein Client-Agent baut ihn neu auf, oder der Dienst wurde nie entfernt, weil der Name nicht passte. Diese Antwort entscheidet, ob Sie den Deinstaller des Herstellers, Ihr IT-Team oder einen weiteren Durchlauf durch denselben Entfernen-Dialog brauchen. Apples Anleitung zum Entfernen deckt den unterstützten Weg für Dienste ab, die Sie hinzugefügt haben; die Reste sind der Teil, den Sie selbst prüfen müssen: eine VPN-Konfiguration entfernen.

Ähnliche Artikel