Konfigurace L2TP/IPSec klienta
Konfiguraci tohoto typu VPN připojení neprovádím každý den, většinou po výměně či reinstalaci počítače. Příprava L2TP v podobě Microsoft nativního klienta přeci jen není tak intuitivní jako v případě PPTP nebo produktů třetích stran, takže jsem se rozhodl si připravit internetový tahák. Není to step-by-step návod, spíše jde o jednotlivá nakopnutí pro člověka, který již něco ví o dané problematice.
Předpoklady pro úspěšné zprovoznění L2TP klienta na Windows XP/Vista/2003/2008 jsou:
-
vědět, zdali je VPN klient umístěn za NAT či nikoliv. Pokud je za NATem, tak je nutné zjistit, zdali NAT zařízení podporuje NAT-T (NAT Traversal).
-
znát způsob autentizace počítače v IPSec protokolu (certifikáty nebo pre-shared keys)
-
znát způsob PPP uživatelské autentizace použitý v L2TP tunelu (jméno/heslo, certifikáty, smart-card)
Nyní k jednotlivým bodům.
Podpora NAT-T ve Windows
-
Windows Vista a Windows Server 2008
Je zapotřebí zkontrolovat existenci, případně vytvořit v registry DWORD záznam ve větvi HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent, který se bude jmenovat AssumeUDPEncapsulationContextOnSendRule. Tento záznam může nabývat těchto hodnot:
0 (default) = není povoleno se připojit k serverům, které jsou za NAT-T
1 = je povoleno se připojit k serverům, které jsou za NAT-T, nicméně klienti NEMOHOU být za NAT-T
2 = klient i server mohou být za NAT-T
Zdroj: http://support.microsoft.com/kb/926179 -
Windows XP se SP2
Je zapotřebí zkontrolovat existenci, případně vytvořit v registry DWORD záznam ve větvi HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\IPSec, který se bude jmenovat AssumeUDPEncapsulationContextOnSendRule. Tento záznam může nabývat těchto hodnot:
0 (default) = není povoleno se připojit k serverům, které jsou za NAT-T
1 = je povoleno se připojit k serverům, které jsou za NAT-T, nicméně klienti NEMOHOU být za NAT-T
2 = klient i server mohou být za NAT-T
Zdroj: http://support.microsoft.com/kb/818043/en-us -
Windows XP bez SP či se SP1, Windows 2000
Není třeba vytvářet výše zmíněný záznam v registry, za to je třeba zkontrolovat, zdali je na počítači klienta nainstalován hotfix KB818043
Zdroj: http://support.microsoft.com/kb/818043/en-us
Způsob autentizace počítače v IPSec protokolu
Pokud jsou použité PSK (pre-shared keys), je nutné jediné - znát je :) V případě využití PKI nastávají obvykle tyto zádrhele:
-
VPN klient musí důvěřovat certifikátu serveru. Nejčastěji jde o nedůvěru v použitou Root CA.
-
VPN klient musí mít vydaný certifikát typu IP security IKE (zkráceně IpSec).
-
klientský certifikát musí být naimportován v úložišti počítače (Local Computer), nikoliv v úložišti uživatele (Current User)!
-
klientský certifikát musí být naimportován včetně privátního klíče
-
VPN server musí důvěřovat certifikátu, který mu předkládá VPN klient.
Způsob PPP uživatelské autentizace použitý v L2TP tunelu
V případě autentizace uživatelů platí pravidla obdobná již zmíněným - certifikát musí být naimportován v úložišti uživatele, musí obsahovat privátní klíč a VPN server musí důvěřovat tomuto uživatelskému certifikátu.
Pokud se používá jméno/heslo, nastavuje se zpravidla MS-CHAP v2 a minimálně Require encryption (disconnect if server declines).
V případě, kdy se pro autentizaci uživatele používá systém jednorázových hesel (generovaných např. VASCO kalkulátorem), je však nezbytné zakázat všechny protokoly, které šifrují heslo, tj. musí se nastavit protokol PAP. Pod Advanced Security se musí zvolit maximálně Optional encryption (connect even if no encryption).
Posledním špekem může být nutnost explicitního nastavení typu z Automatic na L2TP IPSec VPN - to v případě, kdy na serveru je nakonfigurováno více možných přístupových protokolů, tedy vedle L2TP i PPTP či SSTP.