Il sistema di sicurezza e l'integrit� all'interno di una rete possono rappesentare un problema complesso. Numerosi amministratori possono essere impegnati per controllare i servizi eseguiti su di una rete e il modo con il quale essi vengono usati. L'autenticazione di un utente pu� essere pericolosa se fatta con protocolli insicuri, esempio il trasferimento in chiaro attraverso la rete di una password usando protocolli Telnet e FTP. L'uso di Kerberos pu� rappresentare un modo per eliminare il bisogno di usare protocolli che permettono l'uso di metodi poco sicuri di autenticazione, aumentandone cos� la sicurezza di rete.
19.1. Che cos'� Kerberos?
Kerberos � un protocollo di autenticazione dei servizi di rete creato da MIT che si serve della crittografia a chiave segreta [1] per autenticare gli utenti per i servizi di rete — eliminando cos� la necessit� di inviare le password attraverso la rete. Autenticare mediante Kerberos impedisce agli utenti non autorizzati di intercettare le password inviate attraverso la rete.
19.1.1. Vantaggi di Kerberos
La maggior parte dei sistemi di rete convenzionali usa uno schema di autenticazione basato sulle password. Quando un utente effettua una autenticazione per accedere a un server di rete deve fornire un nome utente ed una password. Sfortunatamente, la trasmissione delle informazioni di autenticazione per molti servizi non � criptata. Per essere sicuri in uno schema di questo tipo, la rete non deve essere accessibile dall'esterno e tutti i computer e gli utente sulla rete, devono essere fidati.
Anche in questo caso, una volta che una rete � collegata a Internet, non si potr� pi� assumere che la rete sia sicura. Qualunque aggressore che ha accesso alla rete e che pu� utilizzare un analizzatore di pacchetti di rete (solitamente chiamato packet sniffer) pu� intercettare le password e i nomi utente che attraversano la rete, compromettendo cos� gli account dell'utente e l'integrit� della sicurezza dell'infrastruttura.
Lo scopo principale di Kerberos � quello di eliminare la trasmissione delle informazioni di autenticazione attraverso la rete. Il corretto utilizzo di Kerberos vi permette di ridurre drasticamente la possibilit� di intercettazione da parte dei packet sniffer.
19.1.2. Svantaggi di Kerberos
Tramite Kerberos si riesce a proteggere la rete dagli attacchi pi� comuni. Tuttavia, potrebbe risultare complesso da implementare, per varie ragioni:
Migrare le password utente da un database delle password di UNIX standard, per esempio /etc/passwd o /etc/shadow, a quello di Kerberos pu� essere noioso, in quanto non esiste alcun meccanismo automatico che consenta di fare questo. Per maggiori informazioni a riguardo, consultate la domanda numero 2.23 nella sezione FAQ di Kerberos,
Kerberos � solo in parte compatibile con il sistema PAM (Pluggable Authentication Modules) usato dalla maggior parte dei server Red Hat Enterprise Linux. Per maggiori informazioni, consultate la Sezione 19.4.
Kerberos parte dal presupposto che ogni utente sia fidato e che stia usando un host non fidato su di una rete non fidata. Il suo obiettivo principale � di impedire che le password non cifrate vengano inviate attraverso questa rete. Tuttavia, se qualcuno diverso dall'utente effettivo ha accesso fisico a uno degli host, specialmente quello che emette i ticket usati per l'autenticazione —, chiamato key distribution center (KDC) —l'intero sistema di autenticazione di Kerberos � a rischio.
Affinch� una applicazione possa usare Kerberos, � necessario modificare il suo codice sorgente per effettuare le chiamate alle librerie Kerberos. Le applicazioni modificate in questo modo, vengono considerate essere kerberizzati. Per alcune applicazioni, questo pu� essere un p� problematico a causa della misura dell'applicazione o del suo modello. Per altre applicazioni incompatibili, occorre effettuare dei cambiamenti in modo tale che il client e il server possano comunicare. Ed ancora ci� pu� comportare molta programmazione. Le applicazioni a sorgente chiusa che non supportano Kerberos di default, risultano quelle pi� problematiche.
Kerberos � una soluzione che non prevede vie di mezzo. Se decidete di utilizzare Kerberos sulla rete, dovete ricordarvi tutte le password trasferite a un servizio che non lo supporta, poich� l'autenticazione rischia di essere intercettata dai packet sniffer. In questo caso, la rete pu� ottenere nussun beneficio nell'uso di kerberos. Per proteggere una rete con Kerberos, � necessario che una di essa utilizzi una versione kerberizzata di tutte le applicazioni client/server che inviano password non cifrate, oppure � necessario evitare qualsiasi applicazione di questo tipo.