Scorciatoia VPN di NetworkManager: connettere e disconnettere separatamente
Assegna due scorciatoie a un'unica VPN salvata in NetworkManager invece di un interruttore. Collega l’UUID, tieni visibile la richiesta di autenticazione e verifica che sia pronta.
Due scorciatoie eliminano le incertezze che un singolo interruttore VPN deve gestire: una connette sempre, l’altra disconnette sempre. Due scorciatoie eliminano l’ambiguità: una chiede sempre una connessione, l’altra chiede sempre una disconnessione. Entrambe puntano allo stesso profilo salvato tramite il suo UUID.
Segui la procedura nell’ordine indicato qui sotto. Prova ogni comando in un terminale prima di associarlo a una scorciatoia, perché una scorciatoia è un pessimo posto per scoprire un prompt che non riesci a vedere.
Trova l’UUID, non il nome del profilo
Elenca le connessioni salvate nella tua normale sessione desktop e copia l’UUID della VPN desiderata. Il nome è per le persone; due profili salvati possono condividerne uno, e un profilo eliminato e reimportato riceve un nuovo identificatore.
nmcli connection show
nmcli connection show "Office VPN" | grep -i uuid
Mantieni l’UUID nella definizione della scorciatoia invece del nome visualizzato. Se il profilo viene sostituito in seguito, aggiorna entrambe le scorciatoie insieme, perché un identificatore obsoleto produce un’azione Connetti che fallisce mentre Disconnetti punta ancora al vecchio oggetto. Ecco perché entrambe le azioni usano lo stesso valore. Considera l’UUID come l’identità del profilo.
Verifica che il profilo sia una VPN di NetworkManager e non un demone di un fornitore con un proprio servizio. Un client del fornitore ha bisogno della propria interfaccia di controllo supportata; nmcli non gestirà un tunnel che non possiede. Controlla il tipo di connessione se il nome è ambiguo. Un tunnel gestito da un altro demone non apparirà nello stesso elenco.
Prova prima entrambi i comandi in un terminale
Richiedi la connessione in modo interattivo, completa l’accesso approvato e raggiungi una risorsa privata di cui hai davvero bisogno. Poi disconnetti con il comando corrispondente e verifica che la VPN si chiuda senza portarsi via il collegamento Wi-Fi o Ethernet sottostante.
nmcli --ask connection up uuid 11111111-2222-4333-8444-555555555555
nmcli connection down uuid 11111111-2222-4333-8444-555555555555
Eseguili come due azioni separate. Cambiano lo stato della connessione; non eliminano il profilo né modificano le sue impostazioni. Conserva l’output del terminale della prima esecuzione per sapere com’è una normale sequenza di prompt. Quella registrazione rende prevedibile il comportamento della scorciatoia.
Non provare la disconnessione attraverso il tuo unico percorso di amministrazione remota. Se la VPN trasporta la tua sessione, una disconnessione riuscita termina anche il tuo accesso, e il ripristino richiede un percorso che non dipenda dal tunnel. Tieni disponibile una console locale o un secondo collegamento.
Associa due scorciatoie con nome allo stesso UUID
Nelle impostazioni della tastiera del desktop, crea due azioni dai nomi chiari, per esempio Connetti VPN ufficio e Disconnetti VPN ufficio. Assegna combinazioni di tasti diverse e incolla l’UUID verificato in entrambi i comandi.
Denominale in base all’intento anziché allo stato. Una scorciatoia chiamata Attiva/disattiva rende imprevedibile la pressione successiva; Connetti e Disconnetti descrivono esattamente ciò che verrà richiesto. Questo rende l’elenco delle scorciatoie autoesplicativo. Una pressione sbagliata fa comunque qualcosa di prevedibile.
Se il desktop usa lanciatori desktop-entry, ricorda che un lanciatore non assegna automaticamente un terminale. Un comando che richiede input interattivo resterà in attesa dove nessuno può rispondere.
Metti il prompt di autenticazione dove puoi vederlo
Senza --ask, nmcli chiede a un agente dei segreti in esecuzione le credenziali mancanti. Questo è il percorso giusto quando il desktop gestisce già l’autenticazione di questa VPN e l’agente può mostrare il proprio prompt. Prova il semplice comando Connetti direttamente dalla scorciatoia prima di dare per scontato che funzioni.
Se la VPN richiede interazione da terminale, configura la scorciatoia per aprire l’applicazione terminale del desktop ed eseguire lì il comando interattivo. Gli argomenti di avvio variano tra le applicazioni terminale, quindi usa la forma documentata di quella installata.
Per una voce desktop, Terminal=true richiede una finestra di terminale e Terminal=false non lo fa. Nessuna delle due impostazioni è un motivo per mettere una password nella riga di comando, concedere sudo senza password o aggirare la politica di autenticazione dell’organizzazione.
Verifica che sia pronta dopo la pressione del tasto
Una pressione del tasto significa che hai richiesto l’attivazione. Non dimostra che l’autenticazione sia terminata, che le rotte siano state installate o che il DNS privato risponda. Controlla lo stato della connessione e poi l’effettiva risorsa privata.
Leggi lo stato tramite il client proprietario invece di confrontare una frase tradotta. Il testo leggibile cambia con la lingua e una macchina può avere più di una VPN, quindi una corrispondenza di stringhe può indicare il profilo sbagliato o perdere uno stato transitorio.
Se un’altra automazione riconnette la VPN, riconciliala con la scorciatoia Disconnetti. Due titolari che si annullano a vicenda producono una connessione che sembra ignorare la pressione del tasto, quando il vero problema è una politica in conflitto.
Annota l’UUID, entrambi i comandi e il controllo di prontezza nelle tue note. La prossima sostituzione del profilo o l’aggiornamento del desktop sono molto più facili da diagnosticare quando l’identificatore e il percorso del prompt previsto sono già scritti.