Das Authentifizierungsprotokoll das Microsoft seit Windows 2000 in einer Active Directory-Domäne einsetzt, heißt Kerberos in der Version 5  (RFC 1510 [1]).


Es wurde ursprünglich Ende der 70er Jahre entwickelt [2]. Microsoft Windows-Betriebssysteme vor Windows 2000 verwenden eine


der Lan Manager (LM) -Authentifizierungsmethoden, die keine Unterstützung für Kerberos bieten.


 


Jeder Benutzer der eine Authentifizierungsanforderung sendet, sowie der Server, der die angeforderte Authentifizierung bereitstellt,


wird vom Kerberos V5 Protokoll auf seine Identität überprüft. Diese beidseitige Überprüfung, wird auch als „gegenseitige Authentifizierung“ bezeichnet.  


Wenn ein Client auf einen Fileserver zugreifen möchte, sind an diesem Vorgang, der Client selbst, der Fileserver und schließlich der Kerberos-Server beteiligt.


Beim Kerberos V5 – Authentifizierungsverfahren werden Tickets verwendet, um den Zugriff auf die entsprechenden Netzwerkdienste zu gewährleisten.


 


Ein essentieller Dienst von Kerberos, stellt der KDC (Key Distribution Center, Schlüsselverteilungscenter) dar.


Dieser Dienst wird standardmäßig auf jedem Domänencontroller ausgeführt und speichert durchweg die Clientkennwörter sowie weitere Kontoinformationen.


Der Client stellt eine DNS-Abfrage [3] um den nächstgelegenen Domänencontroller ausfindig zu machen.
Daraufhin verwendet der Benutzer diesen Domänencontroller als den bevorzugten KDC.
Während der Benutzeranmeldung fordert der Client beim Kerberos-Server ein Ticket Granting Ticket (TGT) an.


Damit ist es dem Client möglich, ohne eine erneute Authentifizierung, dass eigentliche Sitzungsticket vom Ticket Granting Service (TGS) für


diverse Dienste (z.B. für den Fileserver etc.) anzufordern.


 


Darüber hinaus wird ein Sitzungs-Schlüssel zwischen dem Client und Kerberos-Server ausgehandelt,


der zum verschlüsseln des Datenverkehrs verwendet werden kann.


 



Kerberos V5-Authentifizierung



 


 


Die im Netzwerk übertragenen Kerberos-Nachrichten, werden sicher transportiert und mit einer Vielzahl von Verschlüsselungsschlüsseln verschlüsselt.


Dadurch wird sichergestellt, dass die Kerberos-Nachrichten von niemanden unerlaubt verändert werden. 


Ferner wird beim Einsatz von Kerberos nie das tatsächliche Kennwort übertragen, sondern nur ein Hash.


Das bedeutet aber nicht, dass z.B. ein weniger sicheres Kennwort für die Benutzeranmeldung gewählt werden darf.


Angenommen Schlüssel werden von Kennwörtern abgeleitet, dann sollten diese so komplex und lang gewählt werden,


dass ein Brute-Force- oder Wörterbuch-Angriff scheitern würde.


 


Als weiteren Schutz bietet Kerberos, den Einsatz von Zeitstempeln (Timestamps). Damit wird die Echtheitsbestätigung sichergestellt.


Clients ab Windows 2000 synchronisieren ihre Systemuhr über eine spezielle Form des Network Time Protocol – NTP (genannt NT5DS),


mit ihrem authentifizierenden Domänencontroller. Daher darf die Zeit an den Systemen, standardmäßig nicht mehr als fünf Minuten abweichen,


ansonsten verlieren Kerberostickets ihre Gültigkeit.


 


Die Zeit-Toleranz kann mit dem Registry-Schlüssel „SkewTime“ verändert werden.


 


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters








 


Entry: SkewTime
Type: REG_DWORD
Default Value: 5 (Minuten)


Hinweis: Falls dieser Schlüssel nicht aufgeführt ist, muss er erstellt werden.


 


Kerberos protocol registry entries and KDC configuration keys in Windows Server 2003


http://support.microsoft.com/kb/837361/en-us


 


 


Weiterhin können Probleme auftreten, wenn ein Benutzer in mindestens 70 Gruppen Mitglied ist, sei es direkt oder durch verschachtelte Gruppen.


Dann kann die Kerberos Authentifizierung fehlschlagen. Auf einem Windows Server 2003 basierten System besteht die Möglichkeit,


