Android-VPN-Profil: Finden Sie den Eigentümer, bevor Sie es bearbeiten
Die VPN-Zeile des Systems verbirgt die App, der Endpunkt, Routen und Schlüssel gehören. Bestimmen Sie den Eigentümer und vergleichen Sie dann den angeforderten, empfangenen und angewendeten Zustand.
Der Android-VPN-Bildschirm zeigt eine Zeile mit einem Namen, einem Schlüsselsymbol und vielleicht einem Immer-an-Schalter. Er zeigt selten den Endpunkt, die Routenrichtlinie, die DNS-Server oder die Anmeldedaten, die die Verbindung ermöglichen, denn bei einem appbasierten Tunnel gehören diese der App. Die praktische Folge ist eine Runbook-Frage, keine philosophische: Bevor Sie eine heruntergeladene Datei bearbeiten oder nach einem zentralen Profilspeicher suchen, finden Sie heraus, welche Komponente die Einstellung besitzt, die Sie ändern möchten.
Bestimmen Sie zuerst den Verbindungstyp
Auf demselben Einstellungsbildschirm gibt es mindestens drei Anordnungen. Eine App kann VpnService nutzen, um eine virtuelle Schnittstelle aufzubauen und das Protokoll sowie die private Konfiguration zu besitzen, einschließlich einer lokalen Filter-App ohne entfernten Ausgang. Android kann außerdem ein Plattform-IKEv2-Profil über Ikev2VpnProfile bereitstellen, verfügbar ab API 30, wobei die Plattform mehr vom Profil hält. Und eine Anbieter-App kann ihre eigene Serverliste anzeigen und Einstellungen intern zusammenstellen.
adb shell dumpsys connectivity | grep -i -A12 "VPN"
adb shell cmd connectivity list-owners 2>/dev/null || true
Der erste Befehl zeigt das aktive VPN-Netzwerk und seine Linkeigenschaften, also den angewendeten Zustand. Wenn die Zeile ein Paket nennt, das Sie kennen, beginnen Sie mit der Profilansicht dieser App statt mit dem Systembildschirm.
Notieren Sie Eigentümer und Profilumfang
Notieren Sie vier Fakten, bevor Sie etwas ändern: das besitzende Paket, ob die Verbindung im persönlichen Profil oder im Arbeitsprofil liegt, den Profil- oder Verbindungsnamen, wie die App ihn anzeigt, und wer sie verwaltet. Ein Geräteeigentümer kann ein Arbeitsprofil-VPN bereitstellen, das ein Nutzer des persönlichen Profils nicht bearbeiten kann, und dieselbe zweimal installierte App ergibt zwei unabhängige Eigentümer.
Dieser Schritt verhindert die häufigste verlorene Stunde, nämlich ein Profil zu bearbeiten, das nicht das verbundene ist. Apps halten oft mehrere Profile, und das aktive ist eine Eigenschaft der App, nicht der Android-Zeile.
Vergleichen Sie angeforderten, empfangenen und angewendeten Zustand
Das sind drei verschiedene Phasen, und eine Abweichung zwischen ihnen sagt Ihnen, welche Komponente zu reparieren ist.
| Stage | Where to look | What it proves |
|---|---|---|
| Requested | The app's profile editor or imported file | What the owner intends to use |
| Received | Sanitized app log of server-supplied options | What the peer actually pushed |
| Applied | Link properties and routes after connect | What the device is really using |
Die angewendete Phase ist die, die Sie beobachten können, ohne irgendjemandes Protokoll zu vertrauen. Vergleichen Sie die DNS-Server und Routen in den Eigenschaften des aktiven Links mit denen, die das Profil behauptet; weichen sie ab, hat der Server etwas gesendet oder die App eine Richtlinie angewendet, die Sie nicht erwartet haben.
adb shell ip addr show tun0
adb shell ip route show table all | head -40
Schnittstellennamen unterscheiden sich zwischen Apps, listen Sie daher zuerst die Schnittstellen auf und lesen Sie die, die beim Verbinden des Tunnels erschien. Eine Route, die im Editor der App steht, hier aber fehlt, wurde nie angewendet; eine Route, die hier steht, im Editor aber fehlt, kam von woanders.
Bearbeiten Sie das Artefakt, das der Eigentümer tatsächlich liest
Bei einem importierten OpenVPN-Profil hält die App normalerweise eine eigene Kopie. Die ursprünglich heruntergeladene Datei später zu bearbeiten ändert die nächste Verbindung nicht; nutzen Sie den dokumentierten Editor der App oder importieren Sie erneut und bestätigen Sie, welches Profil jetzt aktiv ist. Das ist der Unterschied zwischen einer Datei ändern und eine Konfiguration ändern.
Anbieter-Apps stellen Einstellungen oft aus einer Serverliste zusammen, statt eine vom Nutzer bearbeitbare Datei zu schreiben. Das Fehlen einer Export-Schaltfläche ist kein Beweis, dass das VPN gefälscht ist, und eine exportierte Datei kann gerätegebundene Schlüssel oder Registrierungsmaterial auslassen, das ein anderes Gerät bräuchte. Behandeln Sie Export und Import als getrennte Vorgänge mit eigenen Voraussetzungen.
Schreiben Sie die Support-Notiz, ohne Geheimnisse preiszugeben
Eine nützliche Notiz nennt die genaue App und das Profil, die Einstellung, die falsch erscheint, und die Belege aus jeder Phase. Zum Beispiel: Dieses Profil erhält eine private DNS-Adresse vom Server, aber die vorgesehene Arbeits-App kann ihren Dienst nicht auflösen, und die angewendeten Linkeigenschaften zeigen diesen Resolver, während der Profil-Editor einen anderen zeigt.
Halten Sie Anmeldedaten aus der Notiz heraus. Das Gerät zu rooten, um im privaten Speicher der App zu suchen, ist nicht nötig, um den Eigentümer zu bestimmen, und ein geratener Pfad zum Datenverzeichnis ist keine unterstützte Schnittstelle. Wenn die Antwort Bytes braucht, die nur die App sieht, bitten Sie den Eigentümer um einen Diagnose-Export, statt einen zu improvisieren.
Wenn die Arbeit erledigt ist, schließen Sie den Kreis: Bestätigen Sie den Namen des aktiven Profils, lesen Sie den angewendeten Zustand erneut und trennen Sie einmal die Verbindung, um zu prüfen, ob die Änderung ein erneutes Verbinden übersteht. Eine Einstellung, die nur im Editor existiert, ist nicht ausgerollt.