Introduzione
Questo documento descrive come configurare una WLAN con sicurezza 802.1X su un controller wireless Cisco Catalyst serie 9800.
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza dei seguenti argomenti:
Componenti usati
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
- Catalyst serie 9800 Wireless Controller (Catalyst 9800-CL)
- Cisco IOS® XE 17.12.5
- Cisco ISE 3.0
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Configurazione
Esempio di rete

Configurazione WLC
Configurazione AAA su 9800 WLC
GUI:
Passaggio 1. Dichiarare il server RADIUS. Individuare Configuration > Security > AAA > Servers / Groups > RADIUS > Servers > + Add
e immettere le informazioni sul server RADIUS.

verificare che il supporto per CoA sia abilitato e configurare la chiave del server CoA se si intende utilizzare l'autenticazione Web centrale (o qualsiasi tipo di protezione che richieda la modifica dell'autorizzazione [CoA]) in futuro.
Nota: La chiave del server CoA (Change of Authorization) sul WLC di Cisco 9800 è un segreto condiviso utilizzato per autenticare le richieste CoA tra il WLC e il server RADIUS. La chiave deve corrispondere alla configurazione CoA nel server RADIUS per garantire la corretta comunicazione. Verificare che la chiave del server CoA sia configurata in modo sicuro e coerente in tutti i dispositivi per impedire il rifiuto del messaggio CoA.

Passaggio 2. Aggiungere il server RADIUS a un gruppo RADIUS. Passare a Configuration > Security > AAA > Servers / Groups > RADIUS > Server Groups > + Add.
Assegnare un nome al gruppo e spostare il server creato in precedenza nell'elenco di Assigned Servers.

Passaggio 3. Creare un elenco di metodi di autenticazione. Passa a Configuration > Security > AAA > AAA Method List > Authentication > + Add.

Immettere le informazioni:

CLI:
# config t
# aaa new-model
# radius server <radius-server-name>
# address ipv4 <radius-server-ip> auth-port 1812 acct-port 1813
# timeout 300
# retransmit 3
# key <shared-key>
# exit
# aaa group server radius <radius-grp-name>
# server name <radius-server-name>
# exit
# aaa server radius dynamic-author
# client <radius-server-ip> server-key <shared-key>
# aaa authentication dot1x <dot1x-list-name> group <radius-grp-name>
Nota sul rilevamento di server inattivi AAA
Dopo aver configurato il server RADIUS, è possibile verificare se è considerato "ATTIVO":
#show aaa servers | s WNCD
Platform State from WNCD (1) : current UP
Platform State from WNCD (2) : current UP
Platform State from WNCD (3) : current UP
Platform State from WNCD (4) : current UP
...
È possibile configurare sia il dead criteria,
router che il deadtime
router sul WLC, in particolare se si utilizzano più server RADIUS.
#radius-server dead-criteria time 5 tries 3
#radius-server deadtime 5
Nota: Il dead criteria
è il criterio utilizzato per contrassegnare un server RADIUS come inattivo. Si tratta di: 1. Un timeout (in secondi) che rappresenta il periodo di tempo che deve trascorrere tra l'ultima volta in cui il controller ha ricevuto un pacchetto valido dal server RADIUS e il momento in cui il server viene contrassegnato come inattivo. 2. Un contatore, che rappresenta il numero di timeout consecutivi che devono verificarsi sul controller prima che il server RADIUS venga contrassegnato come inattivo.
Nota: Il parametro deadtime
specifica la quantità di tempo (in minuti) in cui il server rimane nello stato inattivo dopo che i criteri inattivo lo contrassegnano come inattivo. Alla scadenza del tempo di inattività, il controller contrassegna il server come ATTIVO (ALIVE) e notifica ai client registrati la modifica dello stato. Se il server è ancora irraggiungibile dopo che lo stato è contrassegnato come ATTIVO e se i criteri non attivi sono soddisfatti, il server viene nuovamente contrassegnato come non attivo per l'intervallo di tempo morto.
Configurazione profilo WLAN
GUI:
Passaggio 1. Creare la WLAN. Selezionare Configurazione > Tag&Profili > WLAN > + Aggiungi e configura la rete in base alle esigenze.

