Vid varje start kommer tunneln upp innan någon har bestämt sig för att använda den, och kryssrutan som ser ansvarig ut gör ingenting när den rensas. Det är inte ett fel i gränssnittet. NetworkManager ansluter inte VPN-profiler av sig själv; en VPN startas eftersom en basanslutning namnger den. Rättelsen sitter på den andra profilen, och den är en enda egenskap.

Flaggan du rensar läses inte

VPN-profilen har en egen egenskap för automatisk anslutning, och för VPN-anslutningar använder hanteraren den inte för att starta något. Att rensa den gör att profilen läses konsekvent och ändrar inget beteende, och det är just därför överraskningen överlever redigeringen.

Den dokumenterade mekanismen är en lista över sekundära anslutningar på basprofilen. När Wi-Fi- eller Ethernet-anslutningen aktiveras aktiverar hanteraren även de VPN-UUID:n som listas där. I dag stöds bara VPN-anslutningar i listan, och om den innehåller flera poster påverkar en ändring alla.

Prioritet för automatisk anslutning rangordnar kandidater; inte heller den är en avstängningsknapp.

Läs de två profilerna innan du redigerar

Anteckna namn, UUID:n och typer först, eftersom visade namn upprepas och basanslutningen lätt förväxlas med VPN:en. Läs sedan egenskaperna som spelar roll på varje sida.

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"

I den grafiska redigeraren visas samma värden under olika etiketter. Basanslutningens General-flik innehåller inställningen för automatisk anslutning och, när insticksprogrammet är installerat, alternativet att resa en VPN tillsammans med den. Ett översatt skrivbord kan kalla prioritetsfältet för automatisk anslutning med prioritet, vilket inte är på-knappen. Förväxlar man de två får man en rensad kryssruta och en oförändrad start.

Ta bort en post, inte hela listan

Egenskapen är en lista, så att tilldela ett nytt värde ersätter allt i den. Använd det inledande minustecknet för att ta bort ett enda UUID och lämna resten av listan intakt.

nmcli connection modify uuid BASE_UUID -connection.secondaries VPN_UUID
nmcli -f connection.secondaries connection show "Wired connection 1"

Kontrollera listan före och efter, särskilt på en maskin som är beroende av en andra VPN.

Profiler kan begränsas till vissa användare. När de är det måste kontot du redigerar från finnas i den listan; annars kan kommandot avvisas, eller hanteraren kan skriva en separat profil per användare som den ursprungliga ägaren aldrig ser. Kontrollera ägaren innan du drar slutsatsen att en ändring inte gjorde något, för en tyst kopia per användare förklarar många förvirrande resultat.

Testa en verklig övergång, inte en manuell omstart

Att återansluta basprofilen är det meningsfulla testet. Ta ner den och upp igen, eller starta om, och titta sedan på den aktiva listan, gränssnittslistan och en ruttuppslagning mot en intern adress.

nmcli connection show --active
ip -brief address
ip route get 10.8.0.1

Om tunneln fortfarande dyker upp är den kvarvarande ägaren oftast ett skript. Hanterarens journal visar vilken profil som aktiverades och när, och dispatcher-katalogen är platsen där en hook som anropar nmcli connection up vid en gränssnittshändelse skulle bo. En hook är osynlig i profilredigeraren, och därför överlever den varje kryssruteexperiment.

Håll den manuella vägen fungerande, för det är det egentliga kravet.

Hur ett bra resultat ser ut

Profilen ligger kvar installerad med sin gateway, sitt certifikat och sina inloggningsuppgifter. Den aktiveras inte vid start och den kommer upp när du ber om det. De tre påståendena är acceptanstestet.

Skriv basanslutningens UUID i runbooken, för det är profilen du redigerar nästa gång.

En VPN som är tillgänglig men inte automatisk är ett konfigurationsval och inte en saknad funktion, och den är en egenskap bort.

Relaterade artiklar