Grazie alle Password ed ai Privileged Level è possibile proteggere un router Cisco da accessi indesiderati, e definire policy di accesso, configurazione e utilizzo. In caso di perdita delle parole d'accesso è comunque possibile riottenere il controllo dell'apparato grazie alle procedure di password recovery eseguibili localmente.
Le password utilizzabili su un router Cisco si dividono in due categorie, le Enable Password che proteggono il privileged EXEC mode e le Line Password ovvero quelle che proteggono l'accesso da Auxiliary Port, da Console Port e tramite Telnet.
ENABLE PASSWORD
La password per la modalità privileged EXEC detta password di ENABLE viene settata tramite il comando enable password
. Utilizzando questo comando, la password risulta però visibile nel file di configurazione, per garantire una migliore sicurezza è consigliato l'utilizzo di password crittografate tramite il comando enable secret
.
Esempio:
Router# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# enable secret ndcdiv400
Ora la password è presente crittografata nel file di configurazione
LINE PASSWORD
Le line password devono anch'esse essere settate in Global Configuration Mode, il comando utilizzato è password
. Tramite il comando line ?
è possibile visualizzare quali interfacce line è possibile configurare:
Router(config)# line ?
<0-4> First Line number
aux Auxiliary line
console Primary terminal line
vty Virtual terminal
Possiamo notare aux per la Auxilary porte, console per la ominima porta e vty per gli accessi via telnet sulle interfacce configurate e attive
Alcuni esempi di configurazione per le line password:
AUXILARY PORT
Router(config)# line aux ?
<0-0> First Line number
Con il comando line <nomeinterfaccia> ? IOS restituisce il numero di interfacce disponibili. In questo caso vediamo che essendoci una sola Auxilary Port il range è 0-0 ovvero una sola line disponibile, la prima ovvero la line 0
Router(config)# line aux 0
Router(config-line)# login
Viene indicato che il settaggio è relativo al login su questa porta
Router(config-line)# password oskcpr
CONSOLE PORT
Router(config)# line console ?
<0-0> First Line number
Router(config)# line console 0
Router(config-line)# login
Router(config-line)# password oskcpr
ACCESSO VIA TELNET
Router(config)# line vty 0 ?
<0-4>Last Line Number
Router(config-line)# line vty 0 4
Il settaggio fa riferimento agli accessi via telnet da 0 a 4
Router(config-line)# login
Router(config-line)# password osktps
PASSWORD ENCRYPTION
Solamente attraverso il comando enable secret
le password settate sul router vengono crittografate di default, altrimenti restano visibili nel file di configurazione. Per fare in modo che ogni password immessa venga sempre crittografata è possibile abilitare il servizio di password encryption. Questa feature viene attivata in global configuration mode tramite il comando: service password-encryption
.
Esempio:
Router# conf t
Enter configuration commands, one per line. End with CNTL/Z.
Conf t è un'abbreviazione possibile di configuration terminal per entrare in global configuration mode
Router(config)# service password-encryption
Ora ogni password è crittografata di default
Router(config)# Exit
Router# show running-config
!
version 12.1
..
service timestamps debug uptime
service timestamps log uptime
service password-encryption
..
Visualizzando la configurazione corrente tramite il comando show running-config è possibile vedere che il servizio di password-encryption è attivo
Router# copy running-config startup-config
A questo punto la configurazione viene salvata in NVRAM
PRIVILEGE LEVELS
Un router cisco prevede di default due livelli di utilizzo, a livello 1 troviamo user EXEC Mode mentre a livello 15 troviamo Privileged EXEC mode. Tra questi due livelli è possibile inserire ulteriori levels, i quali protetti da password consentono solamente l'utilizzo di determinati comandi. Un'ipotetica policy potrebbe essere quella di definire degli operatori che possando eseguire solo operazioni di debug:
Router(config)# enable password level 10 pswoscr
Viene abilitata una password per lavorare a level 10
Router(config)# privilege exec level 10 debug ppp chap
Router(config)# privilege exec level 10 debug ppp error
Router(config)# privilege exec level 10 debug ppp negotiation
L'operatore che farà il log sul router a level 10 potrà utilizzare i comandi di debug sul protocollo ppp sopra definiti o definiti a levels inferiori e non altri
Router(config)# exit
Router# copy running-config startup-config
Uscita dalla modalità di configurazione globale e salvataggio nel file di configurazione
Una volta stabiliti i vari privilege level sarà possibile autenticarsi con i camandi enable numero_level
, uscire dal livello con disable numero_level
o verificare in che level si è loggati con show privilege
.
PASSWORD RECOVERY
Le procedure di password recovery di un router Cisco possono essere eseguite, per ragioni di sicurezza, solamente dalla porta console dell'apparato. Il recupero dell'accesso all'apparato varia da modello a modello di router, ma il processo è sostanzialmente il seguente:
FASE 1: Settare il router (tramite il configuration register) in modo da non utilizzare la configurazione presente nella NVRAM;
FASE 2: Riavviare il router;
FASE 3: Entrare in modalità Privileged EXEC mode (che a questo punto sarà priva di password di accesso);
FASE 4: In caso di password non crittografate sarà possibile visualizzare dal file di configurazione nella NVRAM, altrimenti sarà necessario settare una nuova password, nel caso peggiore bisognera caricare una nuova configurazione;
FASE 5: Settare nuovamente il router per leggere il file di configurazione nella NVRAM;
FASE 6: Riavviare il router
Consultando il sito di Cisco Systems è possibile trovare la procedura di Password Recovery per ogni modello di Router.