Concetti Chiave
- Kerberos è un sistema di autenticazione sviluppato dal MIT negli anni '80 per consentire agli utenti di autenticarsi su più server con una sola password.
- Il processo inizia quando il client invia una versione hash della password dell'utente a un Authentication Server (AS) per la verifica.
- Il client utilizza i dati ricevuti dall'AS per ottenere un ticket dal Ticket Granting Server (TGS) necessario per accedere ai servizi.
- Le informazioni vengono cifrate per proteggere i dati durante il trasferimento e impedire accessi non autorizzati.
- Kerberos è ampiamente utilizzato, ad esempio nei sistemi Windows e Mac OS X, con adattamenti specifici per ogni piattaforma.
Se il meccanismo di autenticazione è proiettato su un ambiente di rete,che può accadere che un utente voglia autenticarsi a partire da diversi client su diversi server.
Inoltre e immaginabile che su un determinato server un determinato utente possa avere privilegi di accesso diversi,a seconda del servizio che vuole utilizzare. Il tutto sarebbe implementabile senza problemi richiedendo all'utente l0immissione di una password ogni qual volta voglia accedere a un server o un servizio,ma un tale comportamento sarebbe decisamente noioso per chiunque:Il sistema Kerberos,sviluppato presso il MIT di Boston durante gli anni 80 è stato disegnato per permettere a più utenti di autenticarsi su più server e utilizzare più servizi digitando una solo password.
Il sistema e in se decisamente complesso,possiamo pero avere un'idea del suo funzionamento seguendo i seguenti punti:
1)Il client riceve la password dell'utente,la sottopone a un processo di hascing e la invia,previa autorizzazione e insieme a un'altra serie di dati tra cui l'indirizzo del client stesso,a un Authentication Server(AS),Che verifica la password e restituisce eventualmente un'informazione che il client utilizzerà da li in avanti per accedere al Ticket Granting Server.
2)Ogni volta che il client intende accedere a un servizio si rivolgerà,con i dati ricevuti dall'AS,al TGS,che concederà all'utente un'informazione (ticket) necessario per accedere al Service Server(SS) ovvero al server che erogherà il servizio stesso
3)A questo punto il client potrà utilizzare il ticket ricevuto per richiede al server i servizi desiderati.
Tutto il sistema funziona tramite il passaggio di informazioni cifrate volta per volta con le chiavi dell'utente e dei server AS,TGS e SS in un ordine tale da impedirne la decifrazione da parte di elementi non autorizzati. Inoltre vengono utilizzate chiavi diverse per sessioni diverse(come in SSL/TLS) e riferimenti al giorno/ora di richiesta di servizio per rinforzare ulteriormente la sicurezza del protocollo.
Il sistema Kerberos e assai diffuso nella pratica,ad esempio e utilizzato come meccanismo di autenticazione nei sistemi Windows 2000,2003 e Xp(Sempre modificando il protocollo con estensioni proprietarie Microsoft che permettono all'utente ad esempio di modificare la propria password)e MAC OS X.
Domande da interrogazione
- Qual è lo scopo principale del sistema Kerberos?
- Come funziona il processo di autenticazione nel sistema Kerberos?
- In quali sistemi operativi è comunemente utilizzato Kerberos?
Il sistema Kerberos è stato progettato per permettere a più utenti di autenticarsi su più server e utilizzare più servizi digitando una sola password, semplificando così il processo di autenticazione in ambienti di rete.
Il processo di autenticazione inizia con il client che invia una password hashata all'Authentication Server (AS). Se la password è corretta, il client riceve informazioni per accedere al Ticket Granting Server (TGS), che fornisce un ticket per accedere al Service Server (SS) e ottenere i servizi desiderati.
Kerberos è comunemente utilizzato nei sistemi operativi Windows 2000, 2003, XP e MAC OS X, spesso con estensioni proprietarie per migliorare la funzionalità, come la modifica della password da parte dell'utente.