das „Kerberos Token Size“ (Tokensz.exe) [4] Tool auszuführen, um die Anzahl der Gruppen anzuzeigen, in denen ein Benutzer Mitglied ist.


 


Die Syntax lautet:


tokensz /calc_groups ClientName /user:Benutzername /domain:Domäne /password:Kennwort /system


 


Authentication Fails Due to User PAC


 


 



Die Standard-Lebensdauer eines Benutzertickets beträgt 10 Stunden. Danach verfällt das Ticket und mit ihm auch das Zugriffstoken des Benutzers.


In der Regel wird das Ticket automatisch im Hintergrund verlängert, so dass der Benutzer davon nichts mitbekommt.


Es wird aber nicht unter allen Gegebenheiten bzw. Szenarien aktualisiert, wie dieser Artikel zeigt:


User Token Expires When You Log on by Using a Smart Card for a Long Time


http://support.microsoft.com/kb/323931/en-us


 


Ebenfalls wird das Benutzerticket beim erneuten anmelden- und beim Neustart, das Computerticket erneuert.


 


Die einzelnen Einstellungen die in der Kerberos-Richtlinie vorgenommen werden können, die nur auf Domänen-Ebene zur Verfügung stehen (Default Domain Policy),
können im folgenden Pfad konfiguriert werden:


Computerkonfiguration\Windows-Einstellungen\Sicherheitseinstellungen\Kontorichtlinien\Kerberos-Richtlinie


 


Dort stehen folgende Werte:


 




    • Max. Gültigkeitsdauer des Benutzertickets (MaxTicketAge)       10 Stunden
    • Max. Gültigkeitsdauer des Diensttickets (MaxServiceTicketAge) 600 Minuten
    • Max. Toleranz für die Synchronisation des Computertakts (MaxClockSkew) 5 Minuten
    • Max. Zeitraum, in dem ein Benutzerticket erneuert werden kann (MaxRenewAge) 7 Tage





Answers to frequently asked Kerberos questions


http://support.microsoft.com/kb/266080/en-us


 


 



Falls einem der Zugriff auf einen Server verwehrt bleibt, so kann man mit den beiden Tools „Kerberos Tray (Kerbtray.exe)“ und


Kerberos List (Klist.exe)“ die sich im Windows Server 2003 Ressource Kit befinden, prüfen, ob ein entsprechendes Sitzungsticket für diesen Server besteht.


Windows Server 2003 Resource Kit Tools


http://www.microsoft.com/downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&DisplayLang=en


 


 


Weitere Ansätze für eine Fehlersuche finden sich in diesem Artikel:


Troubleshooting Kerberos Errors


http://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies/security/tkerberr.mspx


 


 


 


 


Weitere Informationen:


[1] http://www.ietf.org/rfc/rfc1510.txt


[2] Kerberos (Informatik)


http://de.wikipedia.org/wiki/Kerberos_%28Informatik%29


[3] Domänencontroller am Standort


http://blog.dikmenoglu.de/2006/11/domaenencontroller-am-standort


[4] Tokensz


http://www.microsoft.com/downloads/details.aspx?FamilyID=4a303fa5-cf20-43fb-9483-0f0b0dae265c&DisplayLang=en


Kerberos Authentication in Windows Server 2003


http://www.microsoft.com/windowsserver2003/technologies/security/kerberos/default.mspx


Kerberos Authentication Tools and Settings


http://technet2.microsoft.com/WindowsServer/en/library/b36b8071-3cc5-46fa-be13-280aa43f2fd21033.mspx?mfr=true


Interactive logon styles and Key Distribution Center account lookup in Windows Server 2003


http://support.microsoft.com/kb/929272/en-us


Addressing Problems Due to Access Token Limitation


http://www.microsoft.com/downloads/details.aspx?familyid=22DD9251-0781-42E6-9346-89D577A3E74A&displaylang=en


New resolution for problems with Kerberos authentication when users belong to many groups


http://support.microsoft.com/kb/327825/en-us


Group Policy may not be applied to users belonging to many groups


http://support.microsoft.com/kb/263693/en-us


TechNet Webcast: Kerberos-Interoperabilität – Authentifizierungstickets für heterogene Clients


http://www.microsoft.com/germany/technet/webcasts/eventdetail.aspx?EventID=1032311283
Users in a trusted external Kerberos realm cannot access resources from a Windows Server 2003-based forest to another forest
by using a forest trust and a Kerberos trust
http://support.microsoft.com/kb/931192/en-us

Comments are closed, but trackbacks and pingbacks are open.