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 viene spiegato come configurare il processo di autenticazione, autorizzazione e accounting, o AAA (Authentication, Authorization, and Accounting), su un router Cisco con protocollo Radius o TACACS+.
Nessun requisito specifico previsto per questo documento.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
Per la stesura del documento, è stato usato Cisco IOS® Software Release 12, versione principale.
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.
In questo documento viene spiegato come configurare il processo di autenticazione, autorizzazione e accounting, o AAA (Authentication, Authorization, and Accounting), su un router Cisco con protocollo Radius o TACACS+. Scopo del documento non è descrivere tutte le funzionalità AAA, ma spiegare i comandi principali e fornire alcuni esempi e alcune linee guida.
Nota: Leggere la sezione sulla configurazione generale del server AAA prima di procedere con la configurazione di Cisco IOS. In caso contrario, potrebbero verificarsi errori di configurazione e conseguenti blocchi.
Per ulteriori informazioni, fare riferimento alla Guida alla configurazione della funzione di autenticazione, autorizzazione e accounting.
Esempio di rete
Per abilitare la funzione AAA, è necessario configurare il comando aaa new-model in modalità di configurazione globale.
Nota: Finché questo comando non è abilitato, tutti gli altri comandi AAA sono nascosti.
Avviso: Il comando aaa new-model applica immediatamente l'autenticazione locale a tutte le righe e interfacce (ad eccezione della riga della console con 0). Se si apre una sessione Telnet con il router dopo aver abilitato questo comando (o se una connessione scade e deve essere ripristinata), l'utente deve essere autenticato utilizzando il database locale del router. Si consiglia di definire un nome utente e una password sul server di accesso prima di avviare la configurazione AAA, in modo da non essere esclusi dal router. Vedere il codice di esempio seguente.
Router(config)#username xxx password yyy
Suggerimento: Prima di configurare i comandi AAA, save
procedere alla configurazione. È possibile salvare () nuovamente la configurazione solo dopo aver completato la configurazione AAA e aver verificato che funzioni correttamente. save
Ciò consente di eseguire il ripristino in caso di blocchi imprevisti in quanto è possibile annullare qualsiasi modifica ricaricando il router.
Nella modalità di configurazione globale, definire il protocollo di sicurezza utilizzato con AAA (Radius, TACACS+). Se non si desidera utilizzare nessuno di questi due protocolli, è possibile utilizzare il database locale sul router.
Se si utilizza TACACS+, usare il comando tacacs-server host<IP address of the AAA server> <key> .
Se si utilizza Radius, usare il comando radio-server host<IP address of the AAA server> <key> .
Sul server AAA, configurare i seguenti parametri:
Nome del server di accesso.
Indirizzo IP utilizzato dal server di accesso per comunicare con il server AAA.
Nota: Se entrambi i dispositivi si trovano sulla stessa rete Ethernet, per impostazione predefinita il server di accesso utilizza l'indirizzo IP definito sull'interfaccia Ethernet quando invia il pacchetto AAA. Questo problema influisce soprattutto negli scenari in cui il router ha più interfacce (e quindi più indirizzi).
La stessa identica chiave <key> configurata nel server di accesso.
Nota: La chiave fa distinzione tra maiuscole e minuscole.
Protocollo utilizzato dal server di accesso (TACACS+ o Radius).
Fare riferimento alla documentazione del server AAA per la procedura esatta utilizzata per configurare i parametri precedenti. Se il server AAA non è configurato correttamente, le richieste AAA provenienti dal NAS possono essere ignorate dal server AAA ed è possibile che la connessione non venga stabilita.
Il server AAA deve essere raggiungibile tramite indirizzo IP dal server di accesso (eseguire un test ping per verificare la connettività).
L'autenticazione verifica gli utenti prima che possano accedere alla rete e ai servizi della rete (verificati con l'autorizzazione).
Per configurare l'autenticazione AAA:
Definire innanzitutto un elenco di metodi di autenticazione e assegnarvi un nome (in modalità di configurazione globale).
Applicare tale elenco a una o più interfacce (in modalità di configurazione interfaccia).
L'unica eccezione riguarda l'elenco di metodi predefinito (denominato default). L'elenco di metodi predefinito viene applicato automaticamente a tutte le interfacce tranne quelle per cui è definito in modo esplicito un elenco di metodi con nome. Un elenco dei metodi definito sostituisce l'elenco dei metodi predefinito.
Questi esempi di autenticazione usano l'autenticazione Radius, di accesso e Point-to-Point Protocol (PPP) per spiegare concetti come i metodi e gli elenchi con nome. In tutti gli esempi, TACACS+ può essere sostituito dall'autenticazione Radius o locale.
Il software Cisco IOS usa il primo metodo nell'elenco per autenticare gli utenti. In caso di esito negativo, con conseguente generazione di un errore, il software Cisco IOS passa al metodo di autenticazione successivo presente nell'elenco dei metodi. Questo processo continua finché uno dei metodi di autenticazione nell'elenco non permette di stabilire una comunicazione oppure finché non sono stati provati tutti i metodi inclusi nell'elenco.
È importante notare che il software Cisco IOS tenta di autenticarsi con il metodo di autenticazione successivo nell'elenco solo quando il metodo precedente non ha ricevuto una risposta. Se in qualsiasi momento di questo ciclo l'autenticazione non riesce, ovvero se il server AAA o il database dei nomi utente locali devono negare all'utente l'accesso (indicato da un FAIL), il processo di autenticazione si arresta e non vengono tentati altri metodi di autenticazione.
Per consentire l'autenticazione di un utente, è necessario configurare il nome utente e la password sul server AAA.
Per autenticare gli utenti che vogliono accedere al server in modalità di esecuzione (tty, vty, console e aux), è possibile utilizzare il comando aaa creation login.
Router(config)#aaa authentication login default group radius local
Nel comando precedente:
L'elenco con nome è quello predefinito (default).
Sono menzionati due metodi di autenticazione (group radius e local).
Tutti gli utenti vengono autenticati sul server Radius (il primo metodo). Se il server Radius non risponde, viene utilizzato il database locale del router (il secondo metodo). Per l'autenticazione locale, definire il nome utente e la password:
Router(config)#username xxx password yyy
Poiché viene utilizzato l'elenco predefinito nel comando aaa creation login, l'autenticazione di accesso viene applicata automaticamente a tutte le connessioni di accesso (ad esempio tty, vty, console e aux).
Nota: Il server (Radius o TACACS+) non può rispondere a una richiesta di autenticazione aaa inviata dal server di accesso in assenza di connettività IP, se il server di accesso non è definito correttamente sul server AAA o se il server AAA non è definito correttamente sul server di accesso.
Nota: Se si utilizza l'esempio precedente senza la parola chiave local, il risultato è:
Router(config)#aaa authentication login default group radius
Nota: Se il server AAA non risponde alla richiesta di autenticazione, l'autenticazione non riesce (in quanto il router non dispone di un metodo alternativo da provare).
Nota: La parola chiave group consente di raggruppare gli host del server corrente. La funzione consente all'utente di selezionare un sottogruppo di server host configurati e utilizzarli per un particolare servizio.
Espandere la configurazione dell'esempio 1 in modo che l'accesso alla console sia autenticato solo tramite la password impostata sull'interfaccia line con 0.
L'elenco CONSOLE viene definito e applicato sull'interfaccia line con 0.
Configurazione:
Router(config)#aaa authentication login CONSOLE line
Nel comando precedente:
Il nome dell'elenco è CONSOLE.
Esiste un solo metodo di autenticazione (riga).
Quando si crea un elenco con nome (nell'esempio CONSOLE), è necessario applicarlo a una riga o a un'interfaccia prima che venga eseguito. A tale scopo, usare login authentication
il comando:
Router(config)#line con 0 Router(config-line)#exec-timeout 0 0 Router(config-line)#password cisco Router(config-line)#login authentication CONSOLE
L'elenco CONSOLE ignora l'impostazione predefinita dell'elenco dei metodi sulla riga con 0. Dopo questa configurazione sulla riga con 0, è necessario immettere la password cisco per ottenere l'accesso alla console. L'elenco predefinito viene ancora utilizzato su tty, vty e aux.
Nota: Per autenticare l'accesso alla console con un nome utente e una password locali, utilizzare il codice di esempio riportato di seguito.
Router(config)#aaa authentication login CONSOLE local
In questo caso, è necessario configurare un nome utente e una password nel database locale del router. L'elenco deve essere applicato anche alla riga o all'interfaccia.
Nota: Per non disporre di alcuna autenticazione, utilizzare il codice di esempio riportato di seguito.
Router(config)#aaa authentication login CONSOLE none
In questo caso, non è possibile eseguire l'autenticazione per accedere alla console. L'elenco deve essere applicato anche alla riga o all'interfaccia.
È possibile eseguire l'autenticazione accedendo in modalità abilitazione (privilegio 15).
Configurazione:
Router(config)#aaa authentication enable default group radius enable
Può essere richiesta solo la password. Il nome utente è $enab15$. Pertanto, sul server AAA deve essere definito il nome utente $enab15$.
Se il server Radius non risponde, potrebbe essere necessario immettere la password di abilitazione configurata localmente sul router.
Il comando aaa creation ppp viene utilizzato per autenticare una connessione PPP. In genere, questo comando viene utilizzato per autenticare gli utenti ISDN o remoti analogici che desiderano accedere a Internet o a una sede centrale tramite un server di accesso.
Il server di accesso ha un'interfaccia ISDN configurata per accettare client dial-in PPP. Utilizziamo il comando dialer rotary-group 0, ma la configurazione può essere eseguita sull'interfaccia principale o sull'interfaccia del profilo dialer.
Configurazione:
Router(config)#aaa authentication ppp default group radius local
Questo comando autentica tutti gli utenti PPP con Radius. Se il server Radius non risponde, viene utilizzato il database locale.
Per utilizzare un elenco con nome anziché l'elenco predefinito, configurare questi comandi:
Router(config)#aaa authentication ppp ISDN_USER group radius Router(config)#interface dialer 0 Router(config-if)#ppp authentication chap ISDN_USER
In questo esempio, l'elenco è ISDN_USER e il metodo è Radius.
Il server di accesso ha una scheda modem interna (Mica, Microcom o Next Port). Si supponga che siano stati configurati entrambi i comandi aaa authentication login e aaa authentication ppp.
Se un utente modem accede al router per la prima volta con una sessione di esecuzione in modalità carattere (ad esempio, dalla finestra del terminale dopo l'accesso diretto), l'utente viene autenticato su una riga tty. Per avviare una sessione in modalità pacchetto, gli utenti devono digitare ppp default o ppp. Poiché l'autenticazione PPP è configurata in modo esplicito (con aaa creation ppp), l'utente viene nuovamente autenticato a livello PPP.
Per evitare questa seconda autenticazione, utilizzare la parola chiave if-needed:
Router(config)#aaa authentication login default group radius local Router(config)#aaa authentication ppp default group radius local if-needed
Nota: Se il client avvia direttamente una sessione PPP, l'autenticazione PPP viene eseguita direttamente poiché non è disponibile l'accesso al server di accesso.
L'autorizzazione è il processo attraverso il quale è possibile controllare ciò che un utente può fare.
L'autorizzazione AAA ha le stesse regole dell'autenticazione:
Definire innanzitutto un elenco di metodi di autorizzazione e assegnarvi un nome.
Quindi, applicare l'elenco a una o più interfacce, ad eccezione dell'elenco di metodi predefinito.
Viene utilizzato il primo metodo nell'elenco. Se non si riceve risposta, viene usato il secondo metodo e così via.
Gli elenchi di metodi sono specifici del tipo di autorizzazione richiesto. In questo documento vengono descritti i tipi di autorizzazione in modalità esecuzione e rete.
Per ulteriori informazioni sugli altri tipi di autorizzazione, fare riferimento alla Guida alla configurazione della sicurezza di Cisco IOS.
Il comando aaa authorization exec determina se l'utente può eseguire una shell EXEC. Questa funzione può restituire le informazioni sul profilo dell'utente, come le informazioni sul comando automatico, il timeout di inattività, il timeout della sessione, l'elenco degli accessi e i privilegi e altri fattori specifici dell'utente.
L'autorizzazione in modalità di esecuzione può essere usata solo sulle righe vty e tty.
Nell'esempio successivo viene utilizzato Radius.
Quando si usa il comando:
Router(config)#aaa authentication login default group radius local
Tutti gli utenti che desiderano accedere al server di accesso devono essere autorizzati con Radius (primo metodo) o con il database locale (secondo metodo).
Configurazione:
Router(config)#aaa authorization exec default group radius local
Nota: Sul server AAA, è necessario selezionare Service-Type=1 (login).
Nota: Nell'esempio, se la parola chiave local non è inclusa e il server AAA non risponde, l'autorizzazione non è consentita e la connessione può non riuscire.
Nota: negli esempi 2 e 3 successivi, non è necessario aggiungere alcun comando sul router. È sufficiente configurare il profilo sul server di accesso.
In base all'esempio 1, configurare la successiva coppia AV Cisco sul server AAA in modo che un utente possa accedere al server di accesso e usare direttamente la modalità di abilitazione:
shell:priv-lvl=15
L'utente può ora passare direttamente alla modalità di abilitazione.
Nota: Se il primo metodo non risponde, viene utilizzato il database locale. Tuttavia, l'utente non può passare direttamente alla modalità di abilitazione, ma deve immettere il comando enable e fornire la password enable.
Per configurare un timeout di inattività (in modo che la sessione venga disconnessa in caso di assenza di traffico dopo il timeout di inattività) utilizzare l'attributo IETF Radius 28: Idle-Timeout nel profilo utente.
Il comando esegue l'autorizzazione per tutte le richieste di servizi relative alla rete, ad esempio PPP, SLIP e ARAP.aaa authorization network
In questa sezione viene spiegato come usare il protocollo più comune, ossia il protocollo PPP.
Il server AAA verifica se è consentita una sessione PPP da parte del client. Inoltre, le opzioni PPP possono essere richieste dal cliente: callback, compressione, indirizzo IP e così via. Queste opzioni devono essere configurate per il profilo utente sul server AAA. Inoltre, per un client specifico, il profilo AAA può contenere attributi idle-timeout, access-list e altri attributi specifici per l'utente che possono essere scaricati dal software Cisco IOS e applicati al client.
Gli esempi seguenti mostrano l'autorizzazione con Radius.
Il server di accesso viene utilizzato per accettare le connessioni dial-in PPP.
Gli utenti vengono autenticati (come configurato in precedenza) con:
Router(config)#aaa authentication ppp default group radius local
Utilizzare il comando successivo per autorizzare gli utenti:
Router(config)#aaa authorization network default group radius local
Nota: Sul server AAA, configurare: Service-Type=7 (con frame) e Framed-Protocol=PPP.
È possibile utilizzare il server AAA per assegnare attributi specifici dell'utente come l'indirizzo IP, il numero di richiamata, il valore di timeout di inattività del dialer o l'elenco degli accessi e così via. In tale implementazione, il NAS scarica gli attributi appropriati dal profilo utente del server AAA.
Analogamente all'autenticazione, configurare un elenco con nome anziché usare l'elenco predefinito:
Router(config)#aaa authorization network ISDN_USER group radius local
Quindi, applicare questo elenco all'interfaccia:
Router(config)#interface dialer 0 Router(config-if)#ppp authorization ISDN_USER
La funzione di accounting AAA consente di tenere traccia dei servizi a cui accedono gli utenti e della quantità di risorse di rete utilizzate.
Per l'accounting AAA sono valide le stesse regole applicate per l'autenticazione e l'autorizzazione:
È necessario prima definire un elenco di metodi di accounting e assegnarvi un nome.
Quindi, applicare l'elenco a una o più interfacce, ad eccezione dell'elenco di metodi predefinito.
Viene utilizzato il primo metodo nell'elenco; se il server non risponde, viene utilizzato il secondo metodo e così via.
L'accounting di rete fornisce informazioni per tutte le sessioni PPP, Slip e ARAP (AppleTalk Remote Access Protocol): numero di pacchetti, numero di ottetti, ora della sessione, ora di inizio e di fine.
L'accounting di esecuzione fornisce informazioni sulle sessioni terminali di esecuzione utente (ad esempio una sessione telnet) del server di accesso alla rete: ora della sessione, ora di inizio e di fine.
Gli esempi seguenti illustrano come inviare le informazioni al server AAA.
Per ogni sessione PPP con accesso esterno, le informazioni di accounting vengono inviate al server AAA dopo aver autenticato il client e aver effettuato la disconnessione con la parola chiave start-stop.
Router(config)#aaa accounting network default start-stop group radius local
Se le informazioni di accounting devono essere inviate solo dopo la disconnessione di un client, utilizzare la parola chiave stop e configurare la riga successiva:
Router(config)#aaa accounting network default stop group radius local
Fino a questo momento, l'accounting AAA fornisce il supporto dei record di avvio e arresto per le chiamate che hanno superato l'autenticazione utente.
Se l'autenticazione o la negoziazione PPP non riesce, l'autenticazione non viene registrata.
La soluzione consiste nell'utilizzare l'accounting di arresto degli errori delle risorse AAA:
Router(config)#aaa accounting send stop-record authentication failure
Un record di arresto viene inviato al server AAA.
Per abilitare l'accounting completo delle risorse, che genera un record di inizio alla configurazione della chiamata e un record di arresto alla fine, configurare:
Router(config)#aaa accounting resource start-stop
Questo comando è stato introdotto in Cisco IOS Software Release 12.1(3)T.
Con questo comando, un record di accounting start-stop per l'impostazione e la disconnessione delle chiamate tiene traccia dello stato di avanzamento della connessione delle risorse al dispositivo. Un record di accounting separato start-stop per l'autenticazione dell'utente tiene traccia dello stato di avanzamento della gestione degli utenti. Questi due gruppi di record di accounting sono collegati tra loro da un ID di sessione univoco per la chiamata.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
3.0 |
04-Dec-2023
|
Certificazione |
1.0 |
29-Nov-2001
|
Versione iniziale |