Tento článek popisuje nastavení Mikrotik routeru jako VPN server s použitím L2TP a IPSEC pro klienty Android a Windows.

Nastavení pravidel firewallu

V dalším textu budeme používat wan pro označení externí interface našeho routeru.

Je potřeba povolit protokoly pro ipsec a porty pro l2tp:

/ip firewall filter
add chain=input action=accept protocol=ipsec-ah in-interface=wan
add chain=input action=accept protocol=ipsec-esp in-interface=wan
add chain=input action=accept protocol=udp in-interface=wan dst-port=500,1701,4500

Nastavení profilu

Lokální adresa je ip adresa LAN interface našeho routeru. Vzdálená adresa musí být ze stejného rozsahu jako lokální. Můžeme použít pool, například ten, který používáme pro dhcp.

/ppp profile
add name="l2tp-profile" local-address=192.168.42.1 remote-address=private_pool dns-server=192.168.42.30

Nastavení L2TP serveru

Nastavíme L2TP server. Tato konfigurace automaticky nastaví i IPsec. Zvolíme kvalitní sdílené heslo (dostatečně dlouhé náhodně vygenerované) pro ipsec-secret.

/interface l2tp-server server
set default-profile=l2tp-profile enabled=yes ipsec-secret=<sdilene_heslo_pro_ipsec> use-ipsec=required

Nastavení uživatele

Pro každého uživatele vytvoříme secret. Uživatelé jsou identifikováni jménem a heslem (opět zvolte náhodně vygenerované):

/ppp secret
add name=Android password=andr01d profile=l2tp-profile service=l2tp

Volitelné - statická interface

Tento krok není nutný a záleží spíše na koncepci firewallu. Já jsem potřeboval znát interface pro l2tp interface jednotlivých klientů, které se běžně tvoří dymanicky. Tj jsou nepoužitelné pro FW. Mikrotik ale umožňuje pro každého klienta (každý secret) definovat statickou interface.

Takto vytvoříme interface jménem Android.

/interface l2tp-server
add name=Android user=Android

Několik poznámek

Doporučuju nastavovat mikrotik v terminálu, protože Winbox i Webfig mají různá nastavení umístěna různě. A než hledat, co se liší od terminálu a kde to je, je lepší používat rovnou terminál. Kde navíc v každé sekci funguje příkaz export, takže snadno můžeme zkontrolovat nastavení.

Klienti

Pro nastavení klienta potřebujeme znát:

  • dns jméno nebo ip adresu l2tp serveru
  • sdílené heslo pro ipsec (viz Nastavení L2TP serveru)
  • uživatelské jméno a heslo (viz Nastavení uživatele)
AndroidWindows