Apri il profilo nella console MDM, vedi IncludeAllNetworks selezionato e dai per scontato che ogni pacchetto di quel dispositivo entri ora nel tunnel. Lo schema di Apple stesso non lo promette. L’impostazione instrada il traffico attraverso la VPN con esclusioni: alcune sono interruttori opzionali, altre sono necessarie perché il sistema continui a funzionare. Il percorso qui sotto segue quel documento dal profilo verso l’esterno, quindi la prima cosa che leggi è l’impostazione stessa, non una cattura da un dispositivo che nessuno ha ancora identificato.

Due di queste esclusioni spiegano la maggior parte della confusione, ed entrambe riguardano il servizio cellulare.

Parti dal profilo gestito, non da una cattura

Apri lo schema del profilo VPN gestito e leggi la descrizione della proprietà prima di leggere qualsiasi registro dei pacchetti. Nota che la descrizione riguarda l’instradamento con esclusioni, non una garanzia di tunnel completo. Proprio quella singola frase decide come interpreterai tutto ciò che vedrai dopo.

Annota tre cose mentre sei nella console: l’identificatore del payload che porta l’impostazione, la versione gestita del sistema operativo sul dispositivo e quale implementazione VPN è realmente installata. Il fatto che una chiave sia descritta nella documentazione non dice nulla sulla domanda se un client di terze parti la esponga nella propria interfaccia di configurazione.

Leggi l’esclusione cellulare come due casi distinti

Nelle configurazioni supportate, ExcludeCellularServices esclude il traffico dei servizi cellulari instradabile su internet, ma solo quando è abilitato accanto a IncludeAllNetworks. Lo schema cita Wi-Fi Calling, IMS e i servizi legati alla messaggistica come esempi di quella categoria. Quei flussi possono uscire dal tunnel per progetto, e nessuna revisione del profilo li farà passare attraverso di esso finché l’esclusione è attiva.

Il secondo caso è separato e non dipende da alcun interruttore. Alcuni operatori forniscono i servizi cellulari direttamente sulla propria rete anziché su internet, e Apple documenta quella categoria come sempre esclusa dal tunnel. Non è il caso condizionale instradabile su internet qui sopra, quindi un profilo che svuota ogni casella di esclusione non lo catturerà comunque. Trattare i due come un’unica funzionalità è il punto in cui iniziano la maggior parte delle discussioni su una fuga.

Se il tuo requisito è letteralmente che nessun pacchetto lasci mai il tunnel, questo secondo caso rende già impossibile quel requisito su un dispositivo cellulare. Devi saperlo prima della revisione del progetto, non dopo.

Verifica quali chiavi espone davvero la tua piattaforma

Lo schema descrive anche il traffico necessario di connessione di rete e delle reti captive, oltre a controlli separati per altre categorie come reti locali e comunicazione fra dispositivi. Sono relazioni di configurazione documentate, non osservazioni del tuo dispositivo. Conferma ciascuna rispetto alla versione del sistema operativo che gestisci, perché la disponibilità cambia tra le versioni e una chiave di profilo ignorata in silenzio appare esattamente come una che fa il suo lavoro.

Un payload minimo per questa decisione di solito appare così, con il flag cellulare esplicito invece che ereditato da un modello:

<key>IncludeAllNetworks</key><true/>
<key>ExcludeCellularServices</key><true/>
<key>ExcludeLocalNetworks</key><true/>

Se manca una chiave nel profilo consegnato, il dispositivo torna al valore predefinito di quella chiave, che non è necessariamente il valore che l’autore del modello aveva in mente. Confronta il payload consegnato con il modello invece di leggere solo il modello.

Stabilisci cos’è un nome host sconosciuto

Quando compare un nome sospetto, stabilisci cosa rappresenta davvero l’osservazione: un nome richiesto dal sistema, il resolver che ha risposto, una destinazione di connessione o un’etichetta stampata da uno strumento. Un nome legato all’operatore non identifica da solo né il processo di origine né l’eccezione applicata. Inseguirlo come prova di un aggiramento è il modo in cui un thread di supporto passa una settimana sul livello sbagliato.

Usa diagnostiche supportate e parla con l’amministratore che possiede il profilo, poi confronta il flusso con la politica prevista. È quel confronto, non il nome host, a dirti se il traffico era atteso.

Risolvi il requisito invece di indebolire il sistema

Non installare un certificato radice senza spiegazione e non disattivare servizi di sistema solo per rendere una cattura più silenziosa. Silenziare la cattura rimuove la prova e lascia l’esclusione al suo posto, che è una fine peggiore della domanda iniziale. Se una regola di conformità vieta una categoria che la piattaforma esclude deliberatamente, porta quel conflitto ai responsabili del dispositivo e della rete con la sezione dello schema in mano.

Chiudi il percorso annotando quale eccezione spiegava il traffico, a quale versione del sistema operativo si applica e quale valore del profilo l’ha prodotta. Un’icona di connessione non può conciliare due ipotesi incompatibili su quanto si estende l’ambito del traffico del sistema operativo.

Articoli correlati