Hoe stel je een L2TP/IPSec VPN-server in en maak je er verbinding mee op Windows?

Problemen met VPN-verbindingen op Windows kunnen behoorlijk frustrerend zijn, vooral als je probeert verbinding te maken met een L2TP/IPSec-server. Meestal verschijnen de foutmeldingen met een cryptische code en is het niet altijd duidelijk wat er precies mis is. Wat het nog vervelender maakt, is dat het probleem vaak ligt bij geblokkeerde netwerkpoorten, onjuiste registerinstellingen of NAT-gerelateerde problemen als je server zich achter een router bevindt. Daarom volgt hier een overzicht van praktische stappen om problemen op te lossen en hopelijk je VPN weer aan de praat te krijgen, of je nu te maken hebt met verbindingsfouten, NAT-problemen of conflicten.

Hoe los je L2TP/IPSec VPN-verbindingsproblemen op in Windows?

Oplossing 1: Zorg ervoor dat de juiste poorten in de firewalls openstaan.

Als je VPN-verbinding niet tot stand komt, controleer dan eerst de netwerkpoorten. Windows of je router/firewall blokkeert mogelijk het benodigde verkeer. L2TP/IPSec heeft specifiek de volgende poorten open nodig:

  • UDP 1701 — L2TP en Layer 2 Forwarding Protocol
  • UDP 500 — IKE voor het beheren van encryptiesleutels
  • ESP (protocol 50) — de kern van IPsec-encryptie
  • UDP 4500 — NAT-T, cruciaal als de server zich achter een NAT-apparaat bevindt.

Op Windows Server moet u ervoor zorgen dat deze poorten zijn toegestaan ​​in Windows Defender Firewall met Geavanceerde Beveiliging. Dit betekent dat u inkomende regels voor elke poort moet aanmaken of een vooraf geconfigureerde VPN-regel moet inschakelen die ze allemaal dekt.​​Soms is een simpele firewall-configuratiefout de oorzaak en lost het openen van een poort het verbindingsprobleem op.

Oplossing 2: Wijzig het register om NAT (NAT-T) te ondersteunen

Wanneer de server zich achter een router of NAT-apparaat bevindt, ondersteunt Windows IPsec-passthrough niet standaard, omdat IPsec (ESP) zonder hulp niet door een NAT-router heen kan. Je moet het register aanpassen om NAT-traversal (NAT-T) in te schakelen. Het is een veelvoorkomend probleem, en het is vreemd dat Windows dit niet standaard heeft ingeschakeld.

Ga naar het register via:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent

Of, als u een oudere Windows-versie gebruikt (zoals XP of Server 2003), bevindt het zich mogelijk onder:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IPSec

Zoek naar of maak een DWORDparameter met de naam AssumeUDPEncapsulationContext onSendRule en stel de waarde ervan in op 2. Dit geeft Windows aan dat zowel de client als de server zich mogelijk achter NAT bevinden.

reg add "HKLM\SYSTEM\CurrentControlSet\Services\PolicyAgent" /v AssumeUDPEncapsulationContextOnSendRule /t REG_DWORD /d 2 /f

Onthoud dat je dit zowel op de server als op de client moet doen als beide zich achter NAT bevinden. Start na het bewerken de computer opnieuw op en test vervolgens of de VPN-verbinding succesvol tot stand kan komen. Het werkte bij sommige configuraties, maar niet bij alle – omdat Windows hier nogal eigenaardig in is – maar het is het proberen waard.

Oplossing 3: Schakel L2TP/IPsec in met de juiste registerinstellingen voor gelijktijdige verbindingen.

Soms weigert Windows nieuwe VPN-verbindingen als er al een actief is – een bug die al heel lang bestaat. Als je probeert verbinding te maken vanaf een tweede apparaat terwijl er al een VPN actief is op het LAN, krijg je fouten zoals 809 of 789. Het is onduidelijk waarom Windows zo streng is met meerdere verbindingen, maar hier is hoe je het kunt oplossen.

Je moet deze registerinstellingen aanpassen:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters

Stel AllowL2TPWeakCrypto in op 1 (waarmee ondersteuning voor zwakke cryptografische algoritmen zoals MD5 en DES wordt ingeschakeld) en ProhibitIpSec op 0 (waarmee IPsec-versleuteling wordt toegestaan).

reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters" /v AllowL2TPWeakCrypto /t REG_DWORD /d 1 /f reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Rasman\Parameters" /v ProhibitIpSec /t REG_DWORD /d 0 /f

Soms staat Windows standaard geen meerdere gelijktijdige L2TP-verbindingen toe. Door dit aan te passen, wordt Windows toleranter, hoewel dit de beveiliging enigszins kan verzwakken als er gebruik wordt gemaakt van zwakke cryptografie. Maar goed, als je vanaf meerdere apparaten verbinding probeert te maken, is deze oplossing vaak de enige manier.

Alternatieve aanpak: Vereenvoudig door IPsec uit te schakelen.

Als je nog steeds tegen problemen aanloopt, kun je IPsec volledig uitschakelen voor je VPN-verbinding. Dit is echter meer een noodoplossing. Wijzig de parameter ProhibitIpSec in het register naar 1. Dit geeft Windows de opdracht om L2TP te gebruiken zonder IPsec-versleuteling. De beveiligingsvoetafdruk is kleiner, maar soms is de verbinding minder streng en kan deze methode wel werken waar strengere configuraties falen.

Extra tips: Zorg ervoor dat uw VPN-server uw instellingen ondersteunt.

Soms ligt het probleem niet bij uw Windows-computer, maar bij de server zelf. Controleer of de server is geconfigureerd om L2TP/IPSec te accepteren, met de juiste vooraf gedeelde sleutel (PSK) of certificaten. Controleer ook of NAT-T is ingeschakeld aan de serverzijde als deze zich achter een router bevindt, om verbindingsproblemen te voorkomen.

Oh, en als je VPN op een Windows Server draait, controleer dan de firewallregels daar nog eens.Windows Firewall met geavanceerde beveiliging zou inkomende verbindingen op die poorten moeten toestaan.

En mocht je je VPN-instellingen willen controleren, dan kun je PowerShell gebruiken:

Get-VpnConnection

Met dit commando worden alle actuele VPN-profielen en hun configuraties weergegeven, wat helpt om te controleren of alles correct is ingesteld.

Op sommige machines werken deze oplossingen niet direct. Mogelijk moet u de computer een paar keer opnieuw opstarten of de configuratie aanpassen. Windows is een beetje eigenzinnig met VPN’s – soms kan het aanpassen van het register iets anders kapotmaken, dus maak eerst een back-up als u zich zorgen maakt. Maar in geval van nood helpt dit meestal wel om in ieder geval een basisverbinding weer tot stand te brengen, zelfs achter NAT of met meerdere apparaten die proberen verbinding te maken.

Samenvatting

  • Open de juiste netwerkpoorten: UDP 1701, UDP 500, UDP 4500 en ESP 50.
  • NAT ondersteunen met een registeraanpassing naar AssumeUDPEncapsulationContext onSendRule=2
  • Corrigeer de limieten voor gelijktijdige verbindingen door AllowL2TPWeakCrypto en ProhibitIpSec te bewerken.
  • Zorg voor serverondersteuning voor NAT-T, correcte PSK/certificaten en firewallregels.

Samenvatting

Het configureren van L2TP/IPSec VPN’s op Windows is niet altijd even eenvoudig: poorten, registeraanpassingen, NAT-ondersteuning en het rommelen met registerinstellingen spelen allemaal een rol. Soms is het gewoon een kwestie van uitproberen, maar deze stappen behandelen de meeste veelvoorkomende valkuilen. Houd er rekening mee dat u na registerwijzigingen uw computer opnieuw moet opstarten en controleer uw firewallregels nogmaals. Het is misschien wat omslachtig, maar als de verbinding tot stand komt, is het de moeite absoluut waard.

Hopelijk biedt dit wat meer duidelijkheid voor iemand die kampt met haperende of uitvallende VPN-verbindingen. Ik hoop dat dit helpt!