La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento vengono forniti suggerimenti per risolvere i problemi di autenticazione Web in un ambiente WLC (Wireless LAN Controller).
Cisco raccomanda la conoscenza dei seguenti argomenti:
Controllo e provisioning dei punti di accesso wireless (CAPWAP).
Come configurare un Lightweight Access Point (LAP) e un WLC per le operazioni di base.
Conoscenze base dell'autenticazione Web e di come configurare l'autenticazione Web sui WLC.
Per informazioni su come configurare l'autenticazione Web sui WLC, fare riferimento all'esempio di configurazione dell'autenticazione Web del controller LAN wireless.
Per questo documento, è stato usato uno switch WLC 5500 con firmware versione 8.3.121.
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.
Questo documento può essere utilizzato anche per questo hardware:
Cisco serie 5500 Wireless Controller
Cisco serie 2500 Wireless Controller
Cisco Airespace serie 3500 WLAN Controller
Cisco Airespace serie 4000 Wireless LAN Controller
Cisco Flex serie 7500 Wireless Controller
Cisco Wireless Services Module 2 (WiSM2)
L'autenticazione Web è una funzione di sicurezza di livello 3 che impedisce al controller di autorizzare il traffico IP, ad eccezione dei pacchetti correlati a DHCP/DNS (Domain Name System), da un determinato client fino a quando il client non ha fornito correttamente un nome utente e una password validi, con un'eccezione del traffico consentito tramite un elenco di controllo di accesso (ACL) di preautenticazione. L'autenticazione Web è l'unico criterio di protezione che consente al client di ottenere un indirizzo IP prima dell'autenticazione. Si tratta di un semplice metodo di autenticazione senza la necessità di un supplicant o di un'utility client. L'autenticazione Web può essere eseguita localmente su un WLC o su un server RADIUS. L'autenticazione Web viene in genere utilizzata dai clienti che desiderano distribuire una rete di accesso guest.
L'autenticazione Web viene avviata quando il controller intercetta il primo pacchetto TCP HTTP (porta 80) GET dal client. Affinché il browser Web del client arrivi a questo punto, il client deve prima ottenere un indirizzo IP ed eseguire una conversione dell'URL in indirizzo IP (risoluzione DNS) per il browser Web. In questo modo il browser Web può sapere quale indirizzo IP inviare HTTP GET.
Quando l'autenticazione Web è configurata sulla WLAN, il controller blocca tutto il traffico (fino al completamento del processo di autenticazione) proveniente dal client, ad eccezione del traffico DHCP e DNS. Quando il client invia il primo HTTP GET alla porta TCP 80, il controller reindirizza il client a https://192.0.2.1/login.html (se si tratta dell'IP virtuale configurato) per l'elaborazione. Questo processo apre la pagina Web di login.
Nota: quando si utilizza un server Web esterno per l'autenticazione Web, le piattaforme WLC richiedono un ACL di preautenticazione per il server Web esterno.
In questa sezione viene illustrato in dettaglio il processo di reindirizzamento dell'autenticazione Web.
Aprire il browser Web e digitare un URL, ad esempio http://www.example.com. Il client invia una richiesta DNS per questo URL per ottenere l'IP per la destinazione. WLC passa la richiesta DNS al server DNS e il server DNS risponde con una risposta DNS, che contiene l'indirizzo IP della destinazione www.example.com, che a sua volta viene inoltrata ai client wireless.
Il client tenta quindi di aprire una connessione TCP con l'indirizzo IP di destinazione. Invia un pacchetto TCP SYN destinato all'indirizzo IP di www.example.com.
Il WLC ha delle regole configurate per il client e può quindi fungere da proxy per www.example.com. Invia un pacchetto TCP SYN-ACK al client con origine come indirizzo IP di www.example.com. Il client restituisce un pacchetto TCP ACK per completare l'handshake TCP a tre vie e la connessione TCP viene stabilita completamente.
Il client invia un pacchetto HTTP GET destinato a www.example.com. Il WLC intercetta questo pacchetto e lo invia per la gestione del reindirizzamento. Il gateway applicazioni HTTP prepara un corpo HTML e lo invia come risposta al comando HTTP GET richiesto dal client. Con questo codice HTML il client passa all'URL predefinito della pagina Web del WLC, ad esempio http://<Virtual-Server-IP>/login.html.
Il client chiude la connessione TCP con l'indirizzo IP, ad esempio www.example.com.
A questo punto il client desidera andare su http://<virtualip>/login.html e quindi cerca di aprire una connessione TCP con l'indirizzo IP virtuale del WLC. Invia un pacchetto TCP SYN per 192.0.2.1 (ossia il nostro IP virtuale qui) al WLC.
Il WLC risponde con un TCP SYN-ACK e il client restituisce un TCP ACK al WLC per completare l'handshake.
Il client invia una richiesta HTTP GET per /login.html destinata alla versione 192.0.2.1 per richiedere la pagina di accesso.
Questa richiesta è consentita fino al server Web del WLC e il server risponde nuovamente con la pagina di accesso predefinita. Il client riceve la pagina di login nella finestra del browser dove l'utente può procedere ed effettuare il login.
Nell'esempio, l'indirizzo IP del client è 192.168.68.94. Il client ha risolto l'URL del server Web a cui ha avuto accesso, 10.1.0.13. Come si può vedere, il client ha eseguito l'handshake a tre vie per avviare la connessione TCP e quindi ha inviato un pacchetto HTTP GET iniziato con il pacchetto 96 (00 è il pacchetto HTTP). Questo non è stato attivato dall'utente, ma dal sistema operativo sono stati attivati i trigger di rilevamento automatico del portale (come si può intuire dall'URL richiesto). Il controller intercetta i pacchetti e risponde con il codice 200. Il pacchetto del codice 200 contiene un URL di reindirizzamento:
<HTML><HEAD>
<TITLE> Web Authentication Redirect</TITLE>
<META http-equiv="Cache-control" content="no-cache">
<META http-equiv="Pragma" content="no-cache">
<META http-equiv="Expires" content="-1">
<META http-equiv="refresh" content="1; URL=https://192.0.2.1/login.html?redirect=http://captive.apple.com/hotspot-detect.html">
</HEAD></HTML>
Quindi chiude la connessione TCP tramite l'handshake a tre vie.
Il client avvia quindi la connessione HTTPS all'URL di reindirizzamento che lo invia a 192.0.2.1, che è l'indirizzo IP virtuale del controller. Il client deve convalidare il certificato del server o ignorarlo per attivare il tunnel SSL. In questo caso, si tratta di un certificato autofirmato, quindi il client lo ha ignorato. La pagina Web di accesso viene inviata tramite questo tunnel SSL. Il pacchetto 112 inizia le transazioni.
È possibile configurare il nome di dominio per l'indirizzo IP virtuale del WLC. Se si configura il nome di dominio per l'indirizzo IP virtuale, questo nome di dominio viene restituito nel pacchetto HTTP OK dal controller in risposta al pacchetto HTTP GET del client. È quindi necessario eseguire una risoluzione DNS per questo nome di dominio. Una volta ottenuto un indirizzo IP dalla risoluzione DNS, tenta di aprire una sessione TCP con tale indirizzo IP, che è un indirizzo IP configurato su un'interfaccia virtuale del controller.
Alla fine, la pagina Web viene passata attraverso il tunnel al client e l'utente restituisce il nome utente e la password tramite il tunnel SSL (Secure Sockets Layer).
L'autenticazione Web viene eseguita tramite uno dei tre metodi seguenti:
Utilizza una pagina Web interna (impostazione predefinita).
Utilizzare una pagina di accesso personalizzata.
Utilizzare una pagina di accesso da un server Web esterno.
Note:
- Il pacchetto di autenticazione Web personalizzato prevede un limite massimo di 30 caratteri per i nomi dei file. Assicuratevi che i nomi di file all'interno del fascio non siano più lunghi di 30 caratteri.
- A partire dalla versione WLC 7.0, se l'autenticazione Web è abilitata sulla WLAN e si dispone anche di regole ACL della CPU, le regole di autenticazione Web basate sul client hanno sempre la precedenza, purché il client non sia autenticato nello stato WebAuth_Reqd. Quando il client passa allo stato RUN, vengono applicate le regole ACL della CPU.
- Pertanto, se gli ACL della CPU sono abilitati nel WLC, è richiesta una regola di autorizzazione per l'IP dell'interfaccia virtuale (in QUALSIASI direzione) nelle seguenti condizioni:
- Quando l'ACL della CPU non dispone di una regola allow ALL per entrambe le direzioni.
- Quando esiste una regola Allow ALL, ma esiste anche una regola DENY per la porta 443 o 80 con precedenza superiore.
- La regola di autorizzazione per l'IP virtuale deve essere impostata per il protocollo TCP e la porta 80 se secureweb è disabilitato oppure la porta 443 se secureweb è abilitato. Questa operazione è necessaria per consentire l'accesso del client all'indirizzo IP dell'interfaccia virtuale dopo l'autenticazione riuscita quando sono presenti ACL della CPU.
Dopo aver configurato l'autenticazione Web e se la funzionalità non funziona come previsto, attenersi alla seguente procedura:
In Macintosh/Linux aprire una finestra del terminale ed eseguire una ricerca nslookup www.cisco.com e verificare se l'indirizzo IP viene restituito.
Se si ritiene che il client non ottenga la risoluzione DNS, è possibile:
Quando immetti questo URL, la pagina Web viene visualizzata? Se sì, è molto probabile che si tratti di un problema DNS. Può anche trattarsi di un problema relativo al certificato. Per impostazione predefinita, il controller utilizza un certificato autofirmato e la maggior parte dei browser Web ne avvisa l'utente.
È possibile scaricare uno script di autenticazione Web di esempio da Cisco Software Downloads. Ad esempio, per i controller 5508, scegliere Prodotti > Wireless > Wireless LAN Controller > Controller autonomi > Cisco Wireless LAN Controller serie 5500 > Cisco Wireless LAN Controller > Software sullo chassis > Wireless Lan Controller Web Authentication Bundle e scaricare il file webauth_bundle.zip.
Questi parametri vengono aggiunti all'URL quando il browser Internet dell'utente viene reindirizzato alla pagina di accesso personalizzata:
Di seguito sono riportati i codici di stato disponibili:
Per ulteriori informazioni su come creare una finestra di autenticazione Web personalizzata, fare riferimento alla sezione Linee guida per l'autenticazione Web personalizzata di Esempio di configurazione dell'autenticazione Web del controller LAN wireless.
Nota: i file di grandi dimensioni e i file con nomi lunghi possono generare un errore di estrazione. È consigliabile che le immagini siano in formato jpg.
Nota: passare al menu Controller > Interfacce dalla GUI del WLC per assegnare un nome host DNS all'interfaccia virtuale.
Protocollo | Port |
---|---|
Traffico HTTP/HTTPS | porta TCP 80/443 |
Dati CAPWAP/Controllo traffico | porta UDP 5247/5246 |
Traffico di controllo/dati LWAPP (prima di rel 5.0) | porta UDP 1222/1223 |
Pacchetti EOIP | Protocollo IP 97 |
Mobilità | Porta UDP 16666 (non protetta) Porta UDP 16667 (tunnel IPSEC protetto) |
netsh ras set tracing eapol enable netsh ras set tracing rastls enable
Per disabilitare i registri, eseguire lo stesso comando ma sostituire enable con disable. Per XP, tutti i registri si trovano in C:\Windows\tracing.
debug client <mac_address in format xx:xx:xx:xx:xx:xx> debug dhcp message enable debug aaa all enable debug dot1x aaa enable debug mobility handoff enable
debug pm ssh-appgw enable debug pm ssh-tcp enable debug pm rules enable debug emweb server enable debug pm ssh-engine enable packet <client ip>
Revisione | Data di pubblicazione | Commenti |
---|---|---|
3.0 |
20-Mar-2024 |
Certificazione |
1.0 |
13-Nov-2008 |
Versione iniziale |