Kerberos-Authentifizierungsvorgang

Es ist hilfreich, die verschiedenen Schritte der Kerberos-Authentifizierung zu kennen, um die Ursache für mögliche Probleme bei der Authentifizierung zu ermitteln.

  1. Ein Teilnehmer fordert einen Dienst an, der eine Kerberos-Authentifizierung erfordert. Beispielsweise startet ein Benutzer die Sitzung (einen Telnet-Client) und fordert eine Telnet-Verbindung zu einem Host mit dem Namen "telnserv.com" an.

  2. Der Anwendungsserver (in diesem Fall der Telnet-Daemon auf dem Host) fordert die Authentifizierung von der Sitzung an.

  3. Der Kerberos-Client überprüft, ob Kerberos bereits über ein gültiges Teilnehmerticket (TGT) für diesen Teilnehmer verfügt. Ist dies nicht der Fall, sendet der Kerberos-Client eine Anforderung für ein Teilnehmerticket an das KDC (Key Distribution Center).

  4. Das KDC prüft, ob der Teilnehmer und der Gültigkeitsbereich gültig sind, und sendet ein Teilnehmerticket und einen Sitzungsschlüssel an den Kerberos-Client.

  5. Der Benutzer wird vom Kerberos-Client aufgefordert, ein Kennwort einzugeben. Wenn es mit dem Kennwort übereinstimmt, das das KDC zur Verschlüsselung von Teilnehmerticket und Sitzungsschlüssel verwendet hat, kann der Kerberos-Client die Nachricht entschlüsseln und erhält den Sitzungsschlüssel. (Ist das Kennwort falsch, erhält der Benutzer eine Fehlermeldung und die Authentifizierung ist fehlgeschlagen.)

  6. Der Kerberos-Client erzeugt eine Anforderung für den ursprünglich gewünschten Dienst (eine Telnet-Verbindung zu telnserv.com) und sendet sie an das KDC. Diese Anforderung enthält - im Sitzungsschlüssel das Teilnehmerticket verschlüsselt - einen Authentikator, der die Identität des Teilnehmers bestätigt, sowie den Namen des Dienstes, den der Teilnehmer nutzen möchte.

  7. Das KDC entschlüsselt das Teilnehmerticket und erzeugt einen neuen Schlüssel für die Workstation-Sitzung mit dem Dienst (in diesem Fall für die Verbindung zwischen dem Telnet-Client und dem Telnet-Daemon auf telnserv.com) sowie ein Dienstnutzungsticket für die Telnet-Verbindung zu telnserv.com. Das Dienstnutzungsticket ist mit dem sicheren Schlüssel des Dienstes verschlüsselt. Das KDC verschlüsselt die Nachricht mit dem ursprünglichen Sitzungsschlüssel und gibt sie an den Kerberos-Client zurück.

  8. Der Kerberos-Client verwendet den ursprünglichen Sitzungsschlüssel, um das Dienstnutzungsticket herauszulösen und den neuen Sitzungsschlüssel zu entschlüsseln. Die Steuerung wird anschließend wieder an die Sitzung übergeben.

  9. Der Kerberos-Client übermittelt dem Telnet-Daemon das Dienstnutzungsticket. Der Telnet-Daemon überprüft die Berechtigungsnachweise und authentifiziert sich gegenüber der Sitzung anhand der Daten, die dem Dienstnutzungsticket entnommen sind. Da das Dienstnutzungsticket mit dem sicheren (symmetrischen) Schlüssel des Dienstes verschlüsselt wurde, kann nur der Dienst, für den das Ticket ausgestellt wurde, dieses Ticket entschlüsseln.

  10. Die Sitzung meldet sich beim Host (telnserv.com) an.