Kerberos ist ein Netzwerkauthentifizierungsprotokoll, das verschlüsselte Tickets verwendet, um Informationen über unsichere Netzwerke zu übertragen. Die Kerberos-Authentifizierung bietet gegenüber anderen Netzwerkauthentifizierungsmethoden mehrere Vorteile, sodass die miteinander kommunizierenden Knoten darauf vertrauen können, dass die empfangenen Informationen authentisch und zuverlässig sind und dass zukünftige Sitzungen dieselbe Authentizität aufweisen.
Gegenseitige Authentifizierung
Wenn zwei Knoten – wie ein Client und ein Server oder ein Server und ein Server – mit der Kommunikation beginnen, leiten sie verschlüsselte Tickets durch ein vertrauenswürdiges Drittsystem namens Key Distribution Center. Das KDC übergibt ein geheimes Ticket mit einem Entschlüsselungsschlüssel an beide Knoten. Die Knoten übergeben sich dann gegenseitig verschlüsselte Zeitstempel und verwenden den Schlüssel, um sie zu entschlüsseln. Wenn sie dies erfolgreich tun, authentifizieren sie ihre Gegenstücke und können sich gegenseitig vertrauen, solange die Sitzung geöffnet bleibt.
Passwörter
Wenn ein Server versucht, einen Client-Computer über das Kerberos-Protokoll zu authentifizieren, muss der Client kein Passwort senden – dank der gegenseitigen Authentifizierung verfügen sowohl der Client als auch der Server über die notwendigen Informationen, um die Tickets zu entschlüsseln. Dies bedeutet, dass Paket-Sniffer, die die Kommunikation belauschen, keinen Zugriff auf Client- oder Server-Passwörter haben, geschweige denn auf andere während der Sitzung weitergegebene Informationen.
Integrierte Sitzungen
Wenn ein Clientknoten in einem Kerberos-unterstützten Netzwerk authentifiziert wird, erhält er ein Clientticket mit einem Ablaufzeitstempel. Solange das Ticket nicht abgelaufen ist, kann der Client damit auf jeden anderen Netzwerkdienst zugreifen, der die Kerberos-Authentifizierung unterstützt, ohne sich erneut authentifizieren zu müssen. Wenn die Sitzung des Clients im Netzwerk noch aktiv ist, das Ticket jedoch abläuft, kann der Client ein neues Ticket anfordern.
Erneuerbare Sitzungen
Sobald sich Client und Server einmal gegenseitig authentifiziert haben, müssen sie dies nie wieder tun. Im Rahmen der gegenseitigen Authentifizierung erhält der Client Zugangsdaten vom Server. Wenn der Client eine zukünftige Sitzung initiiert, sendet er seine Anmeldeinformationen an den Server, der sie erkennt und den Client sofort authentifiziert. Dadurch ist kein KDC erforderlich, sodass die beiden Knoten noch schneller als während ihrer ersten Sitzung eine sichere Verbindung aufbauen können.