Toto je funkční mnohokrát ověřený návod na zprovoznění L2TP/IPSec VPN pro připojení z Windows, Linuxu, macOS, iOSu a Androidu na vás Mikrotik. Přistupujete pak k zařízením v lokální síti pod lokální IP a brouzdáte pod vnější IP adresou Mikrotiku po internetu. Tento návod je orientován spíš na GUI, než na konzoli.
KROK 1: FIREWALL PRAVIDLA
V první řadě se připojíme přes WinBox do Mikrotiku a povolíme pár pravidel na firewallu (IP->Firewall):
/ip firewall filter add chain=input protocol=udp in-interface=ether1 dst-port=500,1701,4500 action=accept add chain=input protocol=ipsec-esp in-interface=ether1 action=accept add chain=input protocol=ipsec-ah in-interface=ether1 action=accept
Do in-interface patří tvoje gateway, což je typicky ether1, nebo ether1-gateway. Je to kdyžtak vidět v Interfaces, nebo i terminálový našeptávač našeptává. Alternativně lze použít čistší a modernější řešení: In Interface nechat prázdné a nastavit In interface list na WAN.
Potom v GUI
otevřít IP->Firewall a vše pak přesunout nad „DROP all not coming from LAN“
pravidlo.
Kdo chce klikat v GUI, tak může popřidávat:
chain: input
protocol: UDP
in interface: tvoje gateway (ether1 / ether1-gateway)
dst port: 500,1701,4500
action: accept
chain: input
protokol: ipsec-esp
in interface: tvoje gateway (ether1 / ether1-gateway)
action: accept
chain: input
protokol: ipsec-ah
in interface: tvoje gateway (ether1 / ether1-gateway)
action: accept
Pokud chcete přesněji sledovat, kolik komunikace přiteklo, jakým portem, nebo hledáte příčinu problému s připojením, tak první pravidlo lze dále rozdělit na tři pravidla, každý pro jeden port (500, 1701 a 4500).
KROK 2: IP -> POOL
IP -> Pool, vytvořit pool pro VPN klienty.
- Typicky zmenšíme ten stávající, např. na .100-199
- A nový vytvoříme od .200 do .250.
- Schválně necháme pár volných IP adres na konci rozsahu – jednu IP napevno obsadíme PPP klientem, viz následující krok.
KROK 3: PPP -> PROFILES TAB
Přidáme nový PPP profil.
Přes konzoli:
/ppp profiles add name=my-l2tp-profile local-address=192.168.88.254 remote-address=vpnpool dns-server=192.168.88.1 change-tcp-mss=yes
Přes GUI:
name: my-l2tp-profile
local address: 192.168.88.254
remote address: vpnpool
dns server: 192.168.88.1
change TCP MSS: Yes
interface list: LAN
Do Local address napíšeme
volnou adresu na konci rozsahu – adresu, která není obsazena ani žádným poolem.
Do Remote address napíšeme pool vytvořený v předchozím kroku.
Do DNS server napíšeme IP adresu našeho routeru, tam nám DNS běží. (Pokud nám
DNS běží na jiném routeru v naší LAN síti, vložíme jeho IP.)
Do interface list vložíme LAN. Je to nutné především novějších RouterOS
(2018+), kde firewall využívá interface list pro určení, co je LAN a co je WAN.
Toto zabezpečí, že dynamický interface, který vzniká vždy při připojení VPN
klienta, se i dynamicky přidá do LAN interface listu, a tedy bude považován za
součást LAN. Bez tohoto na klientovi typicky nejde DNS a nenačítá stránky. To
proto, že i DNS požadavky jsou zahazovány pravidlem „DROP all not coming from
LAN“.
KROK 4: PPP -> INTERFACE TAB -> [L2TP SERVER] BUTTON
Aktivujeme L2TP server.
Přes konzoli:
/interface l2tp-server server set enabled=yes default-profile=my-l2tp-profile use-ipsec=yes ipsec-secret=<nejakeheslo> authentication=mschap1,mschap2
Přes GUI:
V okně PPP na záložce Interface kliknout
na tlačítko L2TP Server.
Vyskočí malé okénko L2TP Server, zaškrtnout Enabled.
autentication: mschap1, mschap2 default profile: my-l2tp-profile (profil vytvoreny v predchozim kroku) “Use IPSec”: zaškrtni a vyplň sdílené heslo pro všechny VPN uzivatele. Vytvoří to dynamický IPSec peer profil a IPSec identitu. Přeskoč další krok. Lze i nezaškrtnout, ale v tom případě další krok nepřeskakuj a vytvoř IPSec peer a IPSec identitu ručně.
KROK 5: IP -> IPSEC -> PEERS TAB A IDENTITIES TAB
Tento krok lze přeskočit.
Volba
“Use IPSec” z předchozího kroku vytvoří dynamické záznamy v IP -> IPsec -> Peers
a IP -> IPsec -> Identities
, takže není potřeba
ručně nastavovat.
Pouze pokud jsi v předchozím kroku “Use IPSec” nezaškrtnul, tak bude potřeba oba vytvořit ručně. To se hodí jen v případě, že je něco nutné nastavit nestandardně. Například je možnost omezit připojení jen z jedné konkrétní IP, ale taková věc jde typicky řešit firewallem.
Co se tam nastavuje:
address: očekávaná IP adresa protistrany
::/0 (což znamená libovolná IP a libovolný port; šlo by i 0.0.0.0/0).
Pokud se sem zadá konkrétní IP, pak pouze tato konkrétní IP se bude moci připojit.
Pokud chci omezit IP, ze které se dá připojit, zatím mi vždy stačilo omezení vytvořit ve firewallu (a tam to člověk i hledá)
port: 500 – Funguje i bez vyplněného portu, nevyplneno znamena „jakykoli port“
local address: sem nic nevyplnit (pole musi byt šedé), nebo vyplnit dvě dvojtečky jak je i vidět na screenshotu :: (funguje obojí, protože to znamená to stejné, „jakákoliv hodnota“)
auth. method: pre shared key
exchange mode: main l2tp
secret: sem napsat sdílené heslo pro všechny uživatele VPN
send initial contact: Enable
NAT traversal: Enable
generate policy: port override
hash algorithm: sha1
encryption alg.: 3des, aes128, aes256
DH group: modp1024
RouterOS 6.43 a starší má pouze záložku Peers a v ní hodně nastavení, rozdělena na 3 taby
RouterOS 6.38 a starší má všechna, navíc všechna tato nastavení dohromady na jedné záložce
Rozhraní v RouterOS 6.44.1 a novějším je rozdělené na taby Peers a Identities, ale nastavení budou obdobná.
KROK 6: IP -> IPSEC -> POLICY PROPOSALS
Upravit default položku, pokud je potřeba. V mém případě bylo vyplněno správně.
auth. algorithms: jen sha1 encryption algorithms: 3des, aes128 a aes256 PFS group: modp1024
KROK 7: VYTVOŘIT SI VPN UŽIVATELE V PPP -> SECRETS
name: tvůj nickname, nebo cokoliv, třeba vpnuser password: vymysli si heslo pro tohoto uživatele service: l2tp profile: my-l2tp-profile
KROK 8: ARP-PROXY NA BRIDGI
Ještě nastavíme poslední věc, a to aktivaci arp-proxy na bridge1. Když není zaplá, tak se sice dopingneme na samotný router (a připojíme na Winbox), ale už ne na další zařízení v lokální síti.
Otevřít
Bridge -> tab Bridge -> položka bridge1 (popř. bridge-local)
nebo ekvivalent
Interfaces -> tab Interface -> položka bridge1 (popř. bridge-local)
V dialogu stačí přepnout ARP z enabled na proxy-arp.
KROK 9: PROFIT
Hurá, VPN hotová, můžeme očekávat aktivní připojené klienty v PPP -> Active connections.
PŘIPOJÍME SE
PŘIPOJENÍ Z WINDOWS 10
Ve Win10 je to dnes už také na pár kliků. Start – napsat VPN – najde to VPN ovládací panel, a pak už jen zadat údaje: host (vnější IP adresa routeru), preshared heslo, uživatelské jméno a heslo, a uložit.
PŘIPOJENÍ Z MACOS
- Settings → Network → [+]
- vyplnit
- vnější IP adresa routeru
- jmeno uzivatele
- button Authentication settings → heslo uzivatele a dole heslo sdilene
- button Advanced → checkbox Send all traffic over VPN connection
- Apply. Ulozit, pripojit!
Návod vypůjčený odtud https://babcuvpisecek.com/sitarina/jak-nastavit-l2tp-ipsec-vpn-na-zarizenich-mikrotik-funkcni-step-by-step-navod/