Kerberos Grundlagen: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 14: Zeile 14:
  
 
=== Authentifizierungsprozess ===
 
=== Authentifizierungsprozess ===
* '''1. Client-Authentifizierung:'''
+
== Kerberos Authentifizierungsprozess ==
** Der Benutzer fordert vom KDC ein Ticket Granting Ticket (TGT) an, um Zugang zu weiteren Diensten zu erhalten.
+
 
* '''2. Erhalt des TGT:'''
+
Der Kerberos-Authentifizierungsprozess besteht aus mehreren Schritten, bei denen ein Client Tickets erhält, um sich gegenüber verschiedenen Diensten im Netzwerk zu authentifizieren.
** Der KDC erstellt ein TGT, verschlüsselt es mit einem geheimen Schlüssel, der nur der Benutzer kennt, und sendet es zurück an den Client.
+
 
* '''3. Dienstanfrage:'''
+
* '''1. Anfrage an den Authentication Server (AS):'''
** Um einen Dienst zu nutzen, sendet der Client das TGT an den TGS, um ein Service-Ticket zu erhalten.
+
** Der Client sendet eine Authentifizierungsanfrage an den Authentication Server (AS), um seine Identität zu verifizieren. (Roter Pfeil nach rechts oben)
* '''4. Service-Ticket erhalten:'''
+
 
** Der TGS stellt ein Service-Ticket aus, das der Client dann an den gewünschten Dienst übergibt.
+
* '''2. Erhalt des Ticket Granting Tickets (TGT):'''
* '''5. Zugang zum Dienst:'''
+
** Der AS überprüft die Identität des Clients und stellt ein Ticket Granting Ticket (TGT) aus, das verschlüsselt zurück an den Client gesendet wird. (Roter Pfeil nach links unten)
** Der Dienst verifiziert das Ticket und gewährt dem Client den Zugang basierend auf den im Ticket enthaltenen Berechtigungen.
+
 
 +
* '''3. Anfrage für ein Service-Ticket an den Ticket Granting Server (TGS):'''
 +
** Der Client verwendet das erhaltene TGT, um ein Service-Ticket für den gewünschten Dienst beim Ticket Granting Server (TGS) anzufordern. (Gelber Pfeil nach rechts)
 +
 
 +
* '''4. Erhalt des Service-Tickets:'''
 +
** Der TGS stellt ein Service-Ticket aus und sendet es an den Client zurück, das der Client nutzen kann, um Zugang zu spezifischen Diensten zu erhalten. (Gelber Pfeil nach links)
 +
 
 +
* '''5. Anfrage an den Service Server:'''
 +
** Der Client sendet das Service-Ticket an den Zielserver (Service Server), um den gewünschten Dienst zu nutzen. (Grüner Pfeil nach rechts)
 +
 
 +
* '''6. Zugriffserlaubnis vom Service Server:'''
 +
