Guida completa per abilitare WPA3‑Enterprise Suite B 192‑bit con 802.1X su Windows Server 2022 NPS e client Samsung Galaxy S23. Risolve il blocco del pulsante Salva su Android, assicurando certificati corretti, TLS/EAP coerenti e access point configurato in modalità 192‑bit.
Scenario e obiettivo
Vuoi implementare l’autenticazione enterprise con il profilo di sicurezza più elevato oggi disponibile in Wi‑Fi: WPA3‑Enterprise Suite B 192‑bit. L’infrastruttura prevede NPS (RADIUS) su Windows Server 2022 come back‑end AAA, EAP‑TLS (o in alternativa PEAP con certificato) come metodo di autenticazione e un client Android Samsung Galaxy S23 come endpoint. Il sintomo lato Android è tipico: l’SSID è visibile ma, dopo aver indicato identità e dominio, il pulsante Salva resta disattivato. Questo articolo ti accompagna dalla progettazione PKI alla configurazione di NPS, dell’AP e del client, spiegando perché quel pulsante rimane grigio e come rimediare in modo conforme al profilo 192‑bit.
Cosa rende speciale Suite B 192‑bit
Il profilo Suite B 192‑bit di WPA3‑Enterprise impone primitive e parametri crittografici più robusti rispetto al profilo enterprise “standard” (128‑bit). In estrema sintesi:
- Metodo EAP: autenticazione basata solo su certificati (EAP‑TLS), senza password. Gli schemi che terminano in MS‑CHAPv2 non sono allineati alle linee guida Suite B.
- TLS: TLS 1.3 (preferibile) o TLS 1.2 con ECDHE‑ECDSA e SHA‑384.
- Certificati: chiavi ECDSA P‑384 e firma SHA‑384 (oppure RSA ≥ 3072 come minimo accettabile, ma ECDSA è la scelta consigliata).
- Cifrari Wi‑Fi: GCMP‑256 per il traffico unicast e di gruppo; PMF (Protected Management Frames) obbligatorio con BIP‑GMAC‑256/BIP‑CMAC‑256.
Architettura di riferimento
- Server RADIUS: Windows Server 2022 con ruolo Network Policy Server (NPS), registrato in Active Directory.
- Autorità di certificazione (CA) interna o pubblica, affidabile dai client e dal server, usata per emettere:
- un certificato server per NPS (EKU Server Authentication),
- un certificato client (EKU Client Authentication) per ogni utente/dispositivo che accede via EAP‑TLS.
- Access Point/Controller compatibile con WPA3‑Enterprise 192‑bit mode e 802.1X.
- Client: Samsung Galaxy S23 (Android recente) con supporto a EAP‑TLS e dominio server convalidato.
Soluzione riassunta
Fase | Passaggi essenziali | Note |
---|---|---|
Prerequisiti | Ruolo Network Policy and Access Services installato; NPS registrato in AD; CA attendibile su client e server; NTP/ora corretta; CRL/AIA raggiungibili. | La mancata convalida della catena CA su Android blocca Salva. |
Template certificato per NPS | Duplica “Computer” o “RAS and IAS Server”. Imposta ECDSA P‑384 + SHA‑384, EKU Server Authentication. Includi SAN dNSName con l’FQDN del server (es. radius.contoso.it). | Il SAN deve combaciare con il campo Dominio che inserirai sul client Android. |
Template certificato per client | Duplica “User” o “Computer” in base al modello d’identità. ECDSA P‑384 + SHA‑384, EKU Client Authentication, SAN UPN (per utenti) o dNSName (per device). Distribuisci come PKCS#12 su Android. | Per BYOD usa PKCS#12 protetto da password; per MDM usa enrollment gestito. |
Configurare NPS | Crea i RADIUS Client (AP/Controller). Crea Network Policy “WPA3 Suite B” con condizioni Wireless 802.11 e gruppi AD. In Constraints → Authentication Methods abilita EAP‑TLS e seleziona il certificato server P‑384. Disattiva metodi legacy. | Se lasci PEAP‑MSCHAPv2 come fallback, non sei in Suite B. |
Configurare l’Access Point | Abilita WPA3‑Enterprise 192‑bit, PMF required, associa il server RADIUS con secret robusta, separa l’SSID Suite B da altri SSID. | Evitare “WPA3 Transition Mode” sull’SSID Suite B. |
Preparare il client Android | Importa la CA radice. In Wi‑Fi scegli EAP TLS, Certificato CA: la tua CA, Certificato utente: quello PKCS#12, Dominio: l’FQDN del server RADIUS, Identità: UPN o identificativo coerente col certificato. | Android abilita Salva solo con campi corretti e dominio che combacia il SAN del server. |
Verifica e troubleshooting | Event Viewer NPS (ID 6272/6273), netsh ras set tracing * enabled lato server, adb logcat lato Android, pcap EAPOL sull’AP. | Se funziona solo WPA3 enterprise “standard”, il device o l’AP non negoziano 192‑bit. |
Progettazione della PKI
Certificato server per NPS
- Apri certtmpl.msc sulla CA e duplica il template Computer o RAS and IAS Server.
- Scheda General: assegna un nome descrittivo (es. NPS‑SuiteB‑P384), abilita Publish certificate in Active Directory se opportuno.
- Scheda Request Handling: Purpose = “Signature and encryption” (con ECDSA è principalmente firma), consenti esportazione privata solo se ti serve ridondanza; in produzione meglio non esportabile.
- Scheda Cryptography:
- Provider: Microsoft Software Key Storage Provider o HSM/KSP hardware se disponibile.
- Algoritmo chiave: ECDSA P‑384.
- Hash: SHA‑384.
- Scheda Extensions:
- Key Usage: Digital Signature (con ECDSA non si usa “Key Encipherment”).
- Application Policies (EKU): includi Server Authentication (OID 1.3.6.1.5.5.7.3.1). Non è richiesto “Client Authentication” per il certificato del server.
- Seleziona Include subject alternative name in fase di richiesta e richiedi che venga specificato il SAN dNSName uguale all’FQDN del RADIUS.
- Pubblica il template e, su NPS, emetti/installa il certificato (MMC certlm.msc, archivio Computer → Personal). Verifica la presenza dell’FQDN corretto nel SAN e che la catena sia completa (intermediate + root).
Certificato client per EAP‑TLS
- Duplica il template User (accesso per utenti) o Computer (accesso per dispositivi gestiti).
- Imposta ECDSA P‑384 / SHA‑384, EKU Client Authentication (OID 1.3.6.1.5.5.7.3.2), Key Usage = Digital Signature.
- Per gli utenti, includi nel SAN l’UPN (otherName) corrispondente all’account AD.
- Per Android/BYOD prepara un pacchetto PKCS#12 (.p12/.pfx) che contenga certificato utente e chiave privata, protetto da password.
- Distribuisci la CA radice (e l’eventuale intermedia) in formato .cer a tutti i client. Su Android verrà selezionata come CA di fiducia per il Wi‑Fi enterprise.
Configurazione di Windows Server 2022 NPS
Preparazione del ruolo
- Installa il ruolo Network Policy and Access Services e il servizio Network Policy Server.
- Apri NPS e seleziona Register server in Active Directory per consentire a NPS di leggere le proprietà degli utenti e convalidare i certificati.
Definizione dei RADIUS Client
- In RADIUS Clients and Servers → RADIUS Clients, aggiungi ogni AP/Controller con nome descrittivo e indirizzo IP.
- Imposta una secret robusta (usa almeno 32 caratteri casuali) e allineala sull’AP.
Connection Request Policy
Se l’AP invia le richieste direttamente a NPS, è sufficiente la policy predefinita che elabora localmente. In scenari con proxy RADIUS crea una regola che accetti ed elabori in locale le richieste provenienti dagli IP degli AP/Controller.
Network Policy per Suite B
- Crea una nuova Network Policy denominata WPA3‑SuiteB‑192.
- Conditions:
- NAS Port Type = Wireless – IEEE 802.11.
- Eventuali Windows Groups di utenti o computer da autorizzare.
- Facoltativo: Called‑Station‑ID/SSID per vincolare la policy al solo SSID Suite B.
- Constraints → Authentication Methods:
- Abilita esclusivamente EAP‑TLS (Smart Card or other certificate), quindi Edit e scegli il certificato server P‑384 emesso dalla tua CA.
- Disabilita PEAP‑MSCHAPv2, EAP‑MSCHAPv2, CHAP e metodi legacy: se ammessi, non sei conforme a Suite B.
- Constraints → Encryption: non influisce su 802.1X/WPA; il cifrario Wi‑Fi è determinato dall’AP. Mantieni le opzioni predefinite.
- Settings:
- Definisci eventuali attributi RADIUS (es. VLAN dinamica) se vuoi segmentare per gruppo.
Hardening TLS su NPS
NPS usa Schannel. Per allinearti a Suite B, verifica:
- TLS 1.3 abilitato a livello sistema (Windows Server 2022 lo supporta). Mantieni TLS 1.2 attivo per interoperabilità con supplicant che non usano ancora TLS 1.3 in EAP.
- Ordine dei cipher suite per TLS 1.2 limitato a opzioni con ECDHEECDSA e AES256GCMSHA384.
Puoi gestire l’ordine via Criteri di gruppo: Computer Configuration → Administrative Templates → Network → SSL Configuration Settings → SSL Cipher Suite Order. Evita di rimuovere in blocco cipher che potrebbero servire ad altri servizi: testa sempre in ambiente di staging.
Configurazione dell’Access Point
- Imposta il profilo di sicurezza su WPA3‑Enterprise 192‑bit (talvolta indicato come “Suite B 192‑bit”).
- Abilita PMF = required.
- Separa l’SSID Suite B da eventuali SSID WPA3‑Enterprise 128‑bit o Transition Mode per evitare downgrade.
- Registra l’IP e la secret del server RADIUS (NPS). Se usi un controller, configura la lista dei server RADIUS e le policy 802.1X per l’SSID.
- Per il roaming, se abiliti 802.11r, accertati che il vendor supporti la variante con digest SHA‑384 in ambito 192‑bit; in caso di dubbi, disattiva 11r sull’SSID Suite B.
Preparazione del client Samsung Galaxy S23
- Importa la CA radice (e la CA intermedia se presente) in Impostazioni → Sicurezza → Credenziali di archiviazione. La CA deve essere utente o dispositivo a seconda del flusso MDM/BYOD.
- Installa il certificato utente in formato .p12/.pfx contenente chiave privata e certificato; assegna un alias facilmente riconoscibile.
- Apri Wi‑Fi, seleziona l’SSID Suite B e imposta:
- Metodo EAP: TLS.
- Certificato CA: seleziona la CA radice corretta.
- Certificato utente: scegli l’alias installato.
- Dominio: FQDN del server RADIUS (es. radius.contoso.it) identico a un valore presente nel SAN dNSName del certificato server NPS.
- Identità: UPN o identità coerente col certificato client (spesso non viene usata per l’autenticazione in EAP‑TLS, ma alcuni supplicant la espongono).
- Identità anonima: lascia vuoto.
Perché il pulsante “Salva” è disattivato? Android abilita Salva solo quando:
- è stata selezionata una CA valida;
- il campo Dominio è valorizzato e combacia con un dNSName nel SAN del certificato server;
- è presente un certificato utente con chiave privata;
- il metodo EAP impostato è coerente (per Suite B, TLS).
Se anche uno solo di questi requisiti manca o è incoerente, il pulsante resta grigio.
Checklist rapida per il pulsante “Salva”
Voce | Verifica | Azione correttiva |
---|---|---|
CA radice | La CA è visibile tra le credenziali di fiducia? | Importa il certificato .cer della CA radice (e intermedia) nelle credenziali. |
Dominio | Il dominio inserito coincide con il SAN dNSName del certificato NPS? | Rigenera il certificato NPS includendo l’FQDN corretto nel SAN; aggiorna il campo Dominio. |
Certificato utente | Il certificato contiene la chiave privata ed è visibile come “utilizzabile per Wi‑Fi”? | Re‑importa un .p12 con chiave privata; verifica EKU Client Authentication. |
Metodo EAP | È selezionato TLS (non PEAP‑MSCHAPv2)? | Per Suite B usa EAP‑TLS. Se hai configurato PEAP su NPS, rivedi la policy. |
Data e ora | La data del telefono è corretta? | Sincronizza l’orologio: CA e certificati scaduti/anticipati risultano non validi. |
Verifica e diagnostica
Lato NPS
- Event Viewer → Custom Views → Server Roles → Network Policy and Access Services:
- 6272: accesso concesso (controlla EAP‑Type = TLS e i dettagli del certificato).
- 6273: accesso negato (leggi Reason‑Code e Reason per capire se è trust della CA, mapping certificato, metodo non ammesso, ecc.).
- Tracing:
netsh ras set tracing * enabled netsh ras set tracing * disabled
I log sono inC:\Windows\tracing
(fileIAS*
e EAP‑TLS). Ricordati di disattivare il tracing a fine test. - Certificati:
certlm.msc
Verifica in Computer → Personal → Certificates che il certificato selezionato da NPS sia quello P‑384, con catena completa e SAN corretto.
Lato Access Point
- Controlla i log RADIUS (Access‑Request/Challenge/Accept) e che l’SSID sia impostato su WPA3‑Enterprise 192‑bit con PMF required.
- Se possibile, cattura un pacchetto EAPOL e verifica che l’AKM e i cipher negoziati corrispondano al profilo 192‑bit (GCMP‑256).
Lato Android
- Con debug USB attivo:
adb logcat | grep -iE "wpa|supplicant|eap|tls"
Cerca errori su domain mismatch, trust anchor e selezione del certificato. - Verifica che l’alias del certificato utente sia offerto al supplicant e che la CA radice risulti attendibile.
Approfondimenti e raccomandazioni
EAP‑TLS rispetto a PEAP
Per rispettare Suite B 192‑bit, l’autenticazione deve essere basata solo su certificati. PEAP con MS‑CHAPv2 termina con una password e, quantunque racchiusa in un tunnel TLS, non allinea pienamente i requisiti crittografici. Se il tuo parco client è eterogeneo, puoi mantenere un SSID “Enterprise” 128‑bit con PEAP per retro‑compatibilità e dedicare un SSID separato, strettamente EAP‑TLS, al profilo 192‑bit.
Cifrari TLS consigliati
Per TLS 1.3 non devi impostare una lista di cipher: la scelta è automatica e compatibile con Suite B. Per TLS 1.2 mantieni in cima (o in esclusiva, se possibile senza rompere altri servizi) suite come:
TLSECDHEECDSAWITHAES256GCM_SHA384
Evita suite con RSA key exchange, AES‑128 o SHA‑256 quando l’obiettivo è il profilo 192‑bit.
Compatibilità del client
Galaxy S23 supporta EAP‑TLS e WPA3‑Enterprise. Per il profilo 192‑bit possono essere necessari aggiornamenti recenti del firmware Android. Se l’SSID 192‑bit non si associa nonostante EAP‑TLS corretto, testa con un SSID enterprise 128‑bit: se quello funziona, è probabile che il device o l’AP non negozino ancora GCMP‑256/AKM richiesti dal profilo 192‑bit. Aggiorna firmware/driver Wi‑Fi e verifica che il vendor dell’AP abiliti esplicitamente la modalità 192‑bit.
Evita il fallback non sicuro
L’SSID Suite B non dovrebbe avere “WPA3 Transition Mode” abilitato: il downgrade a WPA2 annulla i vantaggi. Mantieni un SSID separato per utenti/terminali legacy, con policy VLAN o ACL adeguate.
Validazione pratica
- wpa_cli / diagnostica AP: verifica che la pairwise cipher sia GCMP‑256 e non CCMP‑128.
- Wireshark: controlla il campo RSN nell’Association Response.
- Eventi NPS 6272: confermano EAP‑TLS e la CA di emissione; conserva l’Issuer come evidenza di conformità.
Guida passo‑passo dettagliata
Creare il template “WPA3 Suite B” per NPS
- Apri Certification Authority sulla tua CA e avvia Certificate Templates.
- Duplica RAS and IAS Server o Computer.
- Scheda Cryptography: seleziona ECDSA P‑384, hash SHA‑384.
- Scheda Extensions: EKU Server Authentication, Key Usage = Digital Signature.
- Scheda Subject Name: Supply in the request. Quando richiederai il cert sul server, specifica SAN dNSName = FQDN del RADIUS.
- Pubblica il template; su NPS, richiedi il certificato da certlm.msc → Personal → Certificates → All Tasks → Request New.
Creare il template per i client EAP‑TLS
- Duplica User (modello identity‑based) o Computer (device‑based).
- Imposta ECDSA P‑384 / SHA‑384, EKU Client Authentication, Key Usage = Digital Signature.
- Per utenti: Subject da AD (UPN) e SAN UPN per facilitare il mapping in NPS.
- Abilita auto‑enrollment per device Windows; per Android prepara export PKCS#12.
Configurare NPS per EAP‑TLS
- In Policies → Network Policies crea WPA3‑SuiteB‑192.
- Conditions: Wireless 802.11, gruppi AD autorizzati, facoltativamente filtro per SSID.
- Constraints → Authentication Methods: seleziona Microsoft: Smart Card or other certificate (EAP‑TLS), clicca Edit e scegli il certificato server P‑384 con SAN corretto. Disabilita tutti i metodi non richiesti.
- Settings: aggiungi eventuali attributi (VLAN, session‑timeout, idle‑timeout) coerenti con le tue policy di rete.
Configurare l’Access Point per Suite B
- Crea un SSID dedicato (es. Corp‑SuiteB) con WPA3‑Enterprise 192‑bit.
- PMF: required. Disattiva temporaneamente 11r se noti problemi di roaming finché non confermi il supporto SHA‑384 lato vendor.
- Configura il server RADIUS: IP del NPS, porta 1812, secret robusta. Se supportato, configura anche RADIUS Accounting (porta 1813).
Configurare Android in modo conforme
- Installa la CA radice e il certificato utente dal tuo MDM o manualmente (file .cer e .p12).
- Wi‑Fi → seleziona SSID → Metodo EAP = TLS → Certificato CA = tua CA → Certificato utente = alias installato → Dominio = FQDN RADIUS come da SAN → completa l’Identità se richiesto.
- Conferma che Salva diventi attivo; in caso contrario ripercorri la Checklist.
Debug degli scenari tipici
Il client non propone il certificato utente
Il PKCS#12 non contiene la chiave privata, o l’EKU non include Client Authentication. Re‑emetti e re‑importa il certificato.
Dominio non accettato
Android non usa più il CN come riferimento: devi valorizzare il SAN dNSName nel certificato NPS. Se il tuo RADIUS ha hostname differente dall’FQDN inserito su Android, aggiorna il certificato.
Accesso negato da NPS (6273)
- Reason su trust della CA: CA non presente nei Trusted Root Certification Authorities del server o catena incompleta. Importa la intermedia in Intermediate Certification Authorities.
- Reason su mapping: l’UPN nel certificato non corrisponde a un utente AD o il gruppo non è autorizzato dalla policy. Correggi il template o le condizioni della policy.
- Reason su metodo EAP: la policy non consente EAP‑TLS o l’AP offre un tipo differente. Allinea NPS e AP.
Controlli finali di conformità Suite B
Requisito | Come verificarlo |
---|---|
EAP‑TLS senza fallback | Policy NPS: solo EAP‑TLS. SSID dedicato senza PEAP/MS‑CHAPv2. |
Certificati P‑384 / SHA‑384 | Proprietà del certificato server/client: algoritmo chiave e firma. |
Dominio convalidato | Android: Dominio uguaglia il SAN dNSName del certificato NPS. |
PMF obbligatorio | AP: “PMF required” abilitato sull’SSID Suite B. |
GCMP‑256 | AP o pcap: il RSN annuncia GCMP‑256 come pairwise e group cipher. |
TLS 1.3 o TLS 1.2 adeguato | NPS/Schannel: cipher suite include ECDHEECDSAWITHAES256GCMSHA384. |
Domande frequenti
Posso usare RSA al posto di ECDSA? Sì, purché la dimensione sia adeguata (≥ 3072). Tuttavia, per Suite B la raccomandazione è ECDSA P‑384, più efficiente e allineata al profilo.
PEAP con “Smart card o altro certificato” è accettabile? Tecnicamente incapsula EAP‑TLS nel tunnel PEAP, ma la compatibilità lato Android varia e non sempre è esposto come opzione. Per interoperabilità e conformità, preferisci EAP‑TLS non incapsulato.
Posso riutilizzare lo stesso certificato server di IIS? Meglio dedicarne uno a NPS con EKU e SAN specifici; minimizzi impatti e semplifichi l’hardening.
Gli SSID 192‑bit e 128‑bit possono convivere? Sì, ma separali e applica policy distinte. Evita di mescolare in un unico SSID opzioni 128‑bit e 192‑bit.
Conclusioni operative
La chiave per far funzionare WPA3‑Enterprise Suite B con NPS e Galaxy S23 è una PKI corretta, una policy NPS che consente solo EAP‑TLS e un AP configurato in modalità 192‑bit. Nel 99% dei casi, il pulsante Salva bloccato su Android si risolve sistemando CA, dominio/SAN e certificato utente con chiave privata. Con i controlli e le tabelle di questa guida puoi validare ogni anello della catena e raggiungere la conformità senza tentativi alla cieca.
Appendice: comandi e punti di controllo
Schannel e ordine dei cipher
Criteri di gruppo → Network → SSL Configuration Settings → SSL Cipher Suite Order. Esempio minimo (TLS 1.2):
TLSECDHEECDSAWITHAES256GCM_SHA384
Ricorda: TLS 1.3 non usa questa lista; verifica semplicemente che sia abilitato.
Abilitare diagnostica RAS/NPS
netsh ras set tracing * enabled
riproduci l'associazione
netsh ras set tracing * disabled
Dove guardare gli eventi
- Event Viewer → Custom Views → Server Roles → Network Policy and Access Services.
- Eventi 6272 (Concesso), 6273 (Negato) con Reason‑Code esplicativo.
Verifica certificati sul server
certlm.msc
Percorso: Computer → Personal → Certificates
Controlla: algoritmo = ECDSA P-384, firma = SHA-384, SAN = FQDN RADIUS
Note sull’uso dei SAN
Android richiede un Domain Suffix Match esplicito: il Dominio inserito deve corrispondere a un valore dNSName nel SAN del certificato server NPS. Il vecchio matching sul CN non è più sufficiente. Se il tuo certificato non contiene il SAN giusto, rigeneralo: è il motivo più comune del Salva disattivato.
VLAN dinamica (facoltativa)
Puoi assegnare VLAN in base ai gruppi AD aggiungendo nelle impostazioni della Network Policy gli attributi RADIUS Tunnel‑Type = VLAN, Tunnel‑Medium‑Type = 802 e Tunnel‑Private‑Group‑ID = ID VLAN desiderato. Verifica che l’AP/controller supporti l’override RADIUS.
Modelli di distribuzione su Android
- MDM: preferibile in azienda. Spingi profilo Wi‑Fi con EAP‑TLS, CA, dominio e certificato utente (o richiesta SCEP/PKCS).
- Manuale: importa CA e PKCS#12, compila i campi come indicato. Evita file p12 senza password o generati con algoritmi non conformi.
Riepilogo pratico
- Server NPS con certificato P‑384 / SHA‑384 e SAN = FQDN RADIUS.
- Network Policy che consente solo EAP‑TLS.
- AP in WPA3‑Enterprise 192‑bit, PMF obbligatorio, SSID dedicato.
- Android con CA radice installata, certificato utente valido, Dominio coerente col SAN.
- Verifica 6272/6273,
netsh ras tracing
, pcap EAPOL, logcat se serve.
Seguendo questi passaggi realizzerai un’infrastruttura Wi‑Fi enterprise robusta e allineata a Suite B; una volta sistemati certificati e dominio, anche il fastidioso blocco del pulsante Salva su Galaxy S23 sparirà.