Slå av VPN-autotilkobling uten å slette profilen
NetworkManager kobler ikke til VPN-profiler på egen hånd. Utløseren er en secondaries-oppføring på basisforbindelsen, og det er den som skal endres.
For hver oppstart dukker tunnelen opp før noen har tatt stilling til å bruke den, og avkrysningsboksen som virker ansvarlig gjør ingenting når den fjernes. Dette er ikke en feil i grensesnittet. NetworkManager kobler ikke til VPN-profiler på egen hånd; en VPN starter fordi en basisforbindelse peker på den ved navn. Rettelsen ligger på den andre profilen, og den består av én egenskap.
Flagget du fjerner blir ikke lest
VPN-profilen har sin egen egenskap for automatisk tilkobling, og for VPN-forbindelser bruker ikke behandleren den til å starte noe som helst. Å fjerne den gjør at profilen leses likt hver gang og endrer ingen oppførsel, og nettopp derfor varer overraskelsen etter at du har redigert.
Den dokumenterte mekanismen er en liste over sekundære forbindelser på basisprofilen. Når Wi-Fi- eller Ethernet-forbindelsen slås på, slår behandleren også på VPN-UUID-ene som er listet opp der. I dag er det bare VPN-forbindelser som støttes i den listen, og har den flere oppføringer, rammer én endring alle sammen.
Prioritet for automatisk tilkobling sorterer kandidatene; den er heller ikke noen av-knapp.
Les begge profilene før du redigerer
Skriv ned navn, UUID-er og typer først, siden viste navn går igjen og basisforbindelsen lett blandes med VPN-en. Deretter leser du egenskapene som teller på hver side.
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 grafiske editoren står de samme verdiene under andre etiketter. General-fanen på basisforbindelsen har innstillingen for automatisk tilkobling og, når utvidelsen er installert, valget om å heve en VPN sammen med den. Et oversatt skrivebord kan merke prioritetsfeltet som automatisk tilkobling med prioritet, og det er ikke på-knappen. Blir de to blandet, ender du med en fjernet avkrysning og en uendret oppstart.
Fjern én oppføring, ikke hele listen
Egenskapen er en liste, så når du tildeler en ny verdi, erstattes alt innholdet. Bruk minuset foran for å fjerne én enkelt UUID og la resten av listen stå urørt.
nmcli connection modify uuid BASE_UUID -connection.secondaries VPN_UUID
nmcli -f connection.secondaries connection show "Wired connection 1"
Sjekk listen før og etter, spesielt på en maskin som er avhengig av en andre VPN.
Profiler kan være begrenset til bestemte brukere. Når de er det, må kontoen du redigerer fra, finnes på den listen; hvis ikke kan kommandoen bli avvist, eller behandleren kan skrive en egen profil per bruker som den opprinnelige eieren aldri får se. Sjekk eieren før du konkluderer med at en endring ikke hadde noen virkning, for en stille kopi per bruker forklarer mange forvirrende resultater.
Test en virkelig overgang, ikke en manuell omstart
Å koble basisprofilen til på nytt er den testen som sier noe. Ta den ned og opp igjen, eller start maskinen på nytt, og se så på den aktive listen, grensesnittlisten og et ruteoppslag mot en intern adresse.
nmcli connection show --active
ip -brief address
ip route get 10.8.0.1
Dukker tunnelen fortsatt opp, er den gjenværende årsaken som regel et skript. Journalen til behandleren viser hvilken profil som ble slått på og når, og dispatcher-katalogen er der en krok som kaller nmcli connection up ved en grensesnitthendelse ville ligge. En krok er usynlig i profilredigereren, og derfor overlever den hvert eneste forsøk med avkrysningsboksen.
La den manuelle veien fortsette å virke, for det er det faktiske kravet.
Slik ser et godt resultat ut
Profilen ligger fortsatt installert med gateway, sertifikat og påloggingsdetaljer. Den slås ikke på ved oppstart, og den kommer opp når du ber om det. De tre setningene er aksepttesten.
Skriv UUID-en til basisforbindelsen inn i runbooken, for det er profilen du kommer til å redigere neste gang.
En VPN som er tilgjengelig, men ikke automatisk, er et konfigurasjonsvalg og ikke en manglende funksjon, og den er bare én egenskap unna.