** Der Zielserver überprüft das Service-Ticket und gewährt dem Client Zugriff auf den Dienst, indem er eine Bestätigung zurücksendet. (Grüner Pfeil nach links)
 +
 
 +
 
 +
 
 
{{#drawio:keberos-1}}
 
{{#drawio:keberos-1}}
 
  
 
=== Sicherheitsmechanismen ===
 
=== Sicherheitsmechanismen ===

Version vom 17. September 2024, 09:15 Uhr

Bei Kerberos sind drei Parteien beteiligt

  • der Client
  • der Server, der den Client nutzen will
  • der Kerberos-Server

Kerberos Vertiefung

Kerberos ist ein Netzwerk-Authentifizierungsprotokoll, das entwickelt wurde, um sichere Kommunikation über unsichere Netzwerke zu ermöglichen. Es verwendet symmetrische Schlüssel und vertrauenswürdige Dritte, um die Identität von Benutzern und Diensten zu verifizieren.

Architektur

  • Key Distribution Center (KDC): Das KDC ist die zentrale Komponente von Kerberos und besteht aus zwei Hauptdiensten:
    • Authentication Server (AS): Verifiziert die Identität von Clients und stellt Ticket Granting Tickets (TGT) aus.
    • Ticket Granting Server (TGS): Vergibt Zugriffstickets für spezifische Dienste basierend auf dem TGT.

Authentifizierungsprozess

Kerberos Authentifizierungsprozess

Der Kerberos-Authentifizierungsprozess besteht aus mehreren Schritten, bei denen ein Client Tickets erhält, um sich gegenüber verschiedenen Diensten im Netzwerk zu authentifizieren.

  • 1. Anfrage an den Authentication Server (AS):
    • Der Client sendet eine Authentifizierungsanfrage an den Authentication Server (AS), um seine Identität zu verifizieren. (Roter Pfeil nach rechts oben)
  • 2. Erhalt des Ticket Granting Tickets (TGT):
    • Der AS überprüft die Identität des Clients und stellt ein Ticket Granting Ticket (TGT) aus, das verschlüsselt zurück an den Client gesendet wird. (Roter Pfeil nach links unten)
  • 3. Anfrage für ein Service-Ticket an den Ticket Granting Server (TGS):
    • Der Client verwendet das erhaltene TGT, um ein Service-Ticket für den gewünschten Dienst beim Ticket Granting Server (TGS) anzufordern. (Gelber Pfeil nach rechts)
  • 4. Erhalt des Service-Tickets:
    • Der TGS stellt ein Service-Ticket aus und sendet es an den Client zurück, das der Client nutzen kann, um Zugang zu spezifischen Diensten zu erhalten. (Gelber Pfeil nach links)
  • 5. Anfrage an den Service Server:
    • Der Client sendet das Service-Ticket an den Zielserver (Service Server), um den gewünschten Dienst zu nutzen. (Grüner Pfeil nach rechts)
  • 6. Zugriffserlaubnis vom Service Server:
    • Der Zielserver überprüft das Service-Ticket und gewährt dem Client Zugriff auf den Dienst, indem er eine Bestätigung zurücksendet. (Grüner Pfeil nach links)


Sicherheitsmechanismen

  • Zeitstempel und Ablauf:
    • Kerberos verwendet Zeitstempel, um sicherzustellen, dass Tickets nur für einen begrenzten Zeitraum gültig sind, was Replay-Angriffe verhindert.
  • Symmetrische Verschlüsselung:
    • Alle Tickets und Kommunikationen werden mit symmetrischer Verschlüsselung gesichert, die von beiden Parteien geteilt wird.
  • Mutual Authentication:
    • Kerberos ermöglicht gegenseitige Authentifizierung, bei der sowohl der Client als auch der Dienst ihre Identitäten bestätigen, um Man-in-the-Middle-Angriffe zu vermeiden.

Einsatz in der Praxis

  • Unternehmensnetzwerke:
    • Kerberos ist weit verbreitet in großen Unternehmensnetzwerken, insbesondere in Umgebungen mit Microsoft Active Directory, wo es als Standard-Authentifizierungsprotokoll dient.
  • Single Sign-On (SSO):
    • Mit Kerberos können Benutzer sich einmal authentifizieren und anschließend auf mehrere Dienste zugreifen, ohne sich erneut anmelden zu müssen.

Herausforderungen

  • Synchronisation der Systemuhren:
    • Kerberos erfordert, dass die Systemuhren der beteiligten Geräte synchron sind, um die Gültigkeit der Zeitstempel zu überprüfen.
  • Schlüsselverwaltung:
    • Die Sicherheit von Kerberos hängt stark von der sicheren Verwaltung der symmetrischen Schlüssel und Passwörter ab.

Kerberos bietet eine robuste und sichere Methode zur Authentifizierung in Netzwerken, ist jedoch auf eine sorgfältige Konfiguration und Verwaltung angewiesen, um seine Sicherheitsvorteile voll auszuschöpfen.

Prinzip

  1. Benutzer fordert vom Key Distribution Center (KDC) ein Ticket Granting Ticket (TGT) an.
  2. TGT wird dem Benutzer ausgestellt und verschlüsselt übetragen. Computer sichert TGT im lokalen Cache.
  3. Um einen Dienst, der Kerberos unterstützt, benutzen zu können, fordert der Client ein weiteres Ticket an.
  4. Der KDC übermittelt das Service Ticket.
  5. Dieses Ticket sendet der Client dann an den Dienst, der überprüft, ob er dem Client den Zugriff gestatten soll.
  6. Server vereinbart mit dem Client ein Sitzung und der Benutzer erhält die vorgesehenen Berechtigungen.

Kerberos-ablauf.jpg