13) In cosa consiste Kerberos? Qual è la sua architettura?
Kerberos è un protocollo pere l'autenticazione in un sistema distribuito cliente/servitore.
È parte del progetto Athena MIT
Kerberos usa chiavi simmetriche per l'autenticazione in ambiente di rete
L’architettura del sistema è la seguente:
Servizi differenziati
per il sistema Kerberos, servizio di Chiavi:
servizio di Autenticazione (gestione delle diverse interazioni)
servizio di Ticket
per ogni servizio,
gestione dell'autenticazione
Entità coinvolte:
Authentication Server (AS)
Ticket Granting Server (TGS)
Ogni servitore deve essere noto al gestore dell'autenticazione.
Kerberos manipola tre tipi di oggetti
Ticket: un token fornito ad un client dal Kerberos TGS per potersi presentare ad un particolare server, che deve verificare che il client sia stato autenticato da Kerberos. Nel ticket sono inclusi un tempo di scadenza ed una chiave di sessione (session key) che viene utilizzata dal client e dal server.
Authenticator: un token costruito dal client e spedito al server per provare l’identità dell’utente. Un authenticator può essere usato solo una volta. Contiene il nome del client, un timestamp, ed è crittato con l’appropriata session key.
Session key: chiave segreta generata casualmente da Kerberos e fornita ad un client per l’uso nella comunicazione con un particolare server. La crittazione non è obbligatoria per tutte le comunicazioni con i server: la session key è utilizzata per crittare le comunicazioni con quei server che la richiedono e per crittare gli authenticator.