IPSec, een afkorting voor Internet Protocol Security, is een reeks cryptografische protocollen die het dataverkeer via Internet Protocol (IP)-netwerken beschermen.
IP-netwerken – inclusief het World Wide Web – ontberen versleuteling en privacybescherming. IPSec VPN's pakken deze zwakte aan door een raamwerk te bieden voor gecodeerde en privécommunicatie op internet.
Hier wordt IPSec nader bekeken en hoe het werkt met VPN-tunnels om gegevens via onbeveiligde netwerken te beschermen.
Een korte geschiedenis van IPSec
Toen het internetprotocol begin jaren tachtig werd ontwikkeld, had veiligheid geen hoge prioriteit. Naarmate het aantal internetgebruikers blijft groeien, neemt ook de behoefte aan hoge beveiliging toe.
Om aan deze behoefte te voldoen sponsorde de National Security Agency halverwege de jaren tachtig de ontwikkeling van beveiligingsprotocollen in het kader van het Secure Data Network Systems-programma. Dit leidde tot de ontwikkeling van het Layer 3 Security Protocol en uiteindelijk het Network Layer Security Protocol. In de jaren negentig hebben veel ingenieurs aan dit project gewerkt en uit deze inspanningen is IPSec voortgekomen. IPSec is nu een open source standaard en maakt deel uit van IPv4.
Hoe IPSec werkt

IPSec werkt met VPN-tunnels om privé-tweerichtingsverbindingen tussen apparaten tot stand te brengen
Wanneer twee computers een VPN- verbinding tot stand brengen , moeten ze overeenstemming bereiken over een reeks beveiligingsprotocollen en versleutelingsalgoritmen, en cryptografische sleutels uitwisselen om versleutelde gegevens te ontgrendelen en te bekijken.
Dit is waar IPSec in het spel komt. IPSec werkt met VPN-tunnels om privé-tweerichtingsverbindingen tussen apparaten tot stand te brengen. IPSec is geen enkel protocol; in plaats daarvan is het een complete set protocollen en standaarden die samenwerken om de vertrouwelijkheid, integriteit en authenticiteit van internetdatapakketten die door een VPN-tunnel gaan, te helpen garanderen.
Hier ziet u hoe IPSec een veilige VPN-tunnel creëert:
- IPSec verifieert gegevens om de pakketintegriteit tijdens verzending te garanderen.
- IPSec versleutelt internetverkeer via VPN-tunnels zodat de gegevens niet kunnen worden bekeken.
- IPSec beschermt gegevens tegen replay-aanvallen, die kunnen leiden tot ongeautoriseerde logins.
- IPSec maakt veilige uitwisseling van cryptografische sleutels tussen computers mogelijk.
- IPSec biedt twee beveiligingsmodi: Tunnel en Transport.
IPSec VPN beschermt gegevens die worden verzonden van host naar host, netwerk naar netwerk, host naar netwerk en gateway naar gateway (de zogenaamde tunnelmodus, wanneer het volledige IP-pakket wordt gecodeerd en geverifieerd).
IPSec-protocollen en ondersteunende componenten
De IPSec-standaard is onderverdeeld in verschillende kernprotocollen en ondersteunende componenten.
Kern IPSec-protocol
- IPSec Authentication Header (AH) : Dit protocol beschermt de IP-adressen van computers die deelnemen aan het gegevensuitwisselingsproces, om ervoor te zorgen dat databits tijdens het verzenden niet verloren gaan, worden gewijzigd of beschadigd. AH verifieert ook dat de persoon die de gegevens verzendt deze ook daadwerkelijk heeft verzonden, waardoor de tunnel wordt beschermd tegen indringing door ongeautoriseerde gebruikers.
- Encapsulated Security Payload (ESP) : het ESP-protocol biedt het encryptiegedeelte van IPSec, waardoor de veiligheid van het dataverkeer tussen apparaten wordt gegarandeerd. ESP codeert datapakketten/payload, authenticeert de payload en de oorsprong ervan binnen de IPSec-protocolsuite. Dit protocol vervormt effectief het internetverkeer, zodat iedereen die in de tunnel kijkt er niets in kan zien.
ESP codeert en authenticeert gegevens, terwijl AH alleen gegevens authenticeert.
Componenten die IPSec ondersteunen
- Beveiligingsassociaties (SA) : Beveiligingsassociaties en -beleid stellen verschillende beveiligingsovereenkomsten vast die worden gebruikt bij uitwisselingen. Deze overeenkomsten kunnen bepalen welk type codering en hash-algoritme moet worden gebruikt. Dit beleid is vaak flexibel, waardoor apparaten kunnen beslissen hoe ze zaken willen aanpakken.
- Internet Key Exchange (IKE) : Om encryptie te laten werken, moeten de computers die betrokken zijn bij de uitwisseling van privécommunicatie een encryptiesleutel delen. Met IKE kunnen twee computers veilig encryptiesleutels uitwisselen en delen bij het tot stand brengen van een VPN-verbinding.
- Encryptie- en hashing-algoritmen : cryptografische sleutels werken met hash-waarden, gegenereerd met behulp van een hash-algoritme. AH en ESP zijn zeer algemeen; ze specificeren geen specifiek coderingstype. IPsec gebruikt echter vaak Message Digest 5 of Secure Hash Algorithm 1 voor codering.
- Bescherming tegen replay-aanvallen : IPSec bevat ook standaarden om te voorkomen dat datapakketten die deel uitmaken van een succesvol inlogproces opnieuw worden afgespeeld. Deze standaard voorkomt dat hackers afgespeelde informatie gebruiken om zelf inloggegevens te kopiëren.
IPSec is een complete VPN-protocoloplossing en kan ook dienen als encryptieprotocol in L2TP en IKEv2.
Tunnelmodi: tunnel en transport
![Wat is IPSec? Wat is IPSec?]()
IPSec verzendt gegevens via de tunnel- of transportmodus
IPSec verzendt gegevens via de tunnel- of transportmodus. Deze modi hangen nauw samen met het gebruikte type protocol, AH of ESP.
- Tunnelmodus : in de tunnelmodus is het hele pakket beschermd. IPSec verpakt het datapakket in een nieuw pakket, codeert het en voegt een nieuwe IP-header toe. Het wordt vaak gebruikt in site-to-site VPN-opstellingen.
- Transportmodus : in de transportmodus blijft de originele IP-header behouden en is deze niet gecodeerd. Alleen de lading en de ESP-trailer zijn gecodeerd. De transportmodus wordt vaak gebruikt in client-naar-site VPN-opstellingen.
Voor VPN's is de meest voorkomende IPSec-configuratie die u ziet ESP met authenticatie in tunnelmodus. Deze structuur zorgt ervoor dat internetverkeer veilig en anoniem binnen de VPN-tunnel over onbeveiligde netwerken kan bewegen.
Dus wat is het verschil tussen de tunnel- en transportmodus in IPsec?
De tunnelmodus in IPsec wordt gebruikt tussen twee speciale routers, waarbij elke router fungeert als het ene uiteinde van een virtuele "tunnel" door het openbare netwerk. In de tunnelmodus bevat de initiële IP-header de eindbestemming van het gecodeerde pakket, samen met de pakketpayload. Om tussenliggende routers te laten weten waar ze pakketten moeten doorsturen, voegt IPsec een nieuwe IP-header toe. Aan elk uiteinde van de tunnel decoderen routers IP-headers om pakketten op hun bestemming af te leveren.
In de transportmodus wordt de payload van elk pakket gecodeerd, maar de initiële IP-header niet. Daarom kunnen tussenliggende routers de eindbestemming van elk pakket zien, tenzij een afzonderlijk tunnelprotocol (zoals GRE) wordt gebruikt.
Welke poort gebruikt IPsec?
Een netwerkpoort is de virtuele locatie waar gegevens binnen de computer terechtkomen. Poorten zijn de manier waarop de computer verschillende processen en verbindingen bijhoudt. Als gegevens naar een bepaalde poort gaan, weet het besturingssysteem van de computer tot welk proces deze behoren. IPsec gebruikt meestal poort 500.
Welke invloed heeft IPsec op MSS en MTU?
MSS en MTU zijn twee metingen van pakketgrootte. Pakketten kunnen slechts een bepaalde grootte (in bytes) bereiken voordat computers, routers en switches ze niet kunnen verwerken. MSS meet de payloadgrootte van elk pakket, terwijl MTU het volledige pakket meet, inclusief headers. Pakketten die de netwerk-MTU overschrijden, kunnen worden gefragmenteerd, dat wil zeggen in kleinere pakketten worden opgedeeld en vervolgens opnieuw worden samengesteld. Pakketten die de MSS overschrijden, worden eenvoudigweg verwijderd.
Het IPsec-protocol voegt een aantal headers en trailers toe aan pakketten, die allemaal een paar bytes in beslag nemen. Voor netwerken die IPsec gebruiken, moeten de MSS en MTU dienovereenkomstig worden aangepast, anders worden pakketten gefragmenteerd en enigszins vertraagd. Normaal gesproken is de MTU voor een netwerk 1.500 bytes. De normale IP-header is 20 bytes lang en de TCP-header is ook 20 bytes lang, wat betekent dat elk pakket 1.460 bytes aan payload kan bevatten. IPsec voegt echter een Authentication Header, ESP header en gerelateerde trailers toe. Ze voegen 50 - 60 bytes toe aan een pakket of meer.