Perché una cattura su VPN instradata non mostra mai il tag VLAN della filiale
Un tunnel TUN instradato trasporta pacchetti IP, non frame Ethernet con tag, quindi l’ID VLAN non raggiunge mai il sensore. Scegliete il punto di osservazione che la vostra politica richiede.
Le catture effettuate sull’interfaccia del tunnel non mostreranno mai l’ID VLAN della filiale, e questa è una proprietà del progetto e non una lacuna dello strumento. Un tunnel TUN instradato trasporta pacchetti IP, quindi il frame Ethernet con tag che li portava sul collegamento della filiale termina al router che li ha instradati. Se la domanda della vostra politica riguarda i segmenti, la posizione del sensore deve essere scelta per quella domanda prima che inizi la cattura. Il campo VLAN che vi aspettavate deve essere sostituito da un contesto che potete difendere.
Guardate che cosa trasporta davvero l’interfaccia del tunnel
TUN consegna pacchetti IP all’host; TAP consegna frame Ethernet. Un progetto instradato usa il primo, il che significa che il pacchetto che arriva dopo la decifratura non ha alcuna intestazione di livello collegamento, e quindi nessun tag 802.1Q da leggere. Nulla è stato rimosso in transito, perché il tag non è mai entrato nel tunnel. Il pacchetto interno inizia dalla sua intestazione IP, quindi ogni campo che una regola consapevole del VLAN si aspetta è semplicemente assente.
Confermate il tipo di interfaccia prima di discutere della cattura, poiché un dispositivo TAP nella stessa distribuzione si comporterà diversamente e porterà alla conclusione sbagliata.
ip -d link show tun0 tcpdump -i tun0 -nn -e -c 20
Il primo comando stampa il tipo di dispositivo e i suoi flag. Il secondo stampa le intestazioni di livello collegamento dei primi venti pacchetti, e su un dispositivo TUN l’output inizia da IP senza blocco Ethernet, che è tutta la spiegazione in una schermata.
Scegliere TAP non ripristina nemmeno il tag. Un dispositivo TAP passa i frame a un bridge, e ciò che accade al tag dipende dal filtraggio VLAN del bridge e dall’appartenenza configurata della porta. È una decisione di progetto separata con i propri modi di guasto.
Mettetevi in uno dei tre punti e accettate ciò che può vedere
Sul segmento Ethernet della filiale il tag è presente, ma il sensore vede solo il traffico locale su quel segmento. Sulla rete VPN esterna il traffico è protetto, quindi un osservatore apprende gli estremi e il volume e nulla del pacchetto interno. Sul percorso TUN dopo la decifratura il pacchetto IP interno è disponibile, con il suo indirizzamento e le sue porte, e senza il frame della filiale. Una cattura su trunk e una cattura instradata dello stesso flusso sembrano quindi due conversazioni diverse.
Queste tre posizioni rispondono a tre domande diverse, e una sola cattura non può essere tutte insieme.
tcpdump -i eth0 -nn -e 'vlan' -c 10 tcpdump -i tun0 -nn -c 10
Eseguite la coppia e confrontate. La prima mostra frame con tag e i loro ID VLAN dove il collegamento della filiale è in trunk verso l’host; la seconda mostra la stessa conversazione come IP semplice dopo l’instradamento. Se la prima non restituisce nulla, controllate se la porta dell’host è una porta di accesso, perché allora il tag è già stato rimosso dallo switch e nessuna cattura sull’host lo mostrerà mai.
Sostituite il tag mancante con una mappatura che potete difendere
Se la politica distingue i segmenti per prefisso IP, annotate quella mappatura insieme ai suoi limiti. Intervalli di indirizzi sovrapposti, traduzione della sorgente e un gateway condiviso possono ciascuno rendere un solo prefisso insufficiente a identificare da dove provenga realmente un pacchetto.
Fidatevi dell’interfaccia e del contesto di instradamento che controllate, non di un’etichetta fornita dal client. Un campo di intestazione che un peer può impostare non è prova di appartenenza, e una regola di ispezione che lo tratta come tale si aggira banalmente.
ip route get 10.20.30.40 ip -br addr show
Il primo comando riporta l’interfaccia e la sorgente che il kernel userebbe per una destinazione, che è la visione locale del collegamento al segmento. Il secondo elenca gli indirizzi per interfaccia, così i prefissi della vostra mappatura possono essere verificati rispetto alla realtà anziché al diagramma.
Controllate il percorso di ritorno e il carico utile prima di fidarvi del risultato
Un punto di ispezione che vede una sola direzione perderà metà della conversazione, e l’instradamento asimmetrico è comune una volta che è coinvolta una VPN. Confermate che le risposte attraversino lo stesso sensore prima di considerare completa una cattura unilaterale.
Recuperare il pacchetto IP interno non decifra nemmeno una sessione HTTPS al suo interno. Se la domanda della politica riguarda il contenuto anziché i flussi, la posizione del sensore deve spostarsi di nuovo, e quella decisione appartiene allo stesso documento di progetto.
Estendere un trunk senza restrizioni fino a un sensore solo per far comparire un campo VLAN allarga il confine della rete senza rispondere alla domanda originale. Scegliete la posizione per le informazioni di cui la politica ha bisogno, annotate ciò che non può vedere e riesaminate la scelta quando la domanda cambia.