Funzionamento di Kerberos

Su una rete "tradizionale" in cui l'autenticazione degli utenti avviene tramite password, ogni volta che un utente deve essere autenticato per accedere ad un servizio, è necessario digitare la password. La password viene inviata in chiaro via rete ed il server verifica l'identità dell'utente.

Come già sottolineato in precedenza, il problema centrale risolto da Kerberos riguarda l'uso delle password per autenticare l'utente senza doverle inviare via rete. Il database Kerberos contiene le chiavi per tutti i servizi di rete.

Quando un utente completa la fase di log sulla sua workstation collegata ad una rete kerberos, il suo principal viene inviato al KDC sotto forma di richiesta TGT. Questa richiesta può essere inviata dal programma login (in modo trasparente) o dal programma kinit una volta che l'utente si è collegato.

Il KDC controlla il principal nel suo database. Se viene trovato, crea un TGT, lo cripta usando la chiave dell'utente e lo invia come risposta.

Il programma login o kinit decripta il TGT utilizzando la chiave dell'utente. Il TGT, che spira dopo un periodo predefinito, viene immaganizzato nella cache. Per ogni TGT viene impostato un tempo limite di utilizzo per migliorare il livello di sicurezza. Di solito il tempo limite è di otto ore.

Quando un utente deve accedere ad un servizio di rete, il TGT richiede un ticket per il servizio al Ticket Granting Service (TGS), in esecuzione sul KDC. Il TGS rilascia un ticket che viene usato per autenticare l'utente.

Probabilmente vi sarete resi conto che la spiegazione sopra riportata è stata semplificata. Se desiderate approfondire l'argomento, fate riferimento alla la sezione Ricerca di informazioni sul sistema kerberos.

NotaNota bene
 

Kerberos dipende da alcuni servizi di rete per poter funzionare correttamente. Prima di tutto è necessario che gli orologi dei vari calcolatori siano sincronizzati. Inoltre alcuni aspetti di Kerberos si basano sul servizio DNS (Domain Name Service); perciò accertatevi che il DNS sia configurato correttamente. Per maggiori informazioni, potete consultare la Kerberos V5 System Administrator's Guide presente nella directory /usr/share/doc/krb5-server-versionnumber/ in formato HTML e PostScript.