Libertine dà a Ubuntu Touch una VPN per tutto il telefono?
Un pacchetto desktop in un contenitore risponde a una domanda diversa da quella di un tunnel per tutto il telefono. Seguite dove vivono rete, identità e politica degli errori.
Su Ubuntu Touch due domande vengono poste come una sola: questo pacchetto desktop funzionerà, e il telefono avrà una VPN. Il contenitore risponde alla prima. Nulla al suo interno risponde alla seconda, perché un contenitore ha la propria visione del file system, mentre lo stack di rete e la sua politica appartengono al telefono. Seguite dove vive ogni pezzo prima di promettere un flusso di lavoro.
Due domande che sembrano una
Eseguire un'applicazione desktop dentro un contenitore è un risultato di impacchettamento. Far sì che il gestore delle connessioni del telefono stabilisca un tunnel, lo mantenga attraverso la sospensione e decida cosa succede quando cade è lavoro di piattaforma. Un programma di installazione che si completa nel contenitore dimostra solo che lì le dipendenze sono state risolte. Non dice nulla sulla presenza di un plugin VPN approvato sul telefono, sulla sopravvivenza del tunnel a un riavvio o su quali applicazioni lo usano.
Tenete le due cose in frasi separate in qualsiasi valutazione. Fonderle è il modo in cui una dimostrazione di laboratorio diventa un impegno di assistenza che nessuno può onorare.
Che cosa fornisce davvero il confine del contenitore
Un contenitore Libertine è un ambiente scrivibile sovrapposto a un telefono il cui sistema di base è in sola lettura. È per questo che installarvi un pacchetto funziona affatto, e per questo che la stessa installazione sul sistema di base non funziona. Esegue inoltre le applicazioni in primo piano, integrate con lo schermo del telefono, ed esplicitamente non è un modo per eseguire software server o mantenere vivo un processo in background. Questi vincoli contano per un client VPN, che si prevede resti attivo.
libertine-container-manager list
libertine-container-manager info -i <container-id>
libertine-launch -i <container-id> bash
L'elenco mostra quali contenitori esistono, e il comando info riporta la distribuzione e lo stato di installazione. Il comando launch vi dà una shell all'interno, ed è il posto giusto per ispezionare che cosa ha installato davvero il pacchetto. Ciò che non vi dà è autorità sulla rete del telefono. Un binario dentro il contenitore che vuole creare un tunnel ha bisogno di un'interfaccia privilegiata, e quell'interfaccia appartiene alla piattaforma, non al contenitore.
Dove vive lo stato di rete del telefono
Nomi, route e profili di connessione sono gestiti dal servizio di rete del telefono, fuori da qualsiasi contenitore. Una voce di tunnel appare lì solo quando la piattaforma supporta quel tipo di VPN e l'operatore ha installato il plugin corrispondente.
nmcli connection show
ip route get 10.42.0.10
ip -br addr show
L'elenco delle connessioni è la risposta autorevole alla domanda se esista un profilo VPN su questo telefono. Se il vostro tunnel manca da quell'elenco, nessuna quantità di lavoro dentro il contenitore lo farà comparire. La ricerca della route risponde a una domanda più stretta: quale interfaccia userebbe questo telefono per una destinazione. È il controllo da ripetere dopo ogni modifica, perché un profilo può esistere e tuttavia non essere il percorso che un'applicazione data prende.
Leggete un flusso di lavoro dall'inizio alla fine
Scegliete il compito reale, come raggiungere un database privato con un client desktop. Poi seguite il flusso: l'applicazione parte nel contenitore, risolve il nome host tramite il resolver che il telefono usa, apre un socket, e l'instradamento del telefono decide quale interfaccia lo porta. Ogni passo ha un proprietario. Il contenitore possiede l'applicazione, la piattaforma possiede il resolver e l'instradamento, e l'endpoint VPN possiede l'autenticazione. Un guasto a un passo è un guasto di quel passo, non dell'idea intera.
Provate separatamente il nome host privato e l'indirizzo privato. Un nome che risolve in un indirizzo pubblico e un indirizzo che viene instradato in un tunnel sono osservazioni diverse, e confonderle produce un resoconto che non si può riprodurre.
Che cosa registrare quando la risposta è no
A volte la conclusione onesta è che questo telefono, su questa versione, non possa portare il flusso di lavoro. Scrivetele con le prove: quali tipi di connessione offre la piattaforma, quali client sono stati provati e a quale passo si è fallito.
Poi indicate l'alternativa accettata, che sia un altro dispositivo, un altro metodo di accesso o un compito più stretto che resta dentro il contenitore senza toccare reti private.
Resistete alla tentazione di rimontare il sistema di base o di concedere privilegi inspiegati per riprodurre una vecchia ricetta. Un telefono che si avvia non è la stessa cosa di un telefono di cui potete ancora ragionare sulla politica di rete sei mesi dopo.