Inhaltsverzeichnis
Bei einem offenen Netzwerk gibt es keine Garantie dafür, dass eine Arbeitsstation ihre Benutzer korrekt identifiziert, außer die üblichen Passwortmechanismen. Bei gewöhnlichen Installationen muss der Benutzer bei jedem Zugriff auf einen Dienst im Netzwerk ein Passwort eingeben. Kerberos bietet eine Authentifizierungsmethode, mit der ein Benutzer sich einmal registriert. Anschließend wird ihm im ganzen Netzwerk für den Rest der Sitzung vertraut. Damit das Netzwerk sicher ist, müssen folgende Anforderungen gegeben sein:
Alle Benutzer müssen Ihre Identität für jeden gewünschten Dienst beweisen und sicherstellen, dass niemand die Identität eines anderen übernehmen kann.
Stellen Sie sicher, dass jeder Netzwerkserver ebenfalls eine Identität beweist. Anderenfalls kann ein Angreifer die Identität des Servers übernehmen und auf wichtige Informationen, die über den Server übertragen werden, zugreifen. Dieses Konzept nennt man gegenseitige Authentifizierung, weil sich der Client beim Server authentifiziert und umgekehrt.
Kerberos hilft Ihnen bei diesen Anforderungen, da es eine stark verschlüsselte Authentifizierung bietet. Im Folgenden sehen Sie, wie das erreicht wird. Hier werden nur die grundlegenden Prinzipien von Kerberos erläutert. Genauere technische Informationen erhalten Sie aus der Dokumentation Ihrer Kerberos-Installation.
Im folgenden Glossar wird die Kerberos-Terminologie erläutert.
Benutzer oder Clients müssen bestimmte Berechtigungen vorweisen, die Sie zur Anforderung von Diensten autorisieren. Bei Kerberos gibt es zwei Arten von Berechtigungen – Ticket und Authentifikator
Ein Ticket ist eine Berechtigung pro Server, die von einem Client verwendet wird, um sich bei einem Server, von dem er einen Dienst anfordert, zu authentifizieren. Es enthält den Namen des Servers, des Clients, die Internetadresse des Clients, einen Zeitstempel, eine Lebensdauer und einen zufälligen Sitzungsschlüssel. Alle diese Daten sind über den Serverschlüssel verschlüsselt.
Gemeinsam mit dem Ticket beweist ein Authentifikator, dass der Client, der das Ticket vorlegt, wirklich der ist, der er zu sein behauptet. Ein Authentifikator besteht aus dem Client-Namen, der IP-Adresse der Arbeitsstation und der aktuellen Zeit der Arbeitsstation. Alle sind verschlüsselt mit dem Sitzungsschlüssel, der nur dem Client und dem Server bekannt ist, von dem der Dienst angefordert wurde. Ein Authentifikator kann, anders als ein Ticket, nur einmal verwendet werden. Ein Client kann einen Authentifikator selbst generieren.
Ein Kerberos Prinzipal ist eine eindeutige Einheit (ein Benutzer oder ein Dienst) für den ein Ticket zugewiesen werden kann. Ein Prinzipal besteht aus folgenden Komponenten:
Primär – der erste Teil des Prinzipals, der im Falle eines Benutzer dem Benutzernamen entsprechen kann.
Instanz – einige zusätzliche Informationen zur genaueren Bestimmung des Primär. Dieser String wird vom Primär durch einen /
getrennt.
Bereich – gibt den Kerberos-Bereich an. Normalerweise ist der Bereich der Domänenname in Großbuchstaben.
Kerberos stellt sicher, dass Client und Server sich ihrer gegenseitigen Identität sicher sein können. Sie teilen sich einen Sitzungsschlüssel, über den sie sicher kommunizieren können.
Sitzungsschlüssel sind temporäre private Schlüssel, die von Kerberos erstellt werden. Sie sind dem Client bekannt und werden zur Verschlüsselung der Kommunikation zwischen dem Client und dem Server, der angefordert und für den ein Ticket erhalten wurde, verwendet.
Fast alle in einem Netzwerk versendeten Nachrichten können belauscht, gestohlen und erneut versendet werden. Bei Kerberos wäre es sehr gefährlich, wenn ein Angreifer auf Ihre Dienstanforderung zugreifen könnte, die Ihr Ticket und Ihren Authentifikator enthält. Er könnte sie dann erneut senden (Replay) und Ihre Identität übernehmen. Kerberos verwendet jedoch mehrere Mechanismen, um dieses Problem zu umgehen.
Dienst ist eine bestimmte durchzuführende Aktion. Der dieser Aktion zugrunde liegende Prozess ist ein Server.