Pokud jste postupovali podle našeho návodu Dvoufaktorové ověření VPN přes RADIUS, máte už vše potřebné k ochraně něčeho dalšího: přihlašování do samotného routeru. WinBox, WebFig, SSH i API se umí autentizovat přes RADIUS, a protože Notakey auth-proxy je transparentní RADIUS proxy, stačí na ni nasměrovat přihlašovací službu routeru a každé administrátorské přihlášení bude vyžadovat schválení na telefonu, ne jen heslo.
Průběh je totožný jako u VPN:
Router login ──RADIUS──▶ Notakey auth-proxy ──RADIUS──▶ your RADIUS server
│
└──▶ push notification ──▶ admin's phone
Na straně routeru se mění jen tři věci, popsané níže.
Co budete potřebovat
- Funkční auth-proxy před RADIUS serverem, nastavenou přesně podle kroků 1–3 návodu pro VPN. Podřízený RADIUS může být libovolný: FreeRADIUS, Microsoft NPS, vlastní User Manager MikroTiku nebo Notakey RADIUS plugin.
- Uživatelské jméno administrátora musí existovat v podřízeném RADIUS serveru i ve službě Notakey, se zaregistrovaným telefonem; proxy adresuje push podle uživatelského jména.
Krok 1: Zvolte, jakou push zprávu administrátoři uvidí
Proxy odesílá zprávu ze své vlastní konfigurace: jde o stejné
message_title / message_description, které se používají pro přihlášení
k VPN. Máte dvě možnosti:
- Použít VPN proxy beze změny. Nejrychlejší cesta. Administrátorská přihlášení zobrazí na telefonu text určený pro VPN (např. „VPN authentication — allow john login?“). Pro malé prostředí zcela použitelné.
- Spustit druhou instanci proxy s vlastní aplikací Notakey a zprávou typu
„Router admin login as {0}?“. U dockerizované proxy jde jen o druhý
kontejner naslouchající na jiném portu (třeba
18120) s odlišnýmNOTAKEY_ACCESS_ID; vestavěná proxy v zařízení běží pouze v jedné instanci, takže druhá poběží jako kontejner vedle ní.
Vyhrazená zpráva za těch pět minut práce stojí: administrátor, kterému se zobrazí „Router admin login“ ve chvíli, kdy se do žádného routeru nepřihlašuje, okamžitě ví, že je něco špatně – a požadavek zamítne.
Krok 2: Přidejte proxy jako RADIUS server pro přihlašování
Na routeru přidejte proxy jako RADIUS server pro službu login:
/radius
add service=login address=<proxy-address> secret=secret_to_radius_server timeout=30s
Je to řádek /radius z návodu pro VPN, jen s service=login místo
service=ppp, a platí stejné varování: výchozí časový limit RADIUS
v MikroTiku je 300 milisekund. Člověk schvalující push potřebuje nejméně
30 sekund, takže timeout=30s není volitelný. Bez něj každé přihlášení selže
dřív, než telefon vůbec zavibruje.
Krok 3: Zapněte RADIUS pro uživatele routeru
/user aaa
set use-radius=yes default-group=full
Hotovo. RouterOS se teď (přes proxy) dotazuje RADIUSu na každé přihlášení,
jehož uživatelské jméno není v lokální databázi /user.
Dvě věci je tu třeba udělat správně:
default-group volte vědomě. Uživatelé autentizovaní přes RADIUS
dostanou oprávnění této skupiny (read, write nebo full), pokud váš
RADIUS server nevrací pro jednotlivé uživatele vendor atribut Mikrotik-Group
(vendor ID 14988). Pokud jsou všichni uživatelé přicházející přes RADIUS
plnohodnotní administrátoři, default-group=full postačí; pokud ne, nastavte
nejnižší oprávnění, které stačí, a výjimkám přiřaďte Mikrotik-Group
z RADIUSu.
Ponechte si lokální administrátorský účet. RouterOS kontroluje nejdříve
lokální databázi uživatelů a na RADIUS se ptá jen u jmen, která nezná. Tento
lokální administrátor je vaší záchranou, kdyby proxy, RADIUS server nebo
služba Notakey byly někdy nedostupné. Bez něj se při výpadku do vlastního
routeru vůbec nedostanete. Dejte mu silné unikátní heslo a zvažte jeho omezení na
management adresu pomocí /user set <name> address=<mgmt-subnet>.
Otestujte, opatrně
Své funkční připojení zatím nezavírejte. Otevřete druhou relaci WinBoxu nebo SSH a přihlaste se uživatelským jménem z RADIUSu:
- Přihlašovací dialog čeká; to proxy drží výměnu otevřenou.
- Na telefon dorazí push notifikace. Schválit → jste uvnitř, s oprávněními dané skupiny. Zamítnout nebo ignorovat → přihlášení po vypršení limitu selže.
- Ověřte, že se lokální administrátor stále přihlásí běžným způsobem.
Původní relaci zavřete teprve poté, co projdou obě kontroly.
Pokud přihlášení selhává okamžitě, přestože push dorazí, zkontrolujte znovu
timeout=30s v /radius; výchozích 300 ms je nejčastější chyba. Pokud push
nedorazí vůbec, téměř jistě se liší uživatelské jméno mezi RADIUSem a službou
Notakey.
Kam to zapadá
Jedna proxy, jeden RADIUS server, a schválení na telefonu teď vyžaduje VPN i administrátorské rozhraní routeru. Stejný vzor lze rozšířit na cokoli dalšího, co mluví RADIUSem.
Související návody
- Dvoufaktorové ověření VPN přes RADIUS – kompletní nastavení auth-proxy, konfigurace proxy, na které tento návod staví
- Dvoufaktorové ověření SSH na Linuxu s pam_radius: stejná proxy chránící SSH, sudo a su
- Dvoufaktorové ověření MikroTik VPN – kompletní návod se skripty, alternativa pro samotnou VPN zcela bez RADIUSu