Se il tuo SSID deve autenticare dispositivi “non‑802.1X” tramite MAC e il backend è Windows NPS, ma in cattura non vedi alcun Access‑Request RADIUS, questa guida pratica ti accompagna dalla diagnosi all’attivazione di MAC Authentication Bypass in modo sicuro e ripetibile.
Scenario e sintomi
Un’infrastruttura Wi‑Fi o cablata deve ammettere dispositivi che non supportano 802.1X (badge reader, stampanti, dispositivi IoT, telefoni semplici). L’obiettivo è usare il MAC come identità su un SSID o su una porta switch. Il server di autenticazione è Windows Network Policy Server. In Wireshark, però, non compaiono pacchetti RADIUS di tipo Access‑Request o Access‑Accept: il NPS non sembra essere coinvolto e i client restano in stato di isolamento o non ottengono connettività.
Cause radice individuate
- Mancata mappatura dell’identità su NPS: per impostazione predefinita, NPS non tratta il MAC come nome utente. È necessario attivare la chiave di registro User Identity Attribute per accettare un attributo RADIUS contenente il MAC (tipicamente Calling‑Station‑Id) come identità valida.
- Policy incomplete o non corrispondenti: la Network Policy non intercetta le richieste, il gruppo AD non è associato, o il metodo di autenticazione non è quello atteso. Con MAC Authentication Bypass serve l’autenticazione non cifrata PAP affinché il dispositivo di rete possa inviare il MAC come credenziale.
- Funzione MAB disabilitata sugli apparati: se lo switch o l’access point non avvia la procedura MAB, non verrà mai inviato un RADIUS Access‑Request verso NPS, quindi in cattura non vedrai traffico RADIUS.
Soluzione rapida passo per passo
Passo | Azione | Scopo |
---|---|---|
1 | In Active Directory crea un account per ogni dispositivo: • Username = MAC (formato coerente es. AABBCCDDEEFF) • Password = MAC Inserisci l’account in un gruppo dedicato, ad esempio MAC Bypass. | Fornire credenziali che NPS possa validare contro AD. |
2 | Sul server NPS aggiungi o modifica la chiave di registro:HKLM\SYSTEM\CurrentControlSet\Services\RemoteAccess\Policy User Identity Attribute = 0x1F (DWORD = 31).Riavvia il servizio NPS. | Abilitare il riconoscimento del MAC come identità (da Calling‑Station‑Id). |
3 | Crea o modifica una Network Policy denominata Mac Bypass: • Conditions: User group = gruppo AD del passo 1 (oppure condizione su NAS‑Identifier o Called‑Station‑Id per restringere a uno specifico SSID). • Constraints: abilita Unencrypted authentication (PAP). • Settings opzionali: per VLAN dinamica imposta Tunnel‑Type = Virtual LANs (13) Tunnel‑Medium‑Type = 802 (6) Tunnel‑Private‑Group‑ID = ID VLAN | Far combaciare le richieste con la policy e, se serve, assegnare la VLAN. |
4 | Su switch o access point abilita MAC Authentication Bypass o MAC Filtering secondo la terminologia del vendor. | Indurre l’apparato a spedire un Access‑Request con MAC come user e password. |
5 | Verifica con Wireshark o con netsh trace start capture=yes . Dovresti vedere Access‑Request e Access‑Accept, e se abilitato Accounting‑Start/Stop. | Confermare che il flusso RADIUS è attivo e funzionante. |
Risultato atteso: dopo avere impostato la chiave di registro e una Network Policy corretta, i pacchetti RADIUS compaiono regolarmente e il client si autentica con successo, ottenendo la VLAN o le ACL previste.
Procedura dettagliata
Account in directory
Per ogni dispositivo crea un utente in AD con sAMAccountName uguale al MAC in un formato standard e coerente (ad esempio AABBCCDDEEFF
senza separatori). Imposta la stessa stringa come password e disattiva l’obbligo di cambio password al prossimo accesso. Inserisci tutti gli account in un gruppo AD dedicato, come MAC Bypass, che userai nelle condizioni della Network Policy.
Suggerimenti pratici:
- Uniforma i formati: se il vendor invia il MAC con i due punti (
AA:BB:CC:DD:EE:FF
) o con i trattini (AA-BB-CC-DD-EE-FF
), decidi uno standard per gli username e, se necessario, attiva la chiave User Identity Attribute per prendere il MAC da Calling‑Station‑Id invece che da User‑Name. - Valuta un prefix per distinguere le categorie, ad esempio
PRN-AABBCCDDEEFF
per stampanti; nella policy potrai filtrare con Regular Expressions se occorre.
Impostazione della chiave di registro
NPS può mappare l’identità utente a un attributo RADIUS specifico. Impostando User Identity Attribute = 31 chiedi a NPS di usare Calling‑Station‑Id come identità. Molti apparati inseriscono proprio lì il MAC del client. Questa impostazione aumenta la compatibilità in ambienti misti dove alcuni apparati inviano il MAC in User‑Name e altri in Calling‑Station‑Id.
reg add "HKLM\SYSTEM\CurrentControlSet\Services\RemoteAccess\Policy" ^
/v "User Identity Attribute" /t REG_DWORD /d 31 /f
net stop ias && net start ias
Nota: il servizio NPS può comparire come IAS nei comandi di servizio. Il riavvio è necessario per rendere effettiva la modifica.
Creazione della policy di rete
In Network Policies, crea una policy specifica per il bypass. Elementi chiave:
- Conditions: aggiungi User Groups e seleziona il gruppo del passo precedente. In alternativa, per limitare la policy a un solo SSID, usa condizioni su NAS‑Identifier o su Called‑Station‑Id che contiene BSSID e SSID.
- Constraints: attiva Unencrypted authentication e seleziona PAP. MAB invia il MAC come User‑Name e User‑Password non cifrati (il trasporto può essere protetto solo se presente un tunnel IPsec tra NAS e NPS; tipicamente non c’è). Per questo motivo la policy va confinata.
- Settings opzionali: per VLAN dinamica invia gli attributi RADIUS standard:
- Tunnel‑Type = Virtual LANs (13)
- Tunnel‑Medium‑Type = 802 (6)
- Tunnel‑Private‑Group‑ID = numero della VLAN
- Ordine delle policy: posiziona Mac Bypass prima delle policy 802.1X. NPS valuta le policy in ordine: se una policy precedente accetta o rifiuta, le successive non vengono valutate.
Abilitazione sul dispositivo di accesso
Attiva la funzione di bypass sugli apparati. La dicitura cambia per vendor e prodotto: MAC Authentication Bypass, MAC Filtering, Non‑dot1x MAC auth, Open‑auth with RADIUS. In generale, devi:
- Abilitare MAB sull’interfaccia o sul profilo SSID.
- Configurare il server RADIUS NPS con indirizzo IP, porta di autenticazione, e shared secret coerente su entrambi i lati.
- Impostare l’ordine dei metodi: spesso si tenta 802.1X per un breve tempo e, in assenza di EAP, si ricade su MAB. Per i soli device non‑802.1X puoi forzare la via breve e passare direttamente a MAB.
Verifica con gli strumenti
Appena MAB è attivo, lo switch o l’AP invia un Access‑Request verso NPS con:
- User‑Name = MAC
- User‑Password = MAC
- Calling‑Station‑Id = MAC (spesso formattato con separatori)
Controlla:
- Con Wireshark: filtro
radius
oudp.port == 1812 or udp.port == 1813
. - Con Event Viewer sul server: in Security verifica eventi NPS come 6272 (accesso concesso) e 6273 (accesso negato) per la fase di autenticazione.
- Con IAS log di NPS: abilita i log file locali per diagnosi rapide e verifica attributi come User‑Name e Calling‑Station‑Id.
Flusso dei messaggi consigliato
Il seguente call‑flow rappresenta cosa avviene quando MAB è attivo e NPS è configurato per accettare il MAC come identità. .box { fill:#fff; stroke:#000; } .swim { font: 14px sans-serif; } .msg { stroke:#000; fill:none; marker-end:url(#arrow); } .label { font:12px sans-serif; } .note { font:11px sans-serif; } Client Switch o Access Point NPS Associazione a SSID o link up Access‑Request PAP (User‑Name=MAC, User‑Password=MAC) Access‑Challenge opzionale Access‑Request con attributi aggiuntivi Access‑Accept con VLAN e ACL Accounting‑Start Porta o SSID in stato open, traffico consentito Accounting‑Stop alla disconnessione Se l’identità non corrisponde alla policy, NPS risponde con Access‑Reject Sequenza semplificata di MAB con NPS come AAA server.
Verifica e diagnostica
- Controllo del trasporto: dal NAS verso NPS verifica reachability su porta di autenticazione e accounting. Se il traffico è filtrato, nessun pacchetto RADIUS apparirà in cattura.
- File IAS su NPS: attiva il logging su file in formato testo. Qui vedrai gli attributi ricevuti, la policy abbinata, e l’esito finale. È il modo più rapido per capire perché una richiesta è stata negata.
- Eventi di sicurezza: l’Event Viewer mostra con chiarezza l’identity effettivamente usata da NPS, il motivo del rifiuto e la policy che ha preso la decisione.
- Wireshark: usa il filtro
radius
per vedere richieste e risposte, e apri i dettagli degli attributi; controlla User‑Name e Calling‑Station‑Id. Se nessun pacchetto parte dal NAS, torna alla configurazione MAB lato apparato. - Traccia di sistema: su Windows
netsh trace start capture=yes scenario=lan
consente una cattura a livello kernel utile in ambienti con restrizioni.
Errori comuni e soluzioni
Sintomo | Probabile causa | Rimedio |
---|---|---|
Nessun traffico RADIUS visibile | MAB disabilitato su AP o switch; ACL o firewall bloccano la porta RADIUS | Abilita MAB sul profilo; verifica il shared secret e l’apertura delle porte; controlla l’indirizzo del server NPS configurato |
Access‑Reject nonostante utente presente | Policy non corrispondente o ordine errato; metodo PAP non selezionato | Metti la policy MAB in cima; abilita PAP nei Constraints; valida le Conditions |
Autenticazione intermittente | Sfasamento orario tra dispositivi; timeout MAB troppo breve | Allinea NTP su NPS e apparati; aumenta i timer di tentativo su MAB |
VLAN dinamica non applicata | Apparato non supporta gli attributi tunnel o configurazione incompleta | Verifica supporto a Tunnel‑Type, Tunnel‑Medium‑Type, Tunnel‑Private‑Group‑ID; controlla i privilegi della policy |
Username non corrisponde al formato atteso | MAC spedito in Calling‑Station‑Id con separatori o in un altro attributo | Imposta User Identity Attribute a 31; normalizza il formato del MAC in AD |
NPS non elabora la richiesta | Connection Request Policy instrada altrove o rigetta | Imposta la Connection Request Policy su “Autentica su questo server” per le richieste provenienti dal NAS coinvolto |
Sicurezza e buone pratiche
- Contesto di rischio: MAB usa PAP, quindi credenziali equivalenti a testo in chiaro. Limita il perimetro con VLAN “quarantena” o di sola stampa, e applica ACL restrittive.
- Principio del minimo privilegio: concedi solo le risorse strettamente necessarie. Evita l’accesso a segmenti che trasportano dati sensibili.
- Monitoraggio e auditing: abilita Accounting per registrare accessi e durata delle sessioni. I log sono utili per incident response e capacity planning.
- Gestione del ciclo di vita: quando un dispositivo viene dismesso, disabilita o elimina l’account AD e rimuovilo dal gruppo; evita account condivisi generici e poco tracciabili.
- Segmentazione: usa VLAN dedicate e, quando possibile, firewall tra VLAN per ridurre lateral movement in caso di compromissione di un device.
Domande frequenti
Devo sempre impostare la chiave di registro?
Non sempre. Se il NAS invia il MAC in User‑Name, NPS può autenticarlo senza mappare Calling‑Station‑Id. Tuttavia, attivare User Identity Attribute = 31 rende la soluzione più robusta verso apparati che riempiono solo Calling‑Station‑Id.
Posso usare formati di MAC diversi?
Sì, ma sii coerente. Meglio uniformare in AD e, se serve, usare espressioni regolari nelle condizioni di policy per tollerare separatori. Ricorda che alcuni vendor cambiano il caso delle lettere.
È possibile combinare con autenticazione a certificato?
No per i dispositivi MAB: per definizione non parlano 802.1X. Puoi però eseguire profilazione o controlli di postura lato rete e muovere i device su VLAN più permissive solo se superano determinati controlli.
Checklist finale
- Account AD per ciascun MAC creato e raggruppato.
- Chiave di registro User Identity Attribute impostata e servizio NPS riavviato.
- Network Policy Mac Bypass in cima all’elenco, con PAP abilitato.
- Connection Request Policy configurata per autenticare localmente.
- MAB attivato su interfaccia o SSID e RADIUS impostato con shared secret corretto.
- Wireshark mostra Access‑Request e Access‑Accept; gli eventi 6272 confermano esiti positivi.
- Accounting abilitato per auditing.
Appendice sugli attributi RADIUS e sui formati del MAC
Attributi chiave
- User‑Name: spesso contiene il MAC usato come username.
- User‑Password: con PAP contiene lo stesso valore del MAC.
- Calling‑Station‑Id: numero 31, riporta il MAC del client con separatori; è l’attributo su cui mappare l’identità impostando User Identity Attribute = 31.
- NAS‑Identifier, NAS‑IP‑Address: utili per filtrare la policy per apparato o sito.
- Called‑Station‑Id: per ambienti wireless, include BSSID e SSID, utile per condizionare la policy al profilo radio.
- Tunnel‑Type, Tunnel‑Medium‑Type, Tunnel‑Private‑Group‑ID: usati per assegnare dinamicamente la VLAN.
Formati comuni del MAC
AABBCCDDEEFF
— comodo per username.AA:BB:CC:DD:EE:FF
— tipico in Calling‑Station‑Id.AA-BB-CC-DD-EE-FF
— usato da alcuni vendor.
Se AD usa il primo formato e il NAS invia il secondo, l’impostazione su NPS di User Identity Attribute allinea i mondi senza riscritture lato apparato.
Esempi di automazione
PowerShell per creare rapidamente gli account (richiede RSAT e diritti in AD):
$devices = @(
@{ Name = "PRN-AABBCCDDEEFF"; MAC = "AABBCCDDEEFF" },
@{ Name = "IOT-112233445566"; MAC = "112233445566" }
)
$group = "MAC Bypass"
foreach ($d in $devices) {
$user = $d.Name
$pass = (ConvertTo-SecureString $d.MAC -AsPlainText -Force)
New-ADUser -Name $user -SamAccountName $d.MAC -AccountPassword $pass -Enabled $true -PasswordNeverExpires $true
Add-ADGroupMember -Identity $group -Members $d.MAC
}
Consiglio: mantieni il PasswordNeverExpires per questi account di servizio, documentando però la scelta e tracciando gli accessi.
Strategia di rollback
Se devi sospendere rapidamente MAB per un’interfaccia o un SSID (ad esempio durante un incidente), disattiva la funzione sul NAS. In alternativa, in NPS posiziona in cima una policy di deny con condizione su quel NAS o SSID specifico, in modo da rifiutare immediatamente tutte le richieste MAB senza toccare la configurazione globale.
Conclusioni operative
L’assenza di pacchetti RADIUS in cattura non è un mistero: quasi sempre è indice di MAB disattivato o di una policy NPS che non corrisponde. Con la chiave di registro User Identity Attribute impostata, una Network Policy dedicata con PAP e, soprattutto, la funzione MAB abilitata sugli apparati, il flusso si sblocca e la rete può gestire in modo ordinato i dispositivi non‑802.1X. Ricorda di confinare questi device in segmenti a basso privilegio e di mantenere un auditing puntuale per tracciabilità e conformità.
Riepilogo essenziale
- Abilita MAB sugli apparati e verifica la connettività RADIUS.
- Imposta User Identity Attribute su NPS per usare il MAC come identità.
- Crea una Network Policy dedicata con PAP e, se necessario, VLAN dinamica.
- Conferma con Wireshark ed eventi NPS che il flusso è attivo.
- Metti in sicurezza con VLAN dedicate, ACL e accounting.
Con queste azioni, vedrai finalmente gli Access‑Request e gli Access‑Accept, e i tuoi dispositivi si autenticheranno correttamente usando il solo indirizzo MAC.