Che cos'è IPSec, un protocollo per VPN con una migliore sicurezza e come funziona

Cos'è IPsec

Mantenere una comunicazione sicura attraverso una rete insicura come Internet è una delle principali preoccupazioni di qualsiasi utente su Internet e anche di diverse società. I motivi principali per utilizzare un file VPN è che ci permette di farlo stabilire comunicazioni sicure, con autenticazione e crittografia dei dati per proteggere tutte le informazioni scambiate. IPsec è uno dei protocolli di sicurezza più importanti, che fornisce un livello di sicurezza a tutte le comunicazioni IP tra due o più partecipanti. Oggi in questo articolo vedremo nel dettaglio cos'è IPsec, come funziona e anche come potremmo configurarlo e dove.

Una VPN è l'acronimo di "Virtual Private Network NetPoulSafe“, O anche conosciuta come rete privata virtuale, ed è una tecnologia di rete che ci permette di estendere le comunicazioni LAN sulla rete Internet, e tutto questo in modo totalmente sicuro grazie all'uso della crittografia. Una VPN consentirà a un computer di inviare e ricevere dati su reti condivise o pubbliche, ma logicamente essendo nella rete privata con tutte le sue funzionalità, permessi, sicurezza, politiche di gestione, ecc.

Alcuni usi molto tipici delle VPN sono i seguenti:

  • Possibilità di collegare tra loro due o più sedi di un'azienda, utilizzando la connettività Internet.
  • Consentire ai membri del team di supporto tecnico di connettersi dalle loro case all'azienda.
  • Che un utente possa accedere al proprio computer di casa da un sito remoto, come un hotel.

Tutti questi usi avverranno sempre attraverso un'infrastruttura che tutti conosciamo bene: Internet.

All'interno delle VPN, abbiamo principalmente due architetture VPN, le VPN di accesso remoto (Roadwarrior VPN o client mobili) e le VPN da sito a sito (VPN da sito a sito). A seconda delle nostre esigenze, dobbiamo configurare un'architettura o un'altra.

  • VPN di accesso remoto (Roadwarrior o client mobile) : Questa architettura VPN è progettata in modo che uno o più utenti si colleghino a un server VPN e possano accedere a tutte le risorse condivise della tua casa o azienda, inoltre, consente di effettuare un reindirizzamento del traffico, in questo modo, noi accederà a Internet tramite il server VPN (e con l'IP pubblico del server VPN). Questo tipo di VPN è il più tipico che possiamo configurare su server NAS, router e altri dispositivi il cui obiettivo è fornirci una navigazione sicura in Internet. Queste VPN di livello aziendale servirebbero anche per isolare zone e servizi di rete interni che richiedono un'autenticazione aggiuntiva, inoltre, potrebbe anche essere una buona idea ogni volta che utilizziamo la connettività WiFi, sia a casa che in azienda, per aggiungere un altro livello di crittografia.
  • VPN da sito a sito (VPN da sito a sito) : questa architettura VPN è progettata per interconnettere siti diversi, se, ad esempio, abbiamo un'azienda con siti diversi, possiamo interconnetterli tramite VPN e accedere a tutte le risorse. L'instaurazione della connessione non viene effettuata nel client finale, come nel caso delle VPN ad accesso remoto, ma viene effettuata da router o firewall, in questo modo l'intera rete sarà vista come “una”, sebbene il traffico viaggi attraverso più tunnel VPN.

Nell'immagine seguente possiamo vedere un'architettura VPN con entrambi i modelli, sia VPN da sito a sito (a sinistra) che VPN di accesso remoto (a destra):

Cosa deve garantire una VPN per essere sicura?

Per garantire che una connessione sia sicura tramite una rete privata virtuale (VPN), alcune funzioni devono essere garantite, altrimenti potremmo trovarci di fronte a una VPN inaffidabile. Prevediamo già che il protocollo IPsec è conforme a tutti loro, poiché è un protocollo VPN sicuro, ampiamente utilizzato nelle aziende.

Autenticazione

L'autenticazione è uno dei processi più importanti in una VPN, questa funzione consente a un utente di dimostrare di essere veramente chi dice di essere. Il modo per dimostrarlo è inserire un codice di accesso, utilizzare un certificato digitale o una combinazione di entrambe le forme di autenticazione. Quando l'host riceve un datagramma IPsec da un'origine, l'host è sicuro che l'indirizzo IP di origine del datagramma è l'effettiva origine del datagramma, perché è stato precedentemente autenticato con successo.

riservatezza

La riservatezza è un'altra delle caratteristiche fondamentali delle VPN, la riservatezza significa che le informazioni devono essere accessibili solo a entità autorizzate, ovvero tutte le comunicazioni sono crittografate punto-punto e solo chi si è precedentemente autenticato nel sistema lo farà essere in grado di decriptare tutte le informazioni scambiate. Se qualcuno è in grado di entrare nel mezzo della comunicazione e catturarla, non sarà in grado di decrittarla perché utilizzerà la crittografia, crittografia a chiave simmetrica o asimmetrica.

Integrità

L'autenticazione e la riservatezza sono importanti tanto quanto l'integrità. Integrità significa che si può garantire che le informazioni non siano state modificate tra l'origine della comunicazione e la destinazione. Tutte le comunicazioni in una VPN includono codici di rilevamento degli errori e che le informazioni non vengono modificate. In caso di modifica, il pacchetto viene automaticamente scartato e potrebbe persino causare un arresto anomalo del tunnel VPN per motivi di sicurezza. Il protocollo IPsec consente all'host ricevente di verificare che i campi dell'intestazione del datagramma e il payload crittografato non siano stati modificati mentre il datagramma era in viaggio verso la destinazione.

Immaginiamo di avere autenticazione e riservatezza in una VPN, ma non abbiamo integrità. Se un utente nel mezzo della comunicazione modifica alcuni valori, invece di inviare un bonifico di 10 €, potrebbe convertirlo in 1,000 €. Grazie alla funzionalità di integrità, non appena un bit viene modificato il pacchetto viene scartato e attenderà che venga nuovamente inviato.

Io non ripudio

Questa caratteristica della crittografia significa che non puoi dire di non aver inviato alcuna informazione, perché è firmata dal tuo certificato digitale, o dalla tua coppia nome utente / password. In questo modo, possiamo sapere con certezza che quell'utente ha inviato informazioni specifiche. Il non ripudio può essere "aggirato" solo se qualcuno è in grado di rubare la coppia nome utente / password o i certificati digitali.

Controllo di accesso (autorizzazione)

Si tratta di garantire che i partecipanti autenticati abbiano accesso solo ai dati per i quali sono autorizzati. L'identità degli utenti deve essere verificata e il loro accesso limitato a coloro che sono autorizzati. In un ambiente aziendale questo è molto importante, un utente dovrebbe avere lo stesso livello di accesso e le stesse autorizzazioni come se fosse fisicamente, o meno autorizzazioni, ma mai più autorizzazioni di quelle che aveva fisicamente.

Registro delle attività

Si tratta di garantire il corretto funzionamento e la resilienza. Il protocollo VPN dovrebbe registrare tutte le connessioni stabilite, con l'indirizzo IP di origine, chi si è autenticato e anche cosa stanno facendo nel sistema in base all'indirizzo IP virtuale fornito.

Qualità del servizio

Si tratta di garantire buone prestazioni, che non vi sia alcun degrado inaccettabile nella velocità di trasmissione. Dobbiamo tenere presente che quando stabiliamo una connessione VPN, avremo sempre una velocità reale inferiore perché tutto il traffico è crittografato punto-punto e, a seconda della forza del server VPN e dei client, possiamo ottenere un velocità inferiore. Prima di iniziare a implementare una VPN, dovremmo esaminare l'hardware dell'apparecchiatura e la larghezza di banda massima che possiamo avere.

Introduzione a IPsec

Il protocollo IPsec è uno dei protocolli di sicurezza più importanti ed è ampiamente utilizzato nelle aziende e anche negli utenti domestici. Negli ultimi tempi, produttori come ASUS, AVM e persino D-Link, stanno integrando VPN nei loro router domestici basati sul protocollo IPsec. Questo protocollo fornisce servizi di sicurezza al livello IP ea tutti i protocolli superiori, come TCP e UDP (livello di trasporto Internet). Grazie a IPsec, possiamo comunicare tra diversi punti di Internet in modo sicuro, come due o più aziende tra loro o un utente con la sua casa, IPsec si adatta perfettamente alle esigenze VPN di entrambi i “mondi”.

Una caratteristica molto importante di IPsec è che funziona a livello 3 di OSI (livello di rete), altri protocolli VPN come OpenVPN o Gabbia di protezione lavorano a livello 4 (livello di trasporto), poiché gli ultimi due basano la loro sicurezza su TLS e DTLS rispettivamente. IPsec nelle reti IPv4 è appena sopra l'intestazione IP, tuttavia, nelle reti IPv6 è integrato (ESP) nell'intestazione stessa nella sezione "Estensioni".

IPsec fornisce tutti i servizi necessari affinché la comunicazione sia sicura, come abbiamo spiegato in precedenza, questi servizi sono autenticazione, riservatezza, integrità e non ripudio . Grazie a questi servizi, la sicurezza delle comunicazioni è garantita. Naturalmente, abbiamo anche il controllo degli accessi, la qualità del servizio e il registro delle attività.

Un'altra caratteristica molto importante di IPsec è che esso consente entrambe le architetture VPN , sia VPN di accesso remoto che VPN da sito a sito. Per quanto riguarda la negoziazione della crittografia, IPsec integra un sistema di negoziazione in modo che i team finali negoziano la migliore crittografia possibile supportata, concordano le chiavi di scambio e scelgono gli algoritmi di crittografia che hanno in comune. A seconda dell'intestazione IPsec utilizzata (AH o ESP), possiamo solo controllare l'autenticità del pacchetto o crittografare il payload dell'intero pacchetto IP e anche verificarne l'autenticità.

Quando due host hanno stabilito una sessione IPsec, i segmenti TCP e i datagrammi UDP vengono inviati tra di loro crittografati e autenticati, inoltre viene verificata anche l'integrità per impedire a qualcuno di modificarla. Pertanto, IPsec garantisce la sicurezza delle comunicazioni.

Alcuni vantaggi di IPsec sono che è supportato da tutti gli standard IETF e fornisce uno "standard" VPN, quindi tutti i dispositivi dovrebbero essere compatibili. IPSec sta ricevendo un supporto molto importante da tutte le apparecchiature di comunicazione, in quanto è lo "standard" per VPN, molto più utilizzato di OpenVPN o WireGuard. Tutte le versioni di sistemi operativi per PC come Windows or Linux, MacOS per Apple computer e anche Android e iOS supportare il protocollo IPsec. Inoltre, un'altra caratteristica molto importante è che, essendo uno standard, esiste l'interoperabilità tra i produttori, che costituisce una garanzia per gli utenti. Un'altra caratteristica notevole di IPSec è la sua natura di standard aperto ed è perfettamente integrato dalla tecnologia PKI (Public Key Infrastructure).

IPsec combina tecnologie a chiave pubblica (RSA o Elliptical Curves), algoritmi di crittografia simmetrica (principalmente AES, sebbene supporti anche altri come Blowfish o 3DES) e algoritmi di hashing (SHA256, SHA512 ecc.), Nonché certificati digitali basati su X509v3.

Intestazioni IPsec

Il protocollo IPsec ha un'architettura con più header, a seconda di ciò che ci interessa “assicurare”, possiamo scegliere un header o un altro, non possiamo scegliere entrambi gli header contemporaneamente nello stesso tunnel IPsec. Le intestazioni che abbiamo in questo protocollo sono le seguenti:

  • Intestazione di autenticazione (AH)
  • Payload di sicurezza incapsulato (ESP)

Successivamente, spiegheremo in dettaglio come funzionano entrambe le intestazioni.

Intestazione di autenticazione (AH)

Questa intestazione fornisce autenticazione e integrità ai pacchetti IP trasmessi, per fornire questa funzionalità IPsec, utilizza le impronte digitali HMAC. Il protocollo stesso sarà incaricato di calcolare una funzione hash al contenuto del pacchetto IP, alcune delle funzioni hash utilizzate da questo protocollo sono MD5 o SHA-1 che non sono sicure, ma supporta anche SHA256 o SHA512 che sono sicure .

Questa intestazione fornisce al destinatario dei pacchetti IP un metodo per autenticare l'origine dei dati e verificare che detti dati non siano stati alterati nella comunicazione. Un dettaglio molto importante è questo questa intestazione non fornisce riservatezza poiché non crittografa i dati del pacchetto IP, quindi, le informazioni scambiate possono essere viste da terze parti a meno che non utilizzino protocolli come HTTPS o FTPES con sicurezza TLS.

AH è un'intestazione di autenticazione che viene inserita tra l'intestazione IP standard (sia nelle reti IPv4 che IPv6) e i dati trasportati. Questi dati trasportati possono essere un messaggio TCP, UDP o ICMP e persino un datagramma IP completo. All'interno dell'intestazione AH è dove sono indicati i dati del livello superiore, inoltre, AH garantisce l'integrità e l'autenticità dell'intestazione IP stessa, ad eccezione delle modifiche alle variabili come TOS, TTL, flag, offset e checksum.

http://www.frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/ipsec.pdf

Il funzionamento del protocollo AH è il seguente:

  1. Il mittente calcola la funzione hash dal messaggio da trasmettere. Verrà copiato nell'intestazione AH nel campo "Dati di autenticazione".
  2. I dati vengono trasmessi tramite Internet.
  3. Quando il pacchetto raggiunge il destinatario, applicherà la funzione hash e la confronterà con quella che aveva già (entrambi hanno la stessa chiave segreta condivisa).

Se le impronte corrispondono, significa che il datagramma non è stato modificato, altrimenti possiamo affermare che l'informazione è stata manomessa.

Payload di sicurezza incapsulato (ESP)

L'incapsulato Sicurezza Payload, o anche noto come ESP, offre autenticazione, integrità e riservatezza dei dati trasmessi su IPsec. Vale a dire, in questo caso crittograferemo l'intero campo dati in modo che tutte le comunicazioni siano riservate, a differenza di AH che non crittografa il messaggio trasmesso. Per ottenere queste caratteristiche di sicurezza, viene effettuato uno scambio di chiave pubblica utilizzando Diffie-Hellmann per garantire la comunicazione tra entrambi gli host.

La funzione principale del protocollo ESP integrato in IPsec, è quella di fornire riservatezza ai dati, per fare ciò, ESP definisce la crittografia e il modo in cui i dati verranno localizzati in un nuovo datagramma IP. Per fornire autenticazione e integrità, ESP utilizza meccanismi simili a AH. Poiché ESP fornisce più funzioni di AH, il formato dell'intestazione è più complesso: questo formato è costituito da un'intestazione e da una coda (che è posta alla fine del pacchetto), quindi ESP "circonda" i dati trasportati. Per quanto riguarda i dati, ESP consente di utilizzare qualsiasi protocollo IP, ad esempio TCP, UDP, ICMP e persino un pacchetto IP completo.

La struttura di un pacchetto ESP è la seguente:

http://www.frlp.utn.edu.ar/materias/internetworking/apuntes/IPSec/ipsec.pdf

ESP appartiene al livello di rete all'interno di TCP / IP. L'area dati è completamente crittografato , le datagramma stesso potrebbe anche essere autenticato per fornire maggiore sicurezza. La crittografia dei dati viene eseguita utilizzando algoritmi a chiave simmetrica , di solito vengono utilizzati cifrari a blocchi (come AES), la crittografia dei dati viene eseguita utilizzando multipli di la dimensione del blocco , per questo abbiamo il “Padding”, un campo di riempimento.

Per crittografare i dati, il mittente prima crittografa il messaggio originale utilizzando una chiave e lo inserisce in un nuovo datagramma IP (che è protetto dall'intestazione ESP). Nel caso ipotetico in cui qualcuno intercetta il messaggio (Man In The Middle), otterranno solo dati privi di significato poiché non hanno la chiave segreta per decrittografare il messaggio. Quando il messaggio raggiunge la destinazione, applicherà la chiave segreta ai dati e decifrerà il pacchetto.

L'algoritmo più utilizzato è AES in tutte le sue versioni (128 e 256 bit) e nelle sue diverse modalità di crittografia come AES-CBC, AES-CFB e AES-OFB . Tuttavia, è consigliabile utilizzare AES-GCM che AEAD ci fornirà ed è molto più sicuro degli altri. Pertanto, è essenziale utilizzare un file buon algoritmo di crittografia per proteggere tutti i dati , la distribuzione delle chiavi in ​​modo sicuro sarà molto importante. Una questione delicata è che entrambe le parti della comunicazione concordano sugli algoritmi e sull'autenticazione, questo sarà fatto dal protocollo IKE.

IKE: cos'è ea cosa serve

Questo protocollo IKE (Internet Key Exchange) viene utilizzato per generare e gestire le chiavi necessarie per stabilire il file AH (intestazione di autenticazione) e Connessioni ESP (Encapsulated Security Payload) . I due o più partecipanti alla connessione IPsec devono concordare in qualche modo i tipi di crittografia e gli algoritmi di autenticazione per poter stabilire la connessione in modo sicuro. Questa configurazione può essere eseguita manualmente su entrambe le estremità del canale o tramite un protocollo (il file Protocollo IKE ) per curare la negoziazione automatica dei partecipanti (SA = Security Association).

Il protocollo IKE non è solo responsabile della gestione e amministrazione delle chiavi, ma anche di stabilire la connessione tra i partecipanti corrispondenti. IKE non è solo in IPsec, ma può essere utilizzato in diversi algoritmi di routing come OSPF o RIP.

Fasi della negoziazione IKE

La creazione del canale sicuro verrà eseguita utilizzando un algoritmo di scambio di chiavi come Diffie-Hellman per crittografare la comunicazione IKE. Questa negoziazione viene eseguita tramite un'unica SA bidirezionale. L'autenticazione può avvenire tramite PSK (chiave condivisa) o con altri metodi come i certificati RSA. Utilizzando il canale protetto che è stato creato, verrà negoziata l'associazione di protezione IPsec (o altri servizi).

Alcune caratteristiche di IKE

IKE supporta Attraversamento NAT , anche se uno o entrambi i partecipanti sono dietro un NAT, la connessione può essere effettuata senza molti problemi, anche se dovremo aprire le porte sul server VPN se è dietro il NAT. I numeri di sequenza e gli ACK vengono utilizzati per fornire affidabilità, include anche un sistema di elaborazione degli errori. IKE è resistente agli attacchi denial-of-service e IKE non intraprende alcuna azione fino a quando non determina se l'endpoint richiedente esiste davvero, proteggendo così dagli attacchi di indirizzi IP falsi.

Attualmente IKEv2 è ampiamente implementato in tutti i firewall e router professionali, tuttavia, non è ancora completamente esteso nel mondo Android o iOS, solo Samsung gli utenti di smartphone supportano IPsec con IKEv2. I sistemi operativi Windows, Linux e macOS supportano questo protocollo.

IKEv2: cosa è cambiato

IKEv2 è la seconda versione di questo popolare protocollo Internet Key Exchange, incorpora miglioramenti per NAT traversal, che rende più facile comunicare e passare attraverso i firewall in generale. Supporta anche un nuovo standard di mobilità, che consente la riconnessione della comunicazione molto rapidamente, inoltre, consente anche il multihoming (multi-origine), ideale per utenti di smartphone, tablet o laptop. IKEv2 consente di utilizzare SCTP che viene utilizzato in VoIP, ha anche uno scambio di messaggi più semplice, ha meno meccanismi crittografici che consentono solo quelli più sicuri. Qual è il punto di utilizzare una VPN con cifrature non sicure? IKEv2 consente solo di utilizzare i più sicuri

Modalità operative: trasporto o tunnel

IPsec ci fornisce due modalità operative molto diverse, sia per l'header di autenticazione (AH) che per il payload di sicurezza incapsulato (ESP). Queste modalità di funzionamento differiscono nel modo in cui vengono indirizzati i pacchetti. Successivamente, spieghiamo in modo più approfondito le differenze tra i due.

Modalità di trasporto

L'intestazione AH o ESP viene inserita tra l'area dati e l'intestazione IP, in modo tale da mantenere gli indirizzi IP originali. Il contenuto incapsulato in un datagramma AH o ESP proviene direttamente dal livello di trasporto. Pertanto, l'intestazione IPsec verrà inserita dopo l'intestazione IP e subito prima dei dati forniti dal livello di trasporto. In questo modo, solo il payload viene crittografato e autenticato. Lo schema del datagramma sarebbe il seguente:

La modalità di trasporto garantisce la comunicazione end-to-end, ma le estremità devono essere consapevoli dell'esistenza del protocollo IPsec per potersi comprendere.

Modalità tunnel

In modalità tunnel, l'intero pacchetto IP (intestazione + dati) viene crittografato e autenticato se viene utilizzato ESP. Questo pacchetto verrà incapsulato in un nuovo pacchetto IP, quindi l'indirizzo IP cambierà in quello dell'ultimo pacchetto IP. Pertanto, un'intestazione AH o ESP viene aggiunta al pacchetto originale, quindi viene aggiunta l'intestazione IP che servirà per instradare il pacchetto attraverso la rete.

La modalità tunnel è normalmente utilizzata per comunicare reti con reti, ma può anche essere utilizzata (ed è di fatto utilizzata), per comunicare computer con reti e computer con computer. Questa modalità operativa rende più facile per i nodi nascondere la propria identità agli altri nodi che stanno comunicando. Utilizzando la modalità tunnel, saremo in grado di avere una sottorete specificamente dedicata ai client VPN. La modalità tunnel viene utilizzata principalmente dai gateway IPSec, al fine di identificare la rete che proteggono con lo stesso indirizzo IP e quindi centralizzare l'elaborazione del traffico IPSec su un computer.

Nell'immagine seguente è possibile vedere un confronto tra i due schemi di funzionamento, sempre utilizzando ESP:

Dopo aver visto le due modalità di funzionamento, vedremo quali metodi di autenticazione abbiamo in IPsec.

Metodi di autenticazione

Nel protocollo IPsec abbiamo un totale di quattro metodi di autenticazione: chiave condivisa, firme digitali RSA, certificati digitali X.509 e autenticazione tramite un gruppo di utenti XAuth. A seconda dello scenario in cui si desidera implementare IPsec, verrà utilizzato un metodo di autenticazione o un altro, ciascuno di questi metodi presenta vantaggi e svantaggi che verranno menzionati. Successivamente, spieghiamo questi quattro metodi in dettaglio.

Chiave condivisa

La chiave condivisa è una chiave composta da una stringa di caratteri (quella di una vita) che solo i due estremi della comunicazione conosceranno per stabilire la connessione IPsec. Attraverso l'utilizzo di algoritmi di autenticazione (HASH) verrà verificata la correttezza delle chiavi senza che sia necessario rivelarle. Affinché questo metodo sia sicuro, deve esserci una chiave per ogni coppia di partecipanti alla comunicazione. Questo tipo di autenticazione non è fattibile per molti partecipanti, poiché ci sarà un numero molto elevato di chiavi.

Sebbene gli hash siano utilizzati per lo scambio di chiavi nella connessione, prima di questa connessione, le chiavi devono trovarsi ad entrambe le estremità della comunicazione, per questo motivo, non possiamo sapere con certezza se quella chiave è stata catturata quando è stata inviata. Possiamo garantire che sia sicuro solo se lo consegniamo a mano. Questa tecnica è utile per piccole reti, ma per reti medie e grandi è totalmente irrealizzabile.

Firme digitali RSA

IPsec funziona con il protocollo IKE per la gestione e la sicurezza delle chiavi automatiche, utilizza le firme digitali RSA per lo scambio sicuro di chiavi attraverso la coppia di chiavi pubblica e privata. Queste chiavi hanno lo stesso problema della chiave condivisa, in qualche modo dobbiamo inviare le chiavi “dall'altra parte”, ma possiamo tranquillamente modificare le chiavi usando il protocollo IKE.

Pertanto, per proteggere la rete, è consigliabile modificare queste chiavi regolarmente. Queste firme RSA forniscono alla rete autenticazione e riservatezza.

Certificati X.509

Una delle forme di autenticazione più sicure in IPsec è lavorare con i certificati digitali, creando un'infrastruttura a chiave pubblica (PKI) con la sua CA (Autorità di certificazione) corrispondente, il certificato digitale del server e i certificati digitali dei client. Grazie a questi certificati digitali, possiamo stabilire un'autenticazione molto robusta, inoltre, possiamo anche lavorare con certificati digitali, questi certificati contengono la chiave pubblica del proprietario e la loro identificazione. Il proprietario ha anche una coppia di chiavi pubbliche e private con cui operare al momento della convalida.

L'utilizzo di questi certificati fa apparire sulla scena il protocollo PKI per autenticare i nodi coinvolti nella comunicazione IPsec. L'uso di questa PKI aiuta nella creazione di nuovi certificati e nella rimozione di altri. La validità del certificato digitale è concessa dalla PKI, questa PKI integra la CA che contiene la chiave pubblica e l'identità del proprietario. Gli endpoint coinvolti nella connessione IPsec riconosceranno la CA come valida, poiché possiedono una copia di quella CA (la chiave pubblica della CA).

La convalida del certificato viene eseguita utilizzando l'elenco di revoche di certificati (CRL) archiviato nella PKI. Tutti i partecipanti avranno una copia di questa CRL che viene costantemente aggiornata.

Autenticazione del gruppo di utenti XAuth

Questo metodo aggiunge un utente e una password ai certificati digitali visti in precedenza (X.509), in modo tale che, oltre a convalidare il certificato, convaliderà anche utente e password. Per convalidare questi utenti e password, possiamo utilizzare un server Radius o direttamente un piccolo database con l'elenco degli utenti e delle password.

Stabilire la connessione

La negoziazione di un tunnel IPsec viene effettuata tramite il protocollo IKE che ci fornirà una connessione crittografata e autenticata tra le due estremità della comunicazione. Nella procedura di connessione verranno concordate le chiavi e la sicurezza utilizzate per stabilire la connessione IPsec. La procedura di connessione si svolge in due parti distinte. Spieghiamo queste due parti di seguito.

1. Fornire autenticazione e sicurezza alla connessione

Per proteggere la connessione, verranno utilizzati un algoritmo di crittografia simmetrica e una firma HMAC. Le chiavi vengono scambiate utilizzando un algoritmo di scambio di chiavi, come Diffie-Hellman. Questo metodo non garantisce che i partecipanti siano chi dicono di essere, quindi utilizzeremo una chiave precondivisa o certificati digitali.

La prima parte della comunicazione termina quando i parametri di sicurezza sono stati concordati e il canale di comunicazione è stato protetto.

2. Fornire riservatezza dei dati.

Il canale protetto IKE che abbiamo stabilito viene utilizzato per negoziare parametri di sicurezza IPsec specifici (intestazione AH o ESP, algoritmi di autenticazione, ecc.). Questi parametri specifici possono includere nuove chiavi Diffie-Hellman, per fornire una maggiore sicurezza, a patto che abbiamo configurato il PFS (Perfect Direct Confidentiality), che è altamente consigliato per rendere la VPN ancora più robusta.

Servizi di sicurezza offerti da IPsec

riservatezza

Il servizio di riservatezza si ottiene tramite la funzione di crittografia inclusa nel protocollo ESP. In questo caso, è consigliabile attivare l'opzione di autenticazione, poiché, se non è garantita l'integrità dei dati, la crittografia è inutile. Ciò è dovuto al fatto che, sebbene i dati non possano essere interpretati da chiunque sia in transito, potrebbero essere alterati inviando traffico privo di significato al destinatario del messaggio che verrebbe accettato come traffico valido.

Oltre ad offrire la crittografia del traffico, il protocollo ESP dispone anche di strumenti per nascondere il tipo di comunicazione che si sta effettuando; per questo, consente di inserire caratteri di riempimento nel contenuto dei dati del pacchetto, in modo che la lunghezza reale del pacchetto sia nascosta. Si tratta di una protezione utile contro le tecniche di analisi del traffico, che consentono a un utente malintenzionato di dedurre informazioni utili dallo studio delle caratteristiche del traffico crittografato.

Integrità e autenticazione dell'origine dei dati

Il protocollo AH è il più adatto se non è richiesta la crittografia. L'opzione di autenticazione del protocollo ESP offre funzionalità simili, sebbene questa protezione, a differenza di AH, non includa l'intestazione IP. Come accennato in precedenza, questa opzione è di grande importanza per quelle applicazioni in cui è importante garantire l'invariabilità del contenuto dei pacchetti IP.

Ripetere il rilevamento

L'autenticazione protegge dallo spoofing IP, tuttavia un utente malintenzionato potrebbe comunque acquisire pacchetti validi e inoltrarli alla destinazione. Per evitare questo attacco, sia ESP che AH incorporano una procedura per rilevare i pacchetti ripetuti. Detta procedura si basa su un numero di sequenza incluso nell'intestazione ESP o AH, il mittente incrementa detto numero per ogni datagramma che invia e il destinatario lo controlla, in modo che i pacchetti ripetuti vengano ignorati.

Questa sequenza non può essere modificata dall'aggressore, poiché è protetta tramite l'opzione di integrità per uno dei due protocolli (AH e ESP) e qualsiasi modifica a questo numero provocherebbe un errore nel controllo dell'integrità del pacchetto.

Controllo dell'accesso: autenticazione e autorizzazione

Poiché l'uso di ESP e AH richiede la conoscenza delle chiavi, e queste chiavi sono distribuite in modo sicuro attraverso una sessione IKE in cui entrambi i nodi si autenticano a vicenda, c'è la garanzia che solo i computer desiderati partecipano alla comunicazione.

Vale la pena chiarire che un'autenticazione valida non implica l'accesso completo alle risorse, poiché IPSec fornisce anche funzioni di autorizzazione. Durante la negoziazione IKE, viene specificato il flusso di traffico IP che circolerà attraverso la connessione IPSec. Questa specifica è simile a un filtro di pacchetto, considerando il protocollo, gli indirizzi IP delle porte di origine e di destinazione, il byte "TOS" e altri campi. Ad esempio, IPSec può essere utilizzato per consentire l'accesso da una filiale alla rete locale del centro.

Io non ripudio

Il servizio di non ripudio è possibile utilizzando IKE con autenticazione del certificato digitale. In questo caso, la procedura di autenticazione si basa sulla firma digitale di un messaggio che contiene l'identità del partecipante. Questa firma, grazie al legame tra la chiave pubblica e l'identità che garantisce il certificato digitale, è la prova inequivocabile che è stata stabilita una connessione IPSec con uno specifico computer, quindi non può negarla. In pratica, tuttavia, questo test è più complesso, poiché richiederebbe la memorizzazione dei messaggi di negoziazione IKE.

L2TP / IPsec - che cos'è?

L2TP (Layer 2 Tunneling Protocol) è un protocollo utilizzato per VPN che è stato progettato da un gruppo di lavoro IETF, come erede di PPTP, ed è stato creato per correggere le carenze di questo protocollo e affermarsi come standard. L2TP utilizza PPP per fornire un accesso dial-up, che può essere trasportato via Internet a un punto specificato. L2TP include i meccanismi di autenticazione di PPP, PAP e CHAP, inoltre, simile a PPTP, supporta l'uso di questi protocolli di autenticazione, come RADIUS.

Sebbene L2TP offra accesso supportato multiprotocollo e accesso a reti locali remote, non ha caratteristiche crittografiche particolarmente robuste. L'operazione di autenticazione viene eseguita solo tra gli endpoint del tunnel, ma non per ciascuno dei pacchetti che lo attraversano. Questo può portare allo spoofing da qualche parte all'interno del tunnel. Senza controllare l'integrità di ogni pacchetto, sarebbe possibile eseguire un attacco denial-of-service utilizzando messaggi di controllo fasulli che terminano il tunnel L2TP sottostante o la connessione PPP.

L2TP non crittografa in modo affidabile il traffico dei dati degli utenti, causando problemi quando è importante mantenere la riservatezza dei dati. Nonostante il fatto che le informazioni contenute nei pacchetti possano essere crittografate, questo protocollo non dispone di meccanismi per la generazione automatica della chiave o per l'aggiornamento automatico della chiave. Questo può dare a qualcuno che ascolta in rete e scopre un'unica chiave per avere accesso a tutti i dati trasmessi.

Tenendo conto di tutti questi punti deboli di L2TP, l'IETF ha deciso di utilizzare i protocolli del protocollo IPsec stesso, per proteggere i dati che viaggiano attraverso il tunnel L2TP. Per questo motivo vengono sempre scritti "L2TP / IPsec", poiché entrambi i protocolli vengono utilizzati contemporaneamente e questo protocollo congiunto è ampiamente utilizzato. Si potrebbe dire che L2TP è il protocollo a livello di "collegamento" e che non ha sicurezza, tuttavia, IPSec fornisce la sicurezza a livello di rete in modo che l'uso di questo protocollo sia sicuro.

Per questo motivo, troveremo sempre la nomenclatura L2TP / IPSec insieme, perché entrambi i protocolli vengono utilizzati per avere una connessione VPN sicura.

Conclusioni

IPSec è uno standard di sicurezza straordinariamente potente e flessibile. La sua importanza sta nel fatto che affronta una tradizionale mancanza del protocollo IP: la sicurezza. Grazie a IPSec, è ora possibile utilizzare reti IP per applicazioni critiche, come le transazioni commerciali tra aziende. Allo stesso tempo, è la soluzione ideale per quegli scenari in cui è richiesta la sicurezza, indipendentemente dall'applicazione, quindi è un pezzo essenziale nella sicurezza delle reti IP. Il protocollo IPSec è già oggi uno dei componenti di base della sicurezza nelle reti IP.