Nastavení VPN na MikroTik routeru

Bez ohledu na to, jaký MikrotTik router máte, jeho operační systém a správcovské rozhraní Router OS je vždy stejné. Tato wiki page popisuje, jak nastavit a aktivovat VPN na zařízeních MikroTik router tak, aby z výhod VPN čerpala veškerá zařízení připojená do sítě skrze tento router.

Co je VPN a k čemu slouží?

VPN (Virtual Private Network) je technologie, která umožňuje vytvořit zabezpečené a šifrované spojení mezi dvěma (a více) body přes veřejnou síť, jako je internet. Slouží k ochraně vašeho soukromí, zabezpečení dat a anonymitě při komunikaci a procházení internetem.

Hlavní benefity používání VPN jsou:

  • Zabezpečení dat: VPN šifruje vaše datové přenosy, což znamená, že i když někdo zachytí vaše internetové aktivity, nebude schopen je dešifrovat a číst.
  • Anonymita a soukromí: VPN skrývá vaši IP adresu (identifikační číslo vašeho zařízení na internetu), což utají vaši geografickou polohu a identitu. To je užitečné například při blokování obsahu na základě geografické polohy.
  • Přístup k omezenému obsahu: VPN vám může umožnit přistupovat k obsahu, který je jinak dostupný pouze v určitých zemích. Stačí si zvolit server v té zemi, a zdá se, že se k internetu připojujete z tamní lokace.
  • Ochrana na veřejných Wi-Fi sítích: VPN může být užitečný, pokud se připojujete k veřejným Wi-Fi sítím (např. v kavárnách, letištích). Pomáhá zamezit potenciálním hrozbám, jako jsou útoky hackerů.
  • Firewallová ochrana: VPN může fungovat i jako další vrstva ochrany proti škodlivému provozu, protože mnoho VPN služeb má zabudované funkce firewalu.

Proč mít VPN na úrovni routeru (tzv. router-level VPN)?

  • Ochrana všech zařízení: Když máte VPN nastavený přímo na routeru, všechna zařízení připojená k tomuto routeru automaticky využívají VPN, aniž byste museli konfigurovat VPN na každém jednotlivém zařízení zvlášť. To zahrnuje i zařízení, jako jsou televize, herní konzole, chytré domácí zařízení atd.
  • Jednodušší správa: Nemusíte se starat o konfiguraci a udržování VPN na každém zařízení zvlášť. Stačí nastavit VPN na routeru a je hotovo.
  • Úroveň ochrany pro celou domácí síť: Router-level VPN poskytuje ochranu na úrovni celé domácí sítě, což je užitečné zejména v prostředí, kde je více zařízení připojeno k síti.
  • Zabezpečení pro zařízení bez možnosti VPN: Některá zařízení, jako jsou některé chytré televize nebo zařízení s omezenými nastaveními, nemusí mít možnost nastavit VPN. Router-level VPN umožní těmto zařízením využívat ochranu VPN bez ohledu na jejich schopnosti.

Je však důležité poznamenat, že router-level VPN nemusí být vhodný pro každého a může ovlivnit rychlost a výkon vaší sítě. Navíc, pokud nechcete, aby veškerá komunikace vašich zařízení procházela přes VPN, může být konfigurace složitější.

VPN a vliv na rychlost internetu

Následující testy byly provedeny prostřednictvím webu https://rychlost.cz/. Testy byly vykonávány na zařázení Macbook Air připojeného do internetové sítě prostřednictvím 5G Wifi z routeru Mikrotik. Mikrotik router byl do 100MBit sítě napojen prostřednictvím optického kabelu. V případě aktivní VPN, v obou případech se využíval nejbližší VPN server. VPN klient byl spuštěn jak na úrovni routeru, tak i testovacího počítače. V obou případech se připojovalo k rozdílénmu VPN serveru umístěnému v témže městě.

Režim připojení Ping [ms] Download [Mbit/s] Upload [Mbit/s] IP adresa
Žádná VPN 7 104 18,9 PC
VPN v PC (Mullvad klient) 27 70,74 14,82 VPN server (PC conf)
VPN na routeru (WireGuard) 7 101,0 19,35 VPN server (router conf)
VPN na routeru i v PC 28 57,04 14,55 VPN server (PC conf)

Konfigurace a aktivace VPN na mikrotik Router

  1. Aktualizace RouterOS

    Funkce VPN je dostupná na OS Mikrotik Router od verze 7. Přihlaste se tedy do správcovského rozhranní mikrotik (url http://192.168.88.1/) a v sekci SystemPackages (http://192.168.88.1/webfig/#System:Packages.Check_For_Updates) ověřte, že máte verzi RouterOS 7 a vyšší. Jestliže Vám rozhraní ukazuje, že máte verzi 6 a přitom jste na poslední dostupné verzi, v okně Channel zvolte možnost “Upgrade”, čímž RouterOS upgradujete z OS verze 6 na OS verzi 7.

    V RouterOS 7, v rozhraní WebFig se nachází sekce WireGuard. (http://192.168.88.1/webfig/#WireGuard). Tuto sekci v následujících krocích použijeme pro konfiguraci připojení k VPN serveru a následně provedeme nastavení routeru tak, aby tohle připojení reflektoval při své funkci (komunikoval s internetem skrze daný VPN server).

  2. Safe mód

    Jelikož budeme zasahovat do konfigurace routeru, přičemž můžeme cokoliv "rozbít" a tím ztratit přístup k routeru či internetu, aktivujeme tzv. Safe mode

    Safe mód je jakési pracovní prostředí, při němž se všechny naše kroky reflektují ve funkci routeru, přičemž však, neukončíme-li řádně daný Safe mód (pokud něco pokazíme), odpojením se od routeru, aniž bychom Safe mód ukončili, dojde k automatickému návratu konfigurace routeru do stavu přes spuštěním Safe módu.

    Safe mód aktivujeme kliknutím na tlačítko Safe mode v liště panelů.

    V případě, kdy bychom něco pokazili, aniž bychom byli v Safe mmódu, typicky nejjednodušší opravou je reset Mikrotik Routeru do továrního nastavení.

  3. Aktivace VPN funkce v konfiguraci

    V souvislosti s nastavováním VPN, jako první nastavíme VPN službu v rozhraní Webfig/QuickSet (http://192.168.88.1/webfig/#Quick_Set). To provedeme zatržením pole VPN access a nastavením hesla, respektive pole VPN password.

  4. WireGuard konfigurace

    WireGuard je moderní a vysoce efektivní protokol pro vytváření virtuálních privátních sítí (VPN). Byl navržen s cílem poskytnout rychlé a bezpečné spojení mezi zařízeními přes veřejnou síť, jako je internet. V našem případě budeme prostřednictvím WireGuard protokolu propojovat náš router s VPN serverem.

    Konfigurační údaje pro připojení k VPN serveru

    Nejjednodušší cestou, jak používat VPN, je prostřednictvím veřejných poskytovatelů VPN serverů, jakým je např. služba Mullvad VPN. V případě Mullvad získáte možnost za 4.5 euro měsíčně připojit k VPN serveru až 5 zařízební současně - tedy napříkald veškerá vaše zařízení v domácnosti skrze váš Mikrotik router + ještě další 4 (nejen nositelná) zařízení.

    Výběr poskytovatele VPn služby je libovolný, co je však zásadní, to je poskytnutí WireGuard konfiguračních údajů pro připojení se k serveru VPN služby. Ty v případě Mullvad VPN lze získat v sekci Downloads/WireGuard configuration. Zde si zvolíme platformu Linux, klikneme na tlačítko Generate Key a následně zvolíme, pro připojení k jakým MullVad VPN serverům chceme konfigurační soubory vygenerovat. Zde zvolíme například Czech RepublicPraguecz-prg-wg-101. Sekce Advanced settings a Configurate Content Blocking můžeme vynechat. Jakmile máme navoleno, stiskneme tlačítko Download zip archive.

    Po rozbalení staženého .zip souboru a otevření cz-prg-wg-101.conf v textovém editoru získáme obdobné konfigurační údaje:

    [Interface]
    # Device: Awesome Device
    PrivateKey = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa (44zn)
    Address = bb.bb.bbb.bbb/bb,cccc:cccc:cccc:cccc::c:cccc/ccc
    DNS = dd.dd.d.d
    
    [Peer]
    PublicKey = eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee (44zn)
    AllowedIPs = 0.0.0.0/0,::0/0
    Endpoint = fff.ff.fff.ff:51820

    Údaje jsem záměrně pozměnil tak, aby na ně bylo jednodušší odkazovat. Port 51820 v rámci [peer] enpoint je výchozím portem, který mohl být případně změněn v sekci Advanced settings při nastavování požadavků na soubory ve službě Mullvad VPN.

  5. Nastavení sekce Wireguard - záložka Wireguard

    V rozhraní Mikrotik Routeru přejdeme do sekce WebFigWireGuard (http://192.168.88.1/webfig/#WireGuard). Zde zvolíme možnost Add New, čímž se nám otevře okno přidání nového WireGuard připojení.

    Vyplníme následující:

    • Comment - Zadáme si infomaci, že toto pravidlo bylo vytvořeno námi, kdy a za jakým účelem. Např DnešníDatum-WireguardVPN
    • Name - Zadáme název serveru (shodný s názvem otevřeného konfiguračního souboru.) Dle příkladu stažení tedy cz-prg-wg-101
    • PrivateKey - Po rozkliku šipky vložíme 44 místné PrivateKey číslo ze sekce [Interface] staženého konfiguračního souboru (v příkladovém souboru jde o hodnotu reprezentovanou písmeny a)

    Klikneme na tlačítko Apply, čímž se automaticky provede následující:

    • Přiřazení Actual MTU a Public Key
    • Spuštění rozhraní v sekcích WireGuard a interfaces
  6. Nastavení sekce Wireguard - záložka Peers

    V sekci WebFigWireGuard přepneme na záložku Peers. Kliknutím na tlačítko Add New otevřeme okno přidání nového peeru.

    Vyplníme následující:

    • Comment - Zadáme si infomaci, že toto pravidlo bylo vytvořeno námi, kdy a za jakým účelem. Např DnešníDatum-WireguardVPN
    • Interface - Přiřadíme interface vytvořený v záložce [Wireguard], z příkladu cz-prg-wg-101
    • Public Key - Zadáme 44místnou hodnotu PublicKey ze sekce [peers] staženého konfiguračního souboru (hodnota označená písmeny e v příkladovém konfiguračním souboru)
    • Endpoint - zadáme hodnotu Endpoint (část před lomítkem) z konfiguračního souboru - v příkladovém souboru jde o hodnotu fff.ff.fff.ff
    • Endpoint Port - zadáme hodnotu Endpoint portu (část za lomítkem) z konfiguračního souboru - v příkladovém souboru jde o hodnotu 51820
    • Allowed Address - zadáme hodnotu AllowedIPs z konfiguračního souboru - v příkladovém souboru jde o hodnotu 0.0.0.0/0

    Klikneme na Apply.

  7. Přidání IP adresy Wireguard Interface do routeru

    Přejdeme do sekce webfigIPAddresses (http://192.168.88.1/webfig/#IP:Addresses) a klikneme na tlačítko Add New.

    Vyplníme následující:

    • Comment - Zadáme si infomaci, že toto pravidlo bylo vytvořeno námi, kdy a za jakým účelem. Např DnešníDatum-WireguardVPN
    • Address - zadáme hodnotu Address ze sekce[Interface] konfiguračního souboru . V případě ukázkového souboru jde o hodnotu bb.bb.bbb.bbb/bb
    • Interface - Přiřadíme interface vytvořený v záložce [Wireguard], z příkladu cz-prg-wg-101

    Klikneme na Apply.

  8. Přiřazení DNS serveru

    Přejdeme do sekce webfigIPDNS (http://192.168.88.1/webfig/#IP:DNS).

    Zde rozklikneme pole Servers a přidáme hodnotu DNS ze sekce [Interface] konfiguračního souboru. V případě ukázkového souboru jde o hodnotu dd.dd.d.d. Dále se ujistíme, že je zatržená hodnota Allow Remote Requests. Poté klikneme na Apply.

  9. Routování

    Přejdeme do sekce webfigIPRoutes (http://192.168.88.1/webfig/#IP:Routes).

    Zde pomocí tlačítka Add New otevřeme okno nastavení nového routování.

    1. Routování Dst. AddressVPN server Gateway

      Po kliknutí na tlačítko Add new, vyplníme následující:

      • Comment - Zadáme si infomaci, že toto pravidlo bylo vytvořeno námi, kdy a za jakým účelem. Např DnešníDatum-WireguardVPN
      • Dst Address - Zadáme hodnotu 0.0.0.0/0
      • Gateway - Zadáme hodnotu Gateway pro WireGuard. Typicky %<nazev>, v ukázkovém případě %cz-prg-wg-101. Tato hodnota se nachází na mnoha místech v rozhraní RouterOS (např i v existujících routech v aktuálně otevřeném routing sekci), stačí dohledat a zkopírovat.

      Klikneme na Apply.

      Defaultní route

      V konfiguraci routů si povšimněme, že nyní máme nakonfigurovány 2 defaultní routy s Dst. Address o hodnotě 0.0.0.0/0. V optimálním případě bychom potřebovali původní pravidlo zakázat a ponechat pouze naše nově přidané pravidlo odkazující na VPN wireguard. Tento route bohužel prostřednictvím UI zakázat nelze, pouze smazat.

      Zatím jej tedy ponecháme a smažeme až v případě potřeby, viz bod 3 - Otestování IP. Pokud jej však budeme mazat, vytvoříme si totožný route manuálně a ihned jej přepneme do stavu Disabled. Tím, v případě nutností smazání defaultního routu, a poté potřebě deaktivace VPN routu, jej budeme moci kdykoli povolit a tím internet opětovně zprovoznit.

      V případě, že defaultní route jste smazali, můžete jej kdykoli vytvořit - jde o route s Dst. Address 0.0.0.0/0 odkazující na Immediate Gateway adresy Gateway "%ether1".

    2. Routování Peer VPN endpointRouter Dst Address (dobrovolné)

      Po kliknutí na tlačítko Add new, vyplníme následující:

      • Comment - Zadáme si infomaci, že toto pravidlo bylo vytvořeno námi, kdy a za jakým účelem. Např DnešníDatum-WireguardVPN
      • Dst Address - Zadáme hodnotu Endpoint bez portu ze sekce [Peers] konfiguračního souboru. V případě ukázkového souboru jde o hodnotu fff.ff.fff.ff.
      • Gateway - Zadáme hodnotu, kterou v seznamu existující routů (http://192.168.88.1/webfig/#IP:Routes) nalezneme jako Gateway hodnotu u řádku s Dst address rovnou hodnotě 0.0.0.0/0

      Klikneme na Apply.

  10. Nastavení NAT pravidla ve Firewall

    Přejdeme do sekce webfigIPFirewall a přepneme se na záložku NAT (http://192.168.88.1/webfig/#IP:Firewall.NAT). Zde klikneme na tlačítko Add new a vyplníme následující:

    • Chain = srcnat
    • Out. Interface = Wireguard interface, v případě ukázkové konfigurace cz-prg-wg-101
    • Action = masquerade

    Klikneme na Apply

  11. Otestujeme naši IP

    Prostřednictvím např. webu https://www.mojeip.cz/ zjistíme aktuální IP adresu (mělo by se jednat o adresu VPN serveru). Pokud se zobrazuje skutečná IP adresa počítače, VPN není správně nastaveno.

    • Jestliže máme stále původní IP adresu, je pravděpodobné nutné odstranit výchozí routing, viz bod 2.9 - Defaultní Route. Ovšem, vemte na vědomí, že v ppřípadě deaktivace VPN bude pravděpodobně nutné ostraněný route opět doplnit.
    • Jestliže máme problém s připojením, můžeme zkusit rozšířit webfigIPFirewall/FilterRules o nové pravidlo povolující tok dat do Wireguard. To se provedeme následovně:

      1. V Firewall/Filter Rules (http://192.168.88.1/webfig/#IP:Firewall) klikneme na tlačítko Add new
      2. Chain zvolíme možnost Output
      3. Dst. Address použujeme adresu Peer Endpoint z konfiguračního souboru. V případě ukázkového souboru jde o "ff.ff.fff.ff".
      4. Protocol zvolíme možnost udp.
      5. Dst. Port použujeme port z adresy Peer Endpoint z konfiguračního souboru. V případě ukázkového souboru jde o 51820.
      6. Action zvolíme Accept.
  12. Deaktivace VPN

    VPN na routeru lze aktivovat a deaktivovat jedním klikem skrze povolování a zakázání routu vedoucího na Wireguard (sekce webfigIPRoutes - http://192.168.88.1/webfig/#IP:Routes), a to na tlačítko D (Disable) popř. E (Enable).

    Samozřejmostí je, že v témže čase musíte mít povolen Defaultní route.

  13. Deaktivace Safe módu

    Jestliže vše funguje, jak má, deaktuvujeme Safe mód a tím aktuální konfiguraci routeru ztvrdíme.

Hledáte-li postup, jak aktivovat Mullvad VPN na serveru, přejděte na Wiki Instalace Mullvad VPN na Ubuntu Server v 10 krocích.