Hotspot e Captive Portal: setup, profili e bypass
Configura un Hotspot WiFi con captive portal su RouterOS v7. Gestisci profili utente con banda e sessioni, whitelist IP, walled garden e integrazione RADIUS.
L'Hotspot di RouterOS è un sistema di captive portal che intercetta il traffico HTTP/HTTPS dei client e li reindirizza a una pagina di login prima di concedere l'accesso a Internet. Ideale per reti ospiti in hotel, bar, eventi o aree pubbliche.
1. Setup guidato Hotspot
# Avviare il wizard interattivo (rispondere alle domande) /ip/hotspot/setup # Il wizard chiede: # 1. Interfaccia (es. wlan1 o bridge-guest) # 2. Indirizzo gateway locale (es. 10.5.50.1/24) # 3. Pool indirizzi DHCP (es. 10.5.50.2-10.5.50.254) # 4. Certificato SSL (opzionale, "none" per HTTP) # 5. Server SMTP per redirect mail # 6. Server DNS # 7. Hostname locale (es. hotspot.miowisp.it) # 8. Username e password admin iniziale
2. Profili utente (/ip/hotspot/user/profile)
# Profilo base: 2 Mbps, 2 ore, 1 dispositivo per account /ip/hotspot/user/profile add \ name=ospite-base \ rate-limit=2M/2M \ session-timeout=2h \ idle-timeout=15m \ shared-users=1 # Profilo premium: 10 Mbps, sessione illimitata, 3 dispositivi /ip/hotspot/user/profile add \ name=ospite-premium \ rate-limit=10M/10M \ session-timeout=0 \ idle-timeout=30m \ shared-users=3 # Aggiungere un utente /ip/hotspot/user add \ name=ospite1 \ password=hotel2024 \ profile=ospite-base \ limit-uptime=24h \ limit-bytes-total=1073741824
limit-bytes-total=1073741824 equivale a 1 GB. Il campo shared-users controlla quanti dispositivi possono usare lo stesso account simultaneamente — impostarlo a 1 per prevenire la condivisione abusiva delle credenziali.3. Bypass autenticazione (/ip/hotspot/ip-binding)
Alcuni dispositivi (stampanti, smart TV, access point) devono accedere alla rete senza autenticazione. Si usa il bypass tramite ip-binding.
# Bypass per indirizzo MAC (es. stampante) /ip/hotspot/ip-binding add \ mac-address=AA:BB:CC:DD:EE:FF \ type=bypassed \ comment="Stampante sala riunioni" # Bypass per range IP fisso (es. dispositivi IoT) /ip/hotspot/ip-binding add \ address=10.5.50.200-10.5.50.210 \ type=bypassed \ comment="Dispositivi IoT sala" # Blocco per MAC specifico /ip/hotspot/ip-binding add \ mac-address=11:22:33:44:55:66 \ type=blocked \ comment="Dispositivo bannato"
4. Walled Garden — accesso pre-autenticazione
# Permettere accesso al sito aziendale prima del login /ip/hotspot/walled-garden add \ dst-host=www.miohotel.it \ action=allow # Permettere sottodomini con wildcard /ip/hotspot/walled-garden add \ dst-host=*.miohotel.it \ action=allow # Walled garden a livello IP (es. server DNS interno) /ip/hotspot/walled-garden/ip add \ dst-address=10.0.0.53 \ protocol=udp \ dst-port=53 \ action=accept
5. Integrazione RADIUS per Hotspot
# Abilitare RADIUS sul profilo hotspot /ip/hotspot/profile set default \ use-radius=yes \ radius-accounting=yes \ radius-interim-update=5m # Il server RADIUS deve avere service=hotspot /radius add \ service=hotspot \ address=10.0.0.10 \ secret=S3gr3t0Hotspot
/ip/hotspot/user. Il server può restituire Mikrotik-Rate-Limit e Session-Timeout per personalizzare la sessione utente per utente.6. Metodi di login e accesso trial gratuito
Il profilo Hotspot definisce i metodi di login accettati. Per reti pubbliche italiane (bar, hotel) è comune offrire un accesso trial gratuito a tempo, oppure il login via credenziali consegnate alla reception.
# Login con HTTP-CHAP (password mai in chiaro) + cookie per non ri-loggare /ip/hotspot/profile set default \ login-by=http-chap,cookie \ http-cookie-lifetime=1d # Accesso TRIAL: 30 minuti gratis, poi richiede credenziali; ripetibile dopo 1 giorno /ip/hotspot/user/profile set ospite-base \ add-mac-cookie=yes \ mac-cookie-timeout=1d /ip/hotspot/profile set default \ trial-uptime-limit=30m \ trial-uptime-reset=1d \ trial-user-profile=ospite-base
7. Personalizzare la pagina di login
Le pagine HTML del captive portal stanno nella cartella hotspot del filesystem del router (login.html, status.html, ecc.). Si possono scaricare via FTP/WinBox, brandizzare con logo e colori del WISP, e ricaricare.
# Elencare i file HTML del portale /file/print where name~"hotspot" # Cambiare la directory HTML usata dal profilo (es. tema brandizzato) /ip/hotspot/profile set default html-directory=hotspot-miowisp # Dopo l'upload dei file via FTP nella cartella hotspot-miowisp
8. Best-practice di sicurezza Hotspot
- Isolare la rete ospiti dal resto: bridge/VLAN dedicata, mai sulla LAN di gestione
- Vietare il traffico client-to-client sulla rete ospiti per evitare attacchi laterali (es.
/interface/bridge portconhorizono regole di drop tra ospiti) - Usare
login-by=http-chapo HTTPS: mai PAP in chiaro su rete radio condivisa - Impostare
shared-users=1eadd-mac-cookieper scoraggiare la condivisione delle credenziali - Limitare la banda complessiva della rete ospiti con una queue, per non saturare l'uplink del WISP
- Walled garden minimale: solo i domini strettamente necessari (pagamento, sito struttura, captive detection di Apple/Android)
Continua con
Configura senza fatica con l'AI
In WispOS l'agente AI genera la configurazione RouterOS dalle tue parole e un tutor ti guida passo passo.
Prova WispOS