VPN-Autoverbindung abschalten, ohne das Profil zu löschen
NetworkManager verbindet VPN-Profile nicht von selbst. Der Auslöser ist ein secondaries-Eintrag an der Basisverbindung, und genau der muss geändert werden.
Bei jedem Start kommt der Tunnel hoch, bevor jemand entschieden hat, ihn zu nutzen, und das Kontrollkästchen, das verantwortlich aussieht, bewirkt beim Leeren nichts. Das ist kein Fehler der Oberfläche. NetworkManager verbindet VPN-Profile nicht von selbst; ein VPN wird gestartet, weil eine Basisverbindung es benennt. Die Korrektur sitzt am anderen Profil, und sie ist eine einzige Eigenschaft.
Das Kennzeichen, das Sie leeren, wird nicht ausgewertet
Das VPN-Profil hat eine eigene Autoverbindungs-Eigenschaft, und für VPN-Verbindungen nutzt der Manager sie nicht, um etwas zu starten. Sie zu leeren lässt das Profil konsistent lesen und ändert kein Verhalten, und genau deshalb überlebt die Überraschung die Bearbeitung.
Der dokumentierte Mechanismus ist eine Liste sekundärer Verbindungen am Basisprofil. Wenn die Wi-Fi- oder Ethernet-Verbindung aktiviert wird, aktiviert der Manager auch die dort aufgeführten VPN-UUIDs. In dieser Liste werden heute nur VPN-Verbindungen unterstützt, und enthält sie mehrere Einträge, betrifft eine Änderung alle davon.
Die Autoverbindungspriorität ordnet Kandidaten; auch sie ist kein Ausschalter.
Lesen Sie beide Profile vor der Bearbeitung
Notieren Sie zuerst Namen, UUIDs und Typen, denn Anzeigenamen wiederholen sich, und die Basisverbindung ist leicht mit dem VPN zu verwechseln. Lesen Sie dann die Eigenschaften, auf die es auf jeder Seite ankommt.
nmcli -f NAME,UUID,TYPE connection show
nmcli -f connection.secondaries connection show "Wired connection 1"
nmcli -f connection.autoconnect,connection.autoconnect-priority connection show "Work VPN"
Im grafischen Editor erscheinen dieselben Werte unter anderen Bezeichnungen. Der Reiter General der Basisverbindung enthält die Einstellung für automatische Verbindung und, wenn das Plugin installiert ist, die Option, ein VPN damit hochzubringen. Ein übersetzter Desktop kann das Prioritätsfeld als automatische Verbindung mit Priorität bezeichnen, was nicht der Einschalter ist. Verwechselt man beides, erhält man ein leeres Kontrollkästchen und einen unveränderten Start.
Entfernen Sie einen Eintrag, nicht die ganze Liste
Die Eigenschaft ist eine Liste, daher ersetzt das Zuweisen eines neuen Werts alles darin. Nutzen Sie das führende Minus, um eine einzelne UUID zu entfernen und den Rest der Liste unangetastet zu lassen.
nmcli connection modify uuid BASE_UUID -connection.secondaries VPN_UUID
nmcli -f connection.secondaries connection show "Wired connection 1"
Prüfen Sie die Liste vorher und nachher, besonders auf einer Maschine, die von einem zweiten VPN abhängt.
Profile können auf bestimmte Benutzer beschränkt werden. Ist das der Fall, muss das Konto, von dem aus Sie bearbeiten, in dieser Liste stehen; sonst kann der Befehl abgelehnt werden, oder der Manager schreibt ein separates Profil je Benutzer, das der ursprüngliche Eigentümer nie sieht. Prüfen Sie den Eigentümer, bevor Sie schließen, dass eine Bearbeitung nichts bewirkt hat, denn eine stille Kopie je Benutzer erklärt viele verwirrende Ergebnisse.
Testen Sie einen echten Übergang, keinen manuellen Neustart
Die Basisverbindung neu zu verbinden ist der aussagekräftige Test. Bringen Sie sie herunter und wieder hoch oder starten Sie neu, und sehen Sie dann auf die aktive Liste, die Schnittstellenliste und eine Routenabfrage für eine interne Adresse.
nmcli connection show --active
ip -brief address
ip route get 10.8.0.1
Erscheint der Tunnel weiterhin, ist der verbleibende Verursacher meist ein Skript. Das Journal des Managers zeigt, welches Profil wann aktiviert wurde, und das dispatcher-Verzeichnis ist der Ort, an dem ein Hook läge, der bei einem Schnittstellenereignis nmcli connection up aufruft. Ein Hook ist im Profil-Editor unsichtbar, und deshalb übersteht er jedes Kontrollkästchen-Experiment.
Halten Sie den manuellen Weg funktionsfähig, denn das ist die eigentliche Anforderung.
Wie ein gutes Ergebnis aussieht
Das Profil bleibt installiert, mit seinem Gateway, seinem Zertifikat und seinen Zugangsdaten. Es aktiviert sich nicht beim Start und kommt hoch, wenn Sie es verlangen. Diese drei Aussagen sind der Abnahmetest.
Schreiben Sie die UUID der Basisverbindung ins Runbook, denn das ist das Profil, das Sie nächstes Mal bearbeiten.
Ein VPN, das verfügbar, aber nicht automatisch ist, ist eine Konfigurationsentscheidung statt einer fehlenden Funktion, und es ist eine Eigenschaft entfernt.