Wat is IPsec en wat doet het voor een VPN?

Het Internet Engineering Task Force (IETF) heeft IPsec ontwikkeld als reactie op de beveiligingskwetsbaarheden van het Internet Protocol (IPv4). Het was geen moeilijke taak voor iemand om gegevens op het internet die via IPv4 werden verzonden, te onderscheppen. Daarom kwam IPsec in beeld. IPsec pakt de beveiligingstekortkomingen van IPv4 aan door gebruik te maken van een reeks beveiligingsprotocollen om te zorgen dat communicatie over het internet veilig is. 

Werkend op de netwerklaag van het Open Systems Interconnection (OSI) model, kun je IPsec gebruiken om veilig te communiceren tussen netwerken en hosts. Als gevolg hiervan vinden IPsec-implementaties plaats in host-naar-host, netwerk-naar-host en netwerk-naar-netwerk communicaties. 

IPsec is populair in elke industrie die end-to-end beveiliging tussen twee eindpunten vereist, vooral de VPN-industrie. Naast andere protocollen gebruiken VPN’s IPsec om gegevens tijdens het transport te beveiligen, omdat het gegevensintegriteit, vertrouwelijkheid en authenticatie biedt. Dit stuk richt zich op het begrijpen van IPsec en waarom VPN’s erop vertrouwen om het internetverkeer van hun consumenten te beschermen. 

Wat is IPsec?

Internet Protocol Security (IPsec) is een protocol suite of een groep protocollen die samenwerken om een beveiligde verbinding tussen computers over het internet op te zetten. IPsec biedt versleutelde verbindingen, waardoor derden de inhoud van de communicatie tussen de betrokken computers niet kunnen zien. Naast versleuteling biedt IPsec ook een mechanisme voor het authenticeren van datapakketten om zeker te zijn dat ze van de juiste bron komen. Laten we hieronder kijken naar de standaard beveiligingsfuncties die IPsec biedt. 

1. Authenticatie: Door gegevens aan beide uiteinden van de verbinding te authenticeren, zorgt IPsec ervoor dat de eindpunten betrouwbaar zijn voordat de gegevensoverdracht begint. 

2. Vertrouwelijkheid: Door end-to-end data-encryptie te bieden, zorgt IPsec ervoor dat kwaadwillende entiteiten het netwerk niet kunnen infiltreren, gegevens stelen of afluisteren op het netwerk. 

3. Integriteit: IPsec gebruikt hashing om de integriteit van gegevens te controleren, waarbij het ervoor zorgt dat gewijzigde gegevens onderschept worden. 

4. Anti-replay: Door gebruik te maken van volgnummers, zorgt IPsec ervoor dat kwaadwillenden geen datapakketten kunnen repliceren om het netwerk te infiltreren. 

Je kunt IPsec gebruiken tussen twee hosts (host-naar-host), tussen twee netwerken/gateways (netwerk-naar-netwerk), of tussen een host en een netwerk (netwerk-naar-host). Daarnaast vind je de implementatie van IPsec in beveiligingsdomeinen zoals Virtual Private Networks (VPN’s), routeringsbeveiliging en beveiliging op applicatieniveau. IPsec alleen is mogelijk niet effectief genoeg voor hoogwaardige beveiliging, daarom wordt het in sommige gevallen samen met andere protocollen geïmplementeerd. 

IPSec Protocollen

Er zijn drie protocollen die deel uitmaken van de IPsec-suite. Deze protocollen werken samen om gegevensauthenticatie, integriteit, vertrouwelijkheid en anti-replay te bieden. Laten we hieronder naar ze kijken.

1. Authenticatie Header (AH)

De belangrijkste taak van de Authentication Header is het authenticeren van IP-datapakketten. Met behulp van hashfuncties en een geheime sleutel valideert het elk pakket van beide uiteinden van de VPN-tunnel. Dit voorkomt dat kwaadwillende entiteiten gegevens wijzigen en deze als echt presenteren. De AH biedt authenticatie, integriteit en bescherming tegen replay-aanvallen. Het biedt geen vorm van encryptie.

2. Encapsulating Security Payload (ESP)

