Processus d'authentification Kerberos

Bien comprendre les étapes du processus d'authentification Kerberos peut vous aider à identifier l'origine des problèmes d'authentification.

  1. Un principal demande l'accès à un service soumis à l'authentification Kerberos. Par exemple, un utilisateur ouvre la session (client Telnet) et demande une connexion Telnet à un hôte nommé telnserv.com.

  2. Le serveur d'application (en l'occurrence, le démon Telnet sur l'hôte) demande l'authentification auprès de la session.

  3. Le client Kerberos vérifie si Kerberos possède déjà un ticket initial (TGT, Ticket-Granting Ticket) valable pour ce principal. Dans le cas contraire, le client Kerberos envoie une demande de ticket initial au Centre de distribution de clés (KDC, Key Distribution Center).

  4. Le KDC vérifie que le principal et la zone sont valides, et envoie un ticket initial accompagné d'une clé de session au client Kerberos.

  5. Le client Kerberos demande un mot de passe à l'utilisateur. Si celui-ci correspond au mot de passe que le KDC a utilisé pour chiffrer le ticket initial et la clé de session, le client Kerberos peut alors déchiffrer le message et obtenir la clé de session. (Si le mot de passe est incorrect, l'utilisateur reçoit un message d'erreur et l'authentification échoue.)

  6. Le client Kerberos génère une demande pour le service sollicité à l'origine par l'utilisateur (une connexion Telnet à telnserv.com) et l'envoie au KDC. Cette demande contient le ticket initial, un authentifiant qui vérifie l'identité du principal et le nom du service que le principal souhaite utiliser. Toutes ces informations sont chiffrées dans la clé de session.

  7. Le KDC déchiffre le ticket initial, puis génère une nouvelle clé pour la session entre la station de travail et le service (en l'occurrence entre le client Telnet et le démon Telnet sur telnserv.com), ainsi qu'un ticket d'accès à un service pour la connexion Telnet à telnserv.com, qui est chiffré avec la clé secrète du service. Il chiffre ce message avec la clé de session d'origine et le retourne au client Kerberos.

  8. Le client Kerberos utilise la clé de session d'origine pour extraire le ticket d'accès à un service et déchiffrer la nouvelle clé de session. Il passe ensuite la main à la session.

  9. Le client Kerberos présente le ticket d'accès à un service au démon Telnet. Celui-ci vérifie les informations d'identification et s'authentifie à son tour auprès de la session à l'aide des informations extraites du ticket. Compte tenu que le ticket d'accès à un service a été chiffré à l'aide de la clé secrète du service, seul le service pour lequel le ticket a été généré peut déchiffrer le ticket.

  10. Votre session se connecte à l'hôte (telnserv.com).