Chiedete a due amministratori di descrivere la stessa VPN e uno potrebbe rispondere «SSL VPN» mentre l'altro dice «sito a sito», come se fossero opzioni rivali in un menu. Sono risposte a domande diverse, e trattarle come alternative produce confronti che non si possono risolvere. Un'etichetta dice quali estremità vengono unite; l'altra dice che cosa trasporta il traffico tra loro. Tenete separati gli assi e gran parte della discussione svanisce.

Due etichette, due domande separate

La topologia risponde a chi si unisce a cosa. Un progetto di accesso remoto collega utenti o dispositivi individuali a un gateway, di solito con identità per utente e un pool di indirizzi. Un progetto sito a sito unisce due reti tramite gateway, quindi l'identità interessante è il gateway peer e non la persona davanti alla tastiera. Sono problemi operativi diversi, dalla pianificazione degli indirizzi a chi può revocare l'accesso alle 2 di notte.

Il meccanismo risponde a come viene costruito e autenticato il tunnel. IPsec con IKEv2, un prodotto basato su TLS che trasporta IP al suo interno, e un portale applicativo rivolto al browser sono scelte di meccanismo, e ciascuna ha la propria negoziazione, le proprie suite di cifratura e le proprie modalità di errore. Nessuna implica una topologia, e una topologia non sceglie un meccanismo.

Mettete i due assi in un'unica tabella e la confusione diventa visibile, perché ogni cella della griglia può essere riempita. Ciò che la griglia non può fare è dirvi quale combinazione ha fornito il vostro fornitore, poiché i nomi dei prodotti comprimono entrambi gli assi in un'unica frase di marketing.

Da dove viene l'errore di categoria

I fornitori hanno venduto «SSL VPN» per anni come opposto di «IPsec VPN», il che faceva sembrare un confronto di meccanismi una scelta di topologia. La frase è invecchiata male anche nei suoi stessi termini, poiché i progetti attuali usano versioni di TLS supportate e il nome SSL sopravvive soprattutto come categoria di prodotto.

AxisQuestion it settlesWhat it cannot tell you
TopologyWhether users join a gateway or two networks join each otherWhich protocol carries the traffic, or how peers prove identity
MechanismWhich protocol suite builds the tunnel and negotiates keysWhether the endpoints are people, devices or routers
Access surfaceWhether the client sees a routed network or a set of published applicationsWhich topology or mechanism is underneath the portal
AuthenticationWhat proof each side presents, and to whomWhether the traffic is later authorized per resource

Due miti correlati derivano dalla stessa compressione. Il primo è che IPsec significhi sito a sito; IKEv2 è stato progettato anche per relazioni client-gateway, quindi un singolo portatile può unirsi con IPsec. Il secondo è che un prodotto basato su TLS significhi solo accesso remoto; OpenVPN è usato abitualmente per trasportare traffico tra due siti, e il suo uso di TLS si concentra nello scambio di controllo e autenticazione più che in una sessione del browser.

Un test utile per qualsiasi descrizione: se cambiare una parola cambia sia le estremità sia il protocollo, la frase mescola gli assi. «SSL VPN contro sito a sito» fallisce quel test, perché il primo termine nomina una famiglia di meccanismi e il secondo una topologia.

Descrivete una distribuzione in modo che sia confrontabile

Scrivete quattro campi e riempiteli: estremità, meccanismo, autenticazione e superficie di accesso. Un collegamento di filiale potrebbe leggersi come una coppia di gateway IKEv2 tra due prefissi denominati con autenticazione tramite certificato e senza portale a livello utente. Un servizio di accesso remoto potrebbe leggersi come un client basato su TLS che assegna indirizzi per utente, richiede un secondo fattore all'accesso e pubblica solo una zona DNS interna.

Queste frasi sono confrontabili in un modo in cui i nomi dei prodotti non lo sono. Due progetti di accesso remoto possono essere misurati rispetto allo stesso flusso di lavoro utente e allo stesso percorso di revoca, e due progetti tra siti rispetto allo stesso elenco di prefissi, politica del traffico e requisiti di errore. Le etichette organizzano il confronto; non lo sostituiscono.

La terminologia ha anche un ancoraggio pubblicato. Il documento di terminologia VPN dell'IETF separa diversi modelli di servizio, tra cui l'accesso remoto e il sito a sito, dai meccanismi con cui vengono costruiti, ed è esattamente la distinzione che continua a perdersi.

Leggete il protocollo negoziato, non il nome del prodotto

L'etichetta sulla scatola non stabilisce a cosa sia arrivato un tunnel in funzione. Chiedete al peer direttamente, sul lato TLS, e leggete la versione del protocollo e il cifrario prodotti dall'handshake invece della versione presente nella brochure.

openssl s_client -connect vpn.example.net:443 -tls1_3 -brief

Per un gateway IPsec l'osservazione equivalente viene dall'output di stato dell'implementazione stessa, che riporta le proposte IKE ed ESP in uso. In ogni caso il punto è lo stesso: l'asse del meccanismo va letto dalla sessione viva, perché un client e un gateway possono negoziare al ribasso fino a qualcosa di più vecchio di quanto si aspettasse l'uno o l'altro amministratore.

ipsec statusall | grep -E "IKE|ESP"

Dopo di che, le domande che restano sono quelle a cui nessuna etichetta risponde. Quali versioni di protocollo sono ancora accettate, come viene convalidata l'identità del gateway, quale insieme di algoritmi è consentito, chi autorizza un dato utente per una data risorsa e che cosa revoca l'accesso quando un dispositivo va perso. Un diagramma di topologia e un nome di meccanismo sono l'inizio di quell'elenco, non un suo sostituto.

Tenete dunque le due etichette, ma usatele per ciò che sono: un modo breve per dire quali estremità vengono unite e come viene costruito il tunnel. Nel momento in cui una viene usata per escludere l'altra, la descrizione ha smesso di descrivere qualsiasi cosa.

Articoli correlati