Integrace · MikroTik
MikroTik 2FA: schválení telefonem pro VPN i přihlášení do routeru
Pro týmy, které mají router MikroTik jako VPN bránu nebo na okraji sítě. Každé připojení k VPN i každé přihlášení administrátora se schvaluje klepnutím v aplikaci Notakey Authenticator, a stačí k tomu router, který už máte.
Jak se připojuje
Dvě cesty dovnitř, jedna aplikace v telefonu
U VPN obstará vše skript RouterOS. Uživatel se připojí uživatelským jménem a heslem jako obvykle, firewall ale jeho provoz blokuje, dokud up skript PPP profilu nepožádá server Notakey o schválení a uživatel na telefonu neklepne na Schválit. Pokud žádost odmítne nebo ji ignoruje, skript relaci ukončí. V tomto nastavení není žádný RADIUS server ani auth-proxy; skripty pocházejí z repozitáře notakey/mikrotik-2fa-vpn a běží na RouterOS 6.46.4 a novějším, včetně řady 7.x.
U přihlášení do samotného routeru (WinBox, WebFig, SSH a API) router posílá svou přihlašovací službu na RADIUS a Notakey auth-proxy stojí v této RADIUS cestě transparentně. Proxy předá kontrolu hesla vašemu RADIUS serveru (FreeRADIUS, Microsoft NPS, vlastní User Manager MikroTiku nebo RADIUS plugin Notakey), pošle žádost o schválení na telefon administrátora a Access-Accept vrátí jen tehdy, když uspějí obě kontroly.
V obou případech zůstávají uživatelé VPN, jejich hesla i konfigurace routeru, na kterou se spoléháte, beze změny. Mění se jen jedno: samotné heslo už k přihlášení nestačí.
Co vědět, než začnete
- Nastavení VPN pomocí skriptu pokrývá VPN založené na PPP (L2TP/IPsec, PPTP, SSTP). Časový limit pro schválení je ve skriptu 60 sekund.
- Výchozí RADIUS timeout na MikroTiku je 300 milisekund. Pro přihlášení do routeru přes RADIUS nastavte timeout=30s, jinak každé přihlášení selže dřív, než telefon vůbec zavibruje.
- Ponechte si lokální administrátorský účet. RouterOS nejprve prohledá lokální databázi uživatelů a RADIUS se ptá jen na neznámá uživatelská jména, takže tento účet je vaší cestou zpět, pokud bude proxy, RADIUS nebo služba Notakey nedostupná.
- Administrátoři ověření přes RADIUS dostanou oprávnění skupiny, kterou nastavíte v default-group, pokud váš RADIUS server nevrací pro každého uživatele atribut Mikrotik-Group. Zvolte nejnižší oprávnění, které ještě postačí.
- Pokud je telefon, kterým se žádost schvaluje, zároveň VPN klientem, přidejte povolovací pravidlo, aby čekající klienti dosáhli na server Notakey, zatímco vše ostatní zůstane blokováno.
- JSON parser ve skriptu si neporadí se závorkami a možná ani s dalšími speciálními znaky v textu žádosti o schválení. Text zprávy proto držte jednoduchý.
- Skript je nejrychlejší cestou pro jeden router. Při větším počtu routerů, jiných výrobcích VPN nebo potřebě centrálních pravidel zvolte raději nastavení přes RADIUS.
Od nuly k prvnímu schválení
- 01
Vytvořte aplikaci v Notakey
V dashboardu Notakey vytvořte aplikaci pro VPN nebo router, zkopírujte její Access ID a zaregistrujte telefony uživatelů v aplikaci Notakey Authenticator. Uživatelské jméno v Notakey se musí přesně shodovat s uživatelským jménem na routeru, protože žádost se adresuje podle něj.
- 02
Nainstalujte skripty, nebo přidejte proxy jako RADIUS server
Pro VPN vložte knihovny JParseFunctions a NotakeyFunctions do System → Scripts, připojte up skript k PPP profilu, který nové relace zařazuje do seznamu adres vpn_pending, a přidejte pro tento seznam pravidlo firewallu, které provoz zahazuje. Pro přihlášení do routeru přidejte auth-proxy pod /radius s service=login a timeout=30s a pak pod /user aaa zapněte use-radius.
- 03
Vyzkoušejte na jednom uživateli, pak nasaďte všem
Nasměrujte jeden PPP secret na profil s 2FA, nebo otevřete druhou relaci WinBox s RADIUS uživatelem, a schvalte push notifikaci. Jakmile vše funguje, nastavte profil s 2FA jako výchozí profil PPP serveru, aby byl pokryt každý uživatel bez úprav jednotlivých secretů.
Časté dotazy
- Potřebuje 2FA pro VPN na MikroTiku RADIUS server?
- Ne. U VPN založených na PPP (L2TP/IPsec, PPTP, SSTP) si skript v RouterOS vyžádá schválení od serveru Notakey a firewall relaci pozdrží, dokud uživatel neklepne na Schválit. RADIUS potřebujete jen pro přihlášení do routeru (WinBox, WebFig, SSH), nebo když má jednu politiku sdílet mnoho routerů či zařízení jiných výrobců.
- Které verze RouterOS jsou podporované?
- Skripty z repozitáře notakey/mikrotik-2fa-vpn běží na RouterOS 6.46.4 a novějším, včetně řady 7.x.
- Proč přihlášení přes RADIUS selže dřív, než telefon zavibruje?
- Výchozí RADIUS timeout na MikroTiku je 300 milisekund. U položky /radius nastavte timeout=30s, aby router na schválení počkal a nevzdal to hned.