credevo fossi un poco + spiritoso...
potrei risponderti:
comunque se ti servono le cose semplici...
I tunnel IP IP oppure GRE sono tunnel chiari nei quali i pacchetti vengono semplicemente encapsulati,
invece l'ipsec fino a poco tempo fa era il metodo + sicuro per far girare informazioni essendo criptato e quasi inattaccabiile.
IPsec è un estensione del protocollo IP che fornisce sicurezza a livello IP ed ai livelli superiori.
IPsec usa due differenti protocolli - AH ed ESP - per fornire l'autenticazione, l'integrità e la confidenzialità della comunicazione. Può proteggere l'intero datagramma IP o solamente i protocolli di alto livello. I diversi modelli di funzionamento sono detti tunnel mode e transport mode. Nel tunnel mode il datagramma IP viene completamente incapsulato in un nuovo datagramma IP utilizzando IPsec. In transport mode solo il payload del datagramma IP viene trattato da IPsec che inserisce il proprio header tra l'header IP ed i livelli superiori .
Per proteggere l'integrità di un datagramma IP il protocollo IPsec utilizza meccanismi di autenticazione basati su codici hash (HMAC).Per ottenere questo HMAC vengono usati algoritmi come MD5 o SHA per calcolare un hash basato su una chiave segreta e sul contenuto di un datagramma IP. L'HMAC viene quindi inserito nell'header IPsec ed il destinatario del pacchetto ne può verificare l'esattezza soltanto avendo accesso alla chiave segreta.
Per proteggere la confidenzialità di un datagramma IP il protocollo IPsec utilizza degli algoritmi di cifratura simmetrici. L'IPsec richiede l'implementazione di NULL (nessuna cifratura) e del DES. Attualmente vengono utilizzati algoritmi più robusti come 3DES, AES ed il Blowfish.
Per proteggersi contro un attacco di tipo denial of service, il protocollo IPsec utilizza un meccanismo di sliding window. Ciascun pacchetto possiede un numero di sequenza e viene accettato solo se tale numero rientra nella finestra o è più recente. I pacchetti più vecchi vengono immediatamente scartati. Questo protegge da attacchi di tipo replay, nei quali pacchetti originali vengono conservati e rispediti in seguito.
Perchè le due parti siano in grado di effettuare l'incapsulamento ed il recupero dei pacchetti IPsec è necessario che vi sia un luogo nel quale conservare le chiavi, gli algoritmi e gli indirizzi IP coinvolti nella comunicazione. Tutti questi parametri necessari per la protezione del datagramma IP, sono inseriti in una security association (SA). Le security association vengono conservate a turno in un database detto SAD (security association database).
Ciascuna security association definisce i seguenti parametri:
IP sorgente e destinazione del corrispondente header IPsec, ovvero delle parti coinvolte.
Il protocollo IPsec (AH or ESP), l'eventuale supporto per la compressione (IPCOMP).
Gli algoritmi e le chiavi utilizzate.
Security Parameter Index (SPI). Un numero di 32 bit che identifica la SA.
La famiglia di protocolli IPsec è composta da: Authentication Header (AH) e Encapsulated Security Payload (ESP). Entrambi sono indipendenti dai protocolli IP. AH è il protocollo IP 51 ed ESP è il 50 (si veda /etc/protocols). Le due sezioni seguenti presentano brevemente le loro caratteristiche.