Integrazioni · MikroTik

2FA per MikroTik: approvazione sul telefono per VPN e accessi al router

Per chi usa un router MikroTik come gateway VPN o come perimetro di rete. Ogni connessione VPN e ogni accesso di amministrazione si approvano con un tocco in Notakey Authenticator, e basta il router che avete già.

Come si collega

Due vie d’accesso, una sola app sul telefono

Per la VPN il lavoro lo fa uno script RouterOS. L’utente si connette come sempre con nome utente e password, ma il firewall blocca il suo traffico finché lo script up del profilo PPP non chiede un’approvazione al server Notakey e l’utente tocca Approva sul telefono. Se rifiuta o non risponde, lo script chiude la sessione. In questa configurazione non servono né un server RADIUS né l’auth-proxy; gli script provengono dal repository notakey/mikrotik-2fa-vpn e funzionano su RouterOS 6.46.4 o successivo, 7.x compreso.

Per gli accessi al router stesso (WinBox, WebFig, SSH e l’API), il router affida il proprio servizio di login a RADIUS, e l’auth-proxy Notakey si inserisce in modo trasparente in quel percorso RADIUS. Il proxy inoltra la verifica della password al vostro server RADIUS (FreeRADIUS, Microsoft NPS, lo User Manager di MikroTik o il plugin RADIUS di Notakey), invia una richiesta di approvazione al telefono dell’amministratore e risponde Access-Accept solo se entrambe le verifiche hanno esito positivo.

In entrambi i casi, gli utenti VPN, le loro password e la configurazione del router su cui fate affidamento restano invariati. Cambia una sola cosa: la password da sola non basta più per accedere.

Cosa sapere prima di iniziare

  • La configurazione VPN basata su script copre le VPN basate su PPP (L2TP/IPsec, PPTP, SSTP). Il timeout di approvazione nello script è di 60 secondi.
  • Il timeout RADIUS predefinito di MikroTik è di 300 millisecondi. Per l’accesso al router via RADIUS impostate timeout=30s, altrimenti ogni accesso fallisce prima ancora che il telefono vibri.
  • Mantenete un account amministratore locale. RouterOS consulta prima il database utenti locale e interroga RADIUS solo per i nomi utente che non conosce: quell’account è la vostra via d’accesso se il proxy, RADIUS o il servizio Notakey non sono raggiungibili.
  • Gli amministratori autenticati via RADIUS ricevono i privilegi del default-group che scegliete, a meno che il vostro server RADIUS non restituisca un attributo Mikrotik-Group per ciascun utente. Scegliete il privilegio minimo sufficiente.
  • Se il telefono che approva la richiesta è anche il client VPN, aggiungete una regola di accept che consenta ai client in attesa di raggiungere il server Notakey mentre tutto il resto è ancora bloccato.
  • Il parser JSON dello script non gestisce le parentesi e, forse, altri segni di punteggiatura speciali nel messaggio di approvazione. Mantenete il testo del messaggio semplice.
  • L’approccio con gli script è la via più rapida per un singolo router. Molti router, VPN di altri produttori o una policy centralizzata richiedono invece la configurazione basata su RADIUS.

Da zero alla prima approvazione

  1. 01

    Create l’applicazione in Notakey

    Nella dashboard Notakey create un’applicazione per la VPN o per il router, copiatene l’Access ID e registrate i telefoni degli utenti con Notakey Authenticator. Il nome utente in Notakey deve coincidere esattamente con quello del router, perché la richiesta viene indirizzata per nome utente.

  2. 02

    Installate gli script o aggiungete il proxy come server RADIUS

    Per la VPN, incollate le librerie JParseFunctions e NotakeyFunctions in System → Scripts, associate lo script up a un profilo PPP che inserisce le nuove sessioni nell’address list vpn_pending e aggiungete la regola firewall che blocca quella lista. Per l’accesso al router, aggiungete l’auth-proxy sotto /radius con service=login e timeout=30s, quindi attivate use-radius sotto /user aaa.

  3. 03

    Provate con un utente, poi estendete a tutti

    Assegnate il profilo 2FA a un solo PPP secret, oppure aprite una seconda sessione WinBox con un nome utente RADIUS, e approvate la notifica push. Quando tutto funziona, impostate il profilo 2FA come profilo predefinito del server PPP: così ogni utente è coperto senza modificare i singoli secret.

Domande frequenti

La 2FA per la VPN MikroTik richiede un server RADIUS?
No. Per le VPN basate su PPP (L2TP/IPsec, PPTP, SSTP) uno script RouterOS chiede l’approvazione al server Notakey e il firewall trattiene la sessione finché l’utente non tocca Approva. RADIUS serve solo per gli accessi al router (WinBox, WebFig, SSH), oppure quando molti router o apparati di altri produttori devono condividere un’unica policy.
Quali versioni di RouterOS sono supportate?
Gli script del repository notakey/mikrotik-2fa-vpn funzionano su RouterOS 6.46.4 o successivo, 7.x compreso.
Perché gli accessi RADIUS falliscono prima ancora che il telefono vibri?
Il timeout RADIUS predefinito di MikroTik è di 300 millisecondi. Impostate timeout=30s nella voce /radius, così il router attende l’approvazione invece di arrendersi subito.

Guide e documentazione

Prodotti correlati

← Tutte le integrazioni

Il vostro primo accesso senza password, già questa settimana

30 minuti con un ingegnere, non una presentazione commerciale. Insieme pianificheremo come avviare un progetto pilota funzionante nel vostro ambiente VPN, SSO o Windows.