L2TP-VPN mot D-Link DFL-210 med Radius-autentisering

Hur sätter man bäst upp L2TP mot en Small Business Server 2008-miljö? Den frågan visade sig inte vara helt okomplicerad att besvara.

En kund vill köra L2TP mot sin nya Small Business Server 2008. Brandväggen är en D-Link DFL-210. Önskan i sig är det inget fel på, då L2TP sägs vara säkrare än PPTP då man kör över en IPSEC-tunnel. Brandväggen är inte heller något att skämmas för, trots D-Links varierande känsla för kvalitet, då den bygger på Clavisters mjukvara men utan att man blir påtvingad att köra en Windows-klient för att konfigurera den.

Första planen var att köra L2TP-servern på Small Business Servern med hjälp av adressöversättning i brandväggen. Både L2TP och PPTP är extremt enkelt att konfigurera i Windows med autentisering mot AD och allting så därför är det alternativet tilltalande. Dock visade det sig att de som utvecklar Windows bestämt att det är en säkerhetsrisk att köra L2TP med dubbel adressöversättning, d.v.s när både server och klient har privata ip-adresser bakom varsin brandvägg:

http://support.microsoft.com/kb/885348/

Det går att köra ändå, men då får man manuellt lägga in ett registervärde på varje klient. Detta gör att tjusningen med enkel konfiguration av VPN-klienter mer eller mindre försvinner, så därför ändrade vi planen.

Plan B: Terminera L2TP-klienterna i brandväggen, men sköta användarautentiseringen mot SBS-servern. DFL-210 har stöd för att köra L2TP-server, samt att autentisera användarna mot en Radius-server. Med den setupen kan användarna använda sitt domän-konto för att logga på VPN. Dessutom riskerar inte VPN-konton få lösenord som aldrig byts.

Inte heller denna konfiguration är speciellt svårt att göra. Man får se till att Windows-servern har rollen ”Network Policy and Access Services”. Själva konfigurationen görs i verktyget ”Network Policy Server”, där man lägger till en ny Radius-klient, samt en ”Network Policy” som släpper in användare som är med i t.ex. den AD-grupp man föredrar. Det enda som inte är riktigt uppenbart är att man ska välja ”Type of network access server” som ”Unspecified”.

Nytt för idag var att jag testade Microsoft Network Monitor 3.4, Microsofts egen sniffer för nätverkstrafik. Den visade sig vara riktigt användbar vid felsökning av nätverkskommunikation på servern.

En liten nackdel är att det verkar som att DFL-210 inte delar ut något domänsuffix till klienten. Om man ansluter med en dator som hör till en annan domän hittar man då inte servrarna på nätverket om man inte anger fullständiga servernamn. D-Links support bekräftar att så är fallet, men det bör inte vara något problem för vanliga användare, då domänmedlemsdatorer har domänens suffix inlagt som sitt standardsuffix.

En annan viktig lärdom som hade sparat mig några timmar var att DFL-210 inte stödjer L2TP-server på en sekundär IP-adress. Jag försökte först konfigurera L2TP-servern på en ytterligare adress på wan-interfacet. Med tcpdump såg jag att klienten aldrig fick något svar, och i brandväggens logg dök följande meddelanden upp:

Rule 06000060, LocalUndelivered

D-Links support har bekräftat att detta är en begränsning.