De belangrijkste taak van het Encapsulating Security Payload is het versleutelen van datapakketten. Afhankelijk van de IPsec-modus, versleutelt het alleen de payload of zowel de payload als de IP-header. Transportmodus staat ESP alleen toe om het transportlaagsegment en de payload te versleutelen, waarbij de IP-header onversleuteld blijft. Aan de andere kant versleutelt ESP in tunnelmodus de IP-header samen met het transportlaagsegment en de payload. De ESP biedt authenticatie, integriteit, vertrouwelijkheid en bescherming tegen replay-aanvallen. 

3. Security Association (SA)

IPSec gebruikt beveiligingsassociaties om beveiligingsprotocollen vast te stellen die de eindpunten gebruiken om encryptiealgoritmen en sleutels te onderhandelen. In eenvoudige termen is een beveiligingsassociatie gewoon een manier voor de twee eindpunten om overeen te komen over parameters die de IPsec-tunnel veilig zullen stellen en houden. 

Beveiligingsassociaties van IPsec vereisen drie dingen: een Security Parameter Index (SPI), het bestemmings-IP-adres en het IPsec-protocol (AH of ESP). SA’s werken in één richting; daarom heb je twee SA’s (uitgaand en inkomend) nodig voor elk eindpunt. IPsec gebruikt het Internet Security Association and Key Management Protocol (ISAKMP) om SA’s te vestigen.

Hoe Werkt IPsec?

Hieronder bekijken we hoe IPsec een beveiligde verbinding tot stand brengt tussen twee eindpunten en gegevens beschermt vanaf de oorsprong tot de bestemming. 

1. Sleuteluitwisseling

Het Internet Key Exchange Protocol (IKE) regelt de onderhandeling van sleutels en algoritmen die beide eindpunten zullen gebruiken. Als gevolg hiervan is het een essentieel proces bij het gebruik van IPsec om een veilige en betrouwbare verbinding tot stand te brengen. IKEv1 heeft twee fasen: IKE fase 1 en IKE fase 2.

Het doel van IKE-fase 1 is dat de eindpunten voorstellen uitwisselen over hoe ze de verbinding tussen hen kunnen authenticeren en beveiligen. Ze wisselen voorstellen uit voor beveiligingsparameters zoals encryptiealgoritmen, authenticatiealgoritmen, Diffie-Hellman (DH)-groep en vooraf gedeelde sleutels of RSA/DSA-certificaten. Als gevolg hiervan moet aan het einde van deze fase ten minste één bidirectionele ISAKMP SA tussen peers zijn vastgesteld. Je kunt fase 1 gebruiken in ofwel de Hoofdmodus (in totaal zes berichten tussen eindpunten) of de Agressieve Modus (in totaal drie berichten tussen eindpunten). 

IKE-fase 2 begint nadat de eindpunten of peers een veilige verbinding hebben opgezet. In deze fase onderhandelen de eindpunten over SA’s die de gegevens die door de IPsec-tunnel gaan veilig zullen houden. Een beveiligingsprotocol (ESP of AH), encryptiealgoritmen en authenticatiealgoritmen worden in deze fase onderhandeld. Daarnaast kunnen ook een Diffie-Hellman (DH) groep en Perfect Forward Secrecy deel uitmaken van het voorstel. 

IKEv2, de bijgewerkte versie van IKEv1, heeft geen fase 1 of fase 2. De eindpunten wisselen echter vier berichten uit om beveiligingsparameters voor de IPsec-tunnel te onderhandelen. VPN’s geven de voorkeur aan het gebruik van IKEv2 omdat het makkelijker te configureren is en veiliger.

2. Pakket Headers en Trailers

Nadat de eindpunten het eens zijn geworden over de beveiligingsparameters, kunnen ze nu gegevens naar elkaar verzenden. Eerst moeten IP-pakketten worden ingekapseld. Afhankelijk van of je tunnel- of transportmodus gebruikt, voegt IPsec de benodigde kop(pen) en staart(en) toe aan elk pakket dat vervoerd moet worden. 

3. Authenticatie en Encryptie

IPsec past authenticatie en encryptie toe met behulp van AH en ESP. AH biedt geen encryptie maar authenticeert datapakketten. Aan de andere kant biedt ESP zowel encryptie als authenticatie. 

4. Transmissie

IP-pakketten kunnen nu via de IPsec-verbinding naar de eindpunten worden verplaatst met behulp van een transportprotocol (bij voorkeur UDP).

5. Decryptie

Decryptie vindt plaats aan het ontvangende einde van de verbinding. Eenmaal gedecodeerd, verplaatst de data zich naar de applicatie die het nodig heeft. 

IPsec Transportmodus Vs. Tunnelmodus

IPsec heeft twee bedrijfsmodi: Tunnel en Transport. Laten we hieronder bekijken wat elk van hen onderscheidt van de ander.

Vervoerswijze

Een IPsec-circuit dat in transportmodus werkt, is meestal een directe verbinding tussen twee hosts. De eindpunten versleutelen of authenticeren niet het volledige IP-pakket in transportmodus, alleen de payload. Omdat de IP-header niet wordt gewijzigd of ingekapseld, kunnen apparaten van derden buiten de twee eindpunten de bestemming en herkomst van de pakketten zien. 

Tunnelmodus

Een IPsec-circuit dat in tunnelmodus werkt, is meestal tussen twee gateways (netwerk-naar-netwerk communicatie): twee routers of een router en een firewall. Je kunt het echter ook gebruiken voor host-naar-host en host-naar-netwerk communicaties. In deze modus wordt niet alleen de payload versleuteld; het hele IP-pakket wordt versleuteld en geauthenticeerd. VPN’s gebruiken IPsec tunnelmodus omdat het het hele netwerk beveiligt met end-to-end encryptie en niet alleen de gegevens die erdoorheen gaan. 

IPsec in een VPN

Aangezien een VPN een manier biedt waarmee je veilig kunt communiceren over het internet, is het alleen maar logisch dat IPsec een van de protocollen is die VPN’s gebruiken. Wanneer VPN’s IPsec gebruiken, gebruiken ze meestal ESP in tunnelmodus vanwege de end-to-end encryptie die het biedt. In sommige gevallen zie je ofwel IKEv2/IPsec of IKEv2 als VPN-protocollen die je kunt gebruiken. Ze betekenen beide hetzelfde aangezien IKEv2 de IPsec tunnelmodus gebruikt om een veilige verbinding te vestigen. 

Daarnaast combineren VPN’s minder veilige protocollen zoals L2TP met IPsec om veilige verbindingen te garanderen. Dat is waarom je L2TP/IPsec als een optie ziet in sommige VPN-applicaties. Laten we nu kijken naar de fundamentele manier waarop IPsec werkt wanneer je op de verbindingsknop klikt in je VPN-applicatie.

1. Zodra je op de “Verbinden” knop klikt, begint IPsec met het opzetten van een veilige verbinding met behulp van ESP en Tunnelmodus. 

2. De eindpunten van de tunnel komen overeen over beveiligingsparameters met behulp van Security Associations (SAs). 

3. Gegevens kunnen nu veilig van het ene naar het andere uiteinde worden verplaatst omdat encryptie en decryptie aan beide uiteinden plaatsvinden. Het ene uiteinde ontvangt IP-pakketten, versleutelt ze en stuurt ze naar het andere uiteinde. Aan het ontvangende uiteinde ontsleutelt het andere uiteinde de IP-pakketten en stuurt ze naar de benodigde applicatie. 

Het bovenstaande is geen uitgebreide uitleg, maar het zou je een idee moeten geven van hoe IPsec werkt in een VPN.

Conclusie

IPsec is belangrijk als je gegevensvertrouwelijkheid, integriteit en authenticatie tussen twee eindpunten nodig hebt. De meeste VPN’s bevatten IPsec (IKEv2/IPsec of L2TP/IPsec) als onderdeel van de veilige VPN-protocollen die ze aanbieden.  We hopen dat dit artikel je helpt om IPsec te begrijpen en hoe het een belangrijke protocol suite is die VPN’s gebruiken om communicatie op het internet te beveiligen.