Passaggio 2. Immettere le informazioni sulla WLAN

Passaggio 3a. Passare alla scheda Protezione e selezionare il metodo di protezione desiderato. In questo caso, WPA2 + 802.1x.

3b. Esempio di modalità mista WPA2+WPA3,
Nota: La modalità mista WPA2+WPA3 sul Cisco 9800 WLC consente la perfetta coesistenza di dispositivi WPA3 moderni e di dispositivi WPA2 legacy, garantendo compatibilità e sicurezza avanzata laddove possibile. Fast Transition (FT) è opzionale in questo scenario, diventa obbligatorio quando AKM FT+802.1x è abilitato.

Passaggio 4. Dalla Security > AAA
scheda, selezionare il metodo di autenticazione creato nel passaggio 3 dalla sezione Configurazione AAA su WLC 9800.

CLI:
# config t
# wlan <profile-name> <wlan-id> <ssid-name>
# security dot1x authentication-list <dot1x-list-name>
# no shutdown
Configurazione del profilo di policy
All'interno di un profilo di policy è possibile decidere a quale VLAN assegnare ai client, tra le altre impostazioni (come Access Controls List [ACLs], Quality of Service [QoS], Mobility Anchor, Timer e così via).
È possibile utilizzare il profilo dei criteri predefinito oppure creare un nuovo profilo.
GUI:
Passare a Configurazione > Tag e profili > Profilo criterio e configurare il profilo predefinito-criterio o crearne uno nuovo.

Verificare che il profilo sia abilitato.
Inoltre, se il punto di accesso (AP) è in modalità locale, verificare che nel profilo dei criteri siano abilitati i parametri Switching centrale, Autenticazione centrale e DHCP centrale.

Selezionare la VLAN a cui assegnare i client nella scheda Criteri di accesso.

Se si intende avere gli attributi ISE restituiti in Access-Accept come per l'assegnazione della VLAN, abilitare l'override AAA nella Advanced
scheda:

CLI:
# config
# wireless profile policy <policy-profile-name>
# aaa-override
# central switching
# description "<description>"
# vlan <vlanID-or-VLAN_name>
# no shutdown
Configurazione del tag di policy
Il tag dei criteri viene utilizzato per collegare l'SSID al profilo dei criteri. È possibile creare un nuovo tag o utilizzare il tag predefinito.
GUI:
Se necessario, individuare Configugation > Tags & Profiles > Tags > Policy
e aggiungere un nuovo elemento.

Associare il profilo WLAN al profilo di policy desiderato.



CLI:
# config t
# wireless tag policy <policy-tag-name>
# wlan <profile-name> policy <policy-profile-name>
Assegnazione tag criteri
Assegnare il tag di policy agli access point desiderati.
GUI:
Per assegnare il tag a un punto di accesso, spostarsi per Configuration > Wireless > Access Points > AP Name > General Tags,
assegnare il tag di criterio appropriato e fare clic su Update & Apply to Device.

Nota: Tenere presente che quando il tag di policy su un access point viene modificato, la sua associazione al WLC 9800 viene interrotta e si unisce di nuovo qualche istante dopo.
Per assegnare lo stesso tag criteri a più access point, passare a Configuration > Wireless Setup > Advanced > Start Now > Apply.

Selezionare gli access point a cui si desidera assegnare il tag e fare clic su + Tag APs

Selezionare i tag applicabili per Policy, Sito e RF e fare clic su Save
& Applica a dispositivo

CLI:
# config t
# ap <ethernet-mac-addr>
# policy-tag <policy-tag-name>
# end
Configurazione di ISE
Dichiarare il WLC su ISE
Passaggio 1. Aprire la console ISE e passare Administration > Network Resources > Network Devices > Add
a come mostrato nell'immagine.

Passaggio 2. Configurare il dispositivo di rete.
Facoltativamente, può corrispondere a uno specifico nome di modello, versione del software, descrizione e assegnazione di gruppi di dispositivi di rete in base al tipo di dispositivo, alla posizione o ai WLC.
L'indirizzo IP corrisponde all'interfaccia WLC che invia le richieste di autenticazione. Per impostazione predefinita è l'interfaccia di gestione, come mostrato nell'immagine:

Per ulteriori informazioni sulla Network Device Groups
revisione del capitolo: Manage Network Devices (Gestione dispositivi di rete) da Cisco Identity Services Engine Administrator Guide, : Network Device Groups
Creazione di un nuovo utente in ISE
Passaggio 1. Accedere Administration > Identity Management > Identities > Users > Add
al sito come mostrato nell'immagine:

Passaggio 2. Inserire le informazioni per l'utente. In questo esempio, l'utente appartiene a un gruppo denominato ALL_ACCOUNTS, ma può essere modificato in base alle esigenze, come mostrato nell'immagine:

Creazione del profilo di autorizzazione
L'Authorization Profile
oggetto è costituito da un set di attributi che vengono restituiti quando viene trovata una corrispondenza con una condizione. Il profilo di autorizzazione determina se il client ha accesso o meno alla rete, esegue il push degli Access Control Lists (ACL), esegue l'override della VLAN o di qualsiasi altro parametro. Il profilo di autorizzazione mostrato in questo esempio invia un'autorizzazione di accesso per il client e assegna il client alla VLAN 1416.
Passaggio 1. Individuare Policy > Policy Elements > Results > Authorization > Authorization Profiles
e fare clic sul Add
pulsante.

Passaggio 2. Inserire i valori come indicato nell'immagine. In questa sezione è possibile restituire gli attributi di override AAA, ad esempio VLAN. La WLC 9800 accetta gli attributi del tunnel 64, 65, 81 che usano l'ID VLAN o il nome e accetta anche l'uso dell'AirSpace-Interface-Name
attributo.

Crea set di criteri
Un set di criteri definisce un insieme di regole di autenticazione e autorizzazione. Per crearne uno, andare a Policy > Policy Sets
, fare clic sull'ingranaggio del primo set di criteri nell'elenco e selezionare Insert new row above
come mostrato in questa immagine:

Configurare un nome e creare una condizione per questo set di criteri. Nell'esempio, la condizione specifica che il traffico proveniente dal WLC corrisponde:
Radius:NAS-IP-Address EQUALS X.X.X.X // X.X.X.X is the WLC IP address
Assicurarsi che Default Network Access
sia selezionato in Allowed Protocols / Server Sequence
.

Crea criterio di autenticazione
Per configurare i criteri di autenticazione e autorizzazione, è necessario immettere la configurazione del set di criteri. A tale scopo, fare clic sulla freccia blu a destra della Policy Set
riga:

I criteri di autenticazione vengono utilizzati per verificare se le credenziali degli utenti sono corrette (verificare se l'utente è effettivamente l'utente a cui è associato). In Authenticaton Policy,
creare un criterio di autenticazione e configurarlo come mostrato nell'immagine. La condizione per il criterio utilizzato in questo esempio è:
RADIUS:Called-Station-ID ENDS_WITH // is the SSID of your WLAN
Scegliere inoltre la scheda Utenti interni nella Use
scheda di questi criteri di autenticazione.

Crea criterio di autorizzazione
Nella stessa pagina crearne unaAuthorization Policy
. La condizione per questo criterio di autorizzazione è:
RADIUS:Called-Station-ID ENDS_WITH // is the SSID of your WLAN
Nella Result > Profiles
scheda relativa a questo criterio selezionare il criterio Authorization Profile
creato in precedenza. In questo modo, ISE invierà gli attributi corretti al WLC se l'utente è autenticato.

A questo punto, se tutta la configurazione per il WLC e l'ISE è completa, è possibile provare a connettersi con un client.
Per ulteriori informazioni su ISE Allow Protocols Policies, consultare il capitolo: Gestire i criteri di autenticazione dalla Cisco Identity Services Engine Administrator Guide (Guida dell'amministratore di Cisco Identity Services Engine) Gestire i criteri di autenticazione
Per ulteriori informazioni su ISE Identity Sources, consultare il capitolo: Gestire utenti e origini identità esterne da Cisco Identity Services Engine Administrator Guide: Identity Sources
Verifica
È possibile utilizzare questi comandi per verificare la configurazione corrente:
# show run wlan // WLAN configuration
# show run aaa // AAA configuration (server, server group, methods)
# show aaa servers // Configured AAA servers
# show ap config general // AP's configurations
# show ap name <ap-name> config general // Detailed configuration of specific AP
# show ap tag summary // Tag information for AP'S
# show wlan { summary | id | name | all } // WLAN details
# show wireless tag policy detailed <policy-tag name> // Detailed information on given policy tag
# show wireless profile policy detailed <policy-profile name>// Detailed information on given policy profile
Risoluzione dei problemi
Nota: L'utilizzo dei servizi di bilanciamento del carico esterni è corretto. Verificare tuttavia che il servizio di bilanciamento del carico funzioni per client utilizzando l'attributo RADIUS id stazione chiamante. L'utilizzo della porta di origine UDP non è un meccanismo supportato per il bilanciamento delle richieste RADIUS provenienti da 9800.
Risoluzione dei problemi sul WLC
WLC 9800 offre funzionalità di traccia ALWAYS-ON. In questo modo, tutti gli errori, gli avvisi e i messaggi relativi alla connettività del client vengono registrati costantemente ed è possibile visualizzare i registri di un evento imprevisto o di una condizione di errore dopo che si è verificato.
Dipende dal volume dei registri generati, ma in genere è possibile tornare indietro di alcune ore o diversi giorni.
Per visualizzare le tracce raccolte in base all'impostazione predefinita dal 9800 WLC, è possibile connettersi al 9800 WLC in modalità SSH/Telnet ed eseguire i seguenti passaggi: Assicurarsi di registrare la sessione in un file di testo.
Passaggio 1. Controllare l'ora corrente del WLC in modo da poter tenere traccia dei log risalendo al momento in cui si è verificato il problema.
# show clock
Passaggio 2. Raccogliere i syslog dal buffer WLC o dal syslog esterno, in base alla configurazione del sistema. In questo modo è possibile visualizzare rapidamente lo stato di integrità del sistema ed eventuali errori.
# show logging
Passaggio 3. Verificare se le condizioni di debug sono abilitate.
# show debugging
IOSXE Conditional Debug Configs:
Conditional Debug Global State: Stop
IOSXE Packet Tracing Configs:
Packet Infra debugs:
Ip Address Port
------------------------------------------------------|----------
Nota: Se nell'elenco viene visualizzata una condizione, le tracce vengono registrate a livello di debug per tutti i processi che soddisfano le condizioni attivate (indirizzo MAC, indirizzo IP e così via). In questo modo si aumenta il volume dei registri. È pertanto consigliabile cancellare tutte le condizioni quando non si esegue il debug attivo.
Passaggio 4. Si supponga che l'indirizzo MAC in test non sia stato elencato come condizione nel Passaggio 3, raccogliere le tracce del livello di avviso always on per l'indirizzo MAC specifico:
# show logging profile wireless filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file always-on-<FILENAME.txt>
È possibile visualizzare il contenuto della sessione oppure copiare il file su un server TFTP esterno:
# more bootflash:always-on-<FILENAME.txt>
or
# copy bootflash:always-on-<FILENAME.txt> tftp://a.b.c.d/path/always-on-<FILENAME.txt>
Debug condizionale e traccia Radioactive (RA)
Se le tracce sempre attive non forniscono informazioni sufficienti per determinare il trigger del problema in esame, è possibile abilitare il debug condizionale e acquisire la traccia Radio attiva (RA), che fornisce le tracce a livello di debug per tutti i processi che interagiscono con la condizione specificata (in questo caso l'indirizzo MAC del client). È possibile farlo tramite la GUI o la CLI.
CLI:
Per abilitare il debug condizionale, effettuare le seguenti operazioni:
Passaggio 5. Verificare che non vi siano condizioni di debug abilitate.
# clear platform condition all
Passaggio 6. Abilitare la condizione di debug per l'indirizzo MAC del client wireless che si desidera monitorare.
Questo comando avvia il monitoraggio dell'indirizzo MAC fornito per 30 minuti (1800 secondi). È possibile aumentare il tempo fino a 2085978494 secondi.
# debug wireless mac <aaaa.bbbb.cccc> {monitor-time <seconds>}
Nota: per monitorare più client alla volta, eseguire il comando debug wireless mac <aaa.bbbb.ccc> per ogni indirizzo MAC.
Nota: non è possibile visualizzare l'output dell'attività del client in una sessione terminale, in quanto tutto viene memorizzato internamente nel buffer per essere visualizzato successivamente.
Passaggio 7. Riprodurre il problema o il comportamento che si desidera monitorare.
Passaggio 8. Interrompere i debug se il problema viene riprodotto prima che scada il tempo di monitoraggio predefinito o configurato.
# no debug wireless mac <aaaa.bbbb.cccc>
Una volta trascorso il tempo di monitoraggio o interrotto il debug wireless, il controller 9800 WLC genera un file locale con il nome:
ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
Passaggio 9. Raccogliere il file dell'attività dell'indirizzo MAC. È possibile copiare il file trace.log su un server esterno oppure visualizzare l'output direttamente sullo schermo.
Controllare il nome del file delle tracce RA:
# dir bootflash: | inc ra_trace
Copiare il file su un server esterno:
# copy bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log tftp://a.b.c.d/ra-FILENAME.txt
Visualizzare il contenuto:
# more bootflash:ra_trace_MAC_aaaabbbbcccc_HHMMSS.XXX_timezone_DayWeek_Month_Day_year.log
Passaggio 10. Se la causa principale non è ancora ovvia, raccogliere i log interni, che offrono una visualizzazione più dettagliata dei log del livello di debug. Non è necessario eseguire di nuovo il debug del client per ulteriori dettagli sui log di debug già raccolti e archiviati internamente.
# show logging profile wireless internal filter { mac | ip } { <aaaa.bbbb.cccc> | <a.b.c.d> } to-file ra-internal-<FILENAME>.txt
Nota: Questo output del comando restituisce tracce per tutti i livelli di log per tutti i processi ed è piuttosto voluminoso. Contattare Cisco TAC per analizzare queste tracce.
È possibile copiare il file ra-internal-FILENAME.txt su un server esterno o visualizzare l'output direttamente sullo schermo.
Copiare il file su un server esterno:
# copy bootflash:ra-internal-<FILENAME>.txt tftp://a.b.c.d/ra-internal-<FILENAME>.txt
Visualizzare il contenuto:
# more bootflash:ra-internal-<FILENAME>.txt
Passaggio 11. Rimuovere le condizioni di debug.
# clear platform condition all
Nota: Assicurarsi di rimuovere sempre le condizioni di debug dopo una sessione di risoluzione dei problemi.
GUI:
Passaggio 1. Accedere a Troubleshooting > Radioactive Trace > + Add
e specificare l'indirizzo MAC/IP dei client per i quali si desidera eseguire la risoluzione dei problemi.

Passaggio 2. Fare clic su Start.
Passaggio 3. Riprodurre il problema.
Passaggio 4. Fare clic su Interrompi.
Passaggio 5. Fare clic sul Generate
pulsante, selezionare l'intervallo di tempo per il quale si desidera ottenere i log, quindi fare clic su Apply to Device. In this example, the logs for the last 10 minutes are requested.

Passaggio 6. Scaricare la traccia radioattiva sul computer, fare clic sul pulsante di download ed esaminarla.

Risoluzione dei problemi con ISE
In caso di problemi con l'autenticazione del client, è possibile verificare i log sul server ISE. Accedere a per Operations > RADIUS > Live Logs
visualizzare l'elenco delle richieste di autenticazione, il set di criteri corrispondente, il risultato di ogni richiesta e così via. È possibile ottenere maggiori dettagli facendo clic sulla lente di ingrandimento sotto la Details
linguetta di ciascuna linea, come mostrato nell'immagine:
