Teil I Übersicht über die Sicherheit
1. Sicherheitsservices (Überblick)
Teil II System-, Datei- und Gerätesicherheit
2. Verwalten von Rechnersicherheit (Übersicht)
3. Steuern des Zugriffs auf Systeme (Aufgaben)
4. Steuern des Zugriffs auf Geräte (Aufgaben)
5. Verwenden von Basic Audit Reporting Tool (Aufgaben)
6. Steuern des Zugriffs auf Dateien (Aufgaben)
7. Verwenden von Automated Security Enhancement Tool (Aufgaben)
Teil III Rollen, Berechtigungsprofile und Berechtigungen
8. Verwenden von Rollen und Berechtigungen (Übersicht)
9. Rollenbasierte Zugriffssteuerung (Aufgaben)
10. Rollenbasierte Zugriffssteuerung (Übersicht)
Teil IV Kryptografische Services
13. Oracle Solaris Cryptographic Framework (Übersicht)
14. Oracle Solaris Cryptographic Framework (Aufgaben)
15. Oracle Solaris Key Management Framework
Teil V Authentifizierungsservices und sichere Kommunikation
16. Verwenden von Authentifizierungsservices (Aufgaben)
19. Verwenden von Oracle Solaris Secure Shell (Aufgaben)
20. Oracle Solaris Secure Shell (Referenz)
21. Einführung zum Kerberos-Service
22. Planen des Kerberos-Service
23. Konfigurieren des Kerberos-Service (Aufgaben)
24. Kerberos-Fehlermeldungen und -Fehlerbehebung
25. Verwalten von Kerberos-Hauptelementen und Richtlinien (Aufgaben)
26. Verwenden von Kerberos-Anwendungen (Aufgaben)
Automatisches Abrufen von Tickets
Erstellen eines Kerberos-Tickets
Hinweis zum Auswählen eines Passworts
Gewähren von Zugriff auf Ihr Konto
27. Der Kerberos-Service (Referenz)
Teil VII Prüfung bei Oracle Solaris
28. Prüfung bei Oracle Solaris (Übersicht)
29. Planen der Oracle Solaris-Prüfung
30. Verwalten der Oracle Solaris-Prüfung (Aufgaben)
Das Kerberos V5-Produkt ist ein Single Sign-On-System, d. h. Sie müssen Ihr Passwort nur einmal eingeben. Die Kerberos V5-Programme führen die Authentifizierung (und die optionale Verschlüsselung) für Sie durch, da Kerberos in eine Reihe vorhandener bekannter Netzwerkprogramme integriert wurde. Bei den Kerberos V5-Anwendungen handelt es sich um Versionen bestehender UNIX-Netzwerkprogramme mit zusätzlichen Kerberos-Funktionen.
Wenn Sie beispielsweise mit einem kerberisierten Programm eine Verbindung zu einem Remote-Host herstellen, führen das Programm, das KDC und der Remote-Host eine Reihe schneller Aushandlungen aus. Nach Abschluss dieser Aushandlungen hat das Programm Ihre Identität in Ihrem Namen gegenüber dem Remote-Host bewiesen und der Remote-Host hat Ihnen Zugriff gewährt.
Denken Sie daran, dass kerberisierte Befehle zuerst versuchen, die Authentifizierung mit Kerberos durchzuführen. Schlägt die Kerberos-Authentifizierung fehl, tritt je nach den mit dem Befehl verwendeten Optionen ein Fehler auf oder es wird versucht, die UNIX-Authentifizierung durchzuführen. Ausführlichere Informationen finden Sie im Abschnitt Kerberos Security auf der Manpage zu jedem Kerberos-Befehl.
Die kerberisierten Netzwerkdienste stellen Programme dar, die eine Verbindung zu einem anderen Rechner im Internet herstellen. Dabei handelt es sich um folgende Programme:
ftp
rcp
rdist
rlogin
rsh
ssh
telnet
Diese Programme verfügen über Funktionen, die Ihre Kerberos-Tickets transparent für die Aushandlung von Authentifizierung und optionale Verschlüsselung mit dem Remote-Host verwenden. In den meisten Fällen wird Ihnen lediglich auffallen, dass Sie Ihr Passwort nicht mehr eingeben müssen, um die Tickets zu verwenden, da Kerberos Ihre Identität für Sie überprüft.
Die Kerberos V5-Netzwerkprogramme umfassen Optionen, mit denen Sie die folgenden Aktionen ausführen können:
Weiterleiten Ihres Tickets an einen anderen Host (sofern Sie zu Beginn weiterleitbare Tickets abgerufen haben)
Verschlüsseln von Daten, die zwischen Ihnen und dem Remote-Host übertragen wurden
Hinweis - In diesem Abschnitt wird vorausgesetzt, dass Sie bereits mit den Nicht-Kerberos-Versionen dieser Programme vertraut sind, und die durch das Kerberos V5-Paket hinzugefügten Kerberos-Funktionen werden hervorgehoben. Ausführliche Beschreibungen zu den hier aufgeführten Befehlen finden Sie auf den jeweiligen Manpages.
Folgende Kerberos-Optionen wurden den Befehlen ftp, rcp, rlogin, rsh und telnet hinzugefügt:
Versucht, die automatische Anmeldung unter Verwendung Ihrer vorhandenen Tickets durchzuführen. Verwendet den von getlogin() zurückgegebenen Benutzernamen, es sei denn, der Name weicht von der aktuellen Benutzer-ID ab. Weitere Informationen finden Sie auf der Manpage telnet(1).
Leitet ein nicht erneut weiterleitbares Ticket an einen Remote-Host weiter. Diese Option und die Option -F schließen sich gegenseitig aus. Sie können nicht zusammen im selben Befehl verwendet werden.
Wenn Sie Grund haben anzunehmen, dass Sie sich bei anderen Kerberos-basierten Services auf einem dritten Host authentifizieren müssen, sollten Sie ein Ticket weiterleiten. So ist es beispielsweise denkbar, dass Sie sich entfernt bei einem anderen Rechner anmelden möchten, um sich dann über diesen Rechner ebenfalls entfernt bei einem dritten Rechner anzumelden.
Sie sollten definitiv ein weiterleitbares Ticket verwenden, wenn Ihr Home-Verzeichnis auf dem Remote-Host unter Verwendung des Kerberos V5-Mechanismus über NFS eingehängt ist. Andernfalls können Sie nicht auf Ihr Home-Verzeichnis zugreifen. Dies ist der Fall, wenn Sie sich zum Beispiel bei System 1 anmelden. Über System 1 melden Sie sich entfernt bei Ihrem Home-Rechner (System 2) an, der Ihr Home-Verzeichnis über System 3 einhängt. Wenn Sie nicht die Option -f oder -F mit rlogin verwendet haben, können Sie nicht auf Ihr Home-Verzeichnis zugreifen, weil Ihr Ticket nicht an System 3 weitergeleitet werden kann.
Standardmäßig ruft kinit weiterleitbare TGTs (Ticket-gewährende Tickets) ab. Es ist dennoch möglich, dass sich Ihre Konfiguration in dieser Hinsicht unterscheidet.
Weitere Informationen zum Weiterleiten von Tickets finden Sie unter Weiterleiten von Kerberos-Tickets.
Leitet eine erneut weiterleitbare Kopie Ihres TGT an ein Remote-System weiter. Diese Option ähnelt der Option -f, ermöglicht jedoch den Zugriff auf einen weiteren (z. B. vierten oder fünften) Rechner. Die Option -F kann daher als Obergruppe der Option -f betrachtet werden. Die Option -F und die Option -f schließen sich gegenseitig aus. Sie können nicht zusammen im selben Befehl verwendet werden.
Weitere Informationen zum Weiterleiten von Tickets finden Sie unter Weiterleiten von Kerberos-Tickets.
Fordert Tickets für den Remote-Host im angegebenen realm an, anstatt den Bereich selbst mithilfe der Datei krb5.conf zu bestimmen.
Verwendet Ihre Tickets zum Authentifizieren beim Remote-Host, führt aber keine automatische Anmeldung durch.
Gibt den zu verwendenden GSS-API-Sicherheitsmechanismus an, wie er in der Datei /etc/gss/mech aufgelistet ist. Standardmäßig ist kerberos_v5 angegeben.
Die folgende Tabelle zeigt, welche Befehle über bestimmte Optionen verfügen. "X" gibt an, dass der Befehl über die jeweilige Option verfügt.
Tabelle 26-1 Kerberos-Optionen für Netzwerkbefehle
|
Außerdem ermöglicht ftp, die Schutzebene einer Sitzung an der entsprechenden Eingabeaufforderung festzulegen:
Setzt die Schutzebene auf "clear" (kein Schutz). Dies ist die standardmäßige Schutzebene.
Setzt die Schutzebene auf "private". Die Vertraulichkeit und Integrität von Datenübertragungen werden durch Verschlüsselung geschützt. Dennoch steht der Vertraulichkeitsservice möglicherweise nicht allen Kerberos-Benutzern zur Verfügung.
Setzt die Schutzebene auf "safe". Die Integrität von Datenübertragungen wird durch kryptografische Prüfsummen geschützt.
Sie können die Schutzebene auch über die ftp-Eingabeaufforderung festlegen, indem Sie protect gefolgt von einer der oben dargestellten Sicherheitsebenen eingeben (clear, private oder safe).
Wie unter Übersicht über kerberisierte Befehle beschrieben, können Sie einige Befehle entweder mit der Option -f oder -F verwenden, um Tickets weiterzuleiten. Das Weiterleiten von Tickets ermöglicht es Ihnen, Ihre Netzwerktransaktionen zu "verketten". Beispielsweise können Sie sich entfernt bei einem Rechner anmelden, um sich dann über diesen Rechner ebenfalls entfernt bei einem anderen Rechner anzumelden. Mit der Option -f können Sie ein Ticket weiterleiten, während Ihnen die Option -F das erneute Weiterleiten eines weitergeleiteten Tickets ermöglicht.
In Abbildung 26-2 ruft der Benutzer david ein nicht weiterleitbares TGT (Ticket-gewährendes Ticket) mit kinit ab. Das Ticket lässt sich nicht weiterleiten, weil er die Option -f nicht angegeben hat. In Szenario 1 kann er sich entfernt bei Rechner B anmelden, aber keine weiteren Schritte ausführen. In Szenario 2 schlägt der Befehl rlogin -f fehl, weil der Benutzer versucht, ein nicht weiterleitbares Ticket weiterzuleiten.
Abbildung 26-2 Verwenden nicht weiterleitbarer Tickets
Faktisch werden Kerberos-Konfigurationsdateien so eingerichtet, dass kinit standardmäßig weiterleitbare Tickets abruft. Ihre Konfiguration kann jedoch davon abweichen. Der Anschaulichkeit halber gehen wir davon aus, dass der Befehl kinit keine weiterleitbaren TGTs abruft, es sei denn, er wird mit der Option kinit -f aufgerufen. Beachten Sie auch, dass kinit nicht mit der Option - F verwendet wird. TGTs sind entweder weiterleitbar oder nicht.
In Abbildung 26-3 ruft der Benutzer david weiterleitbare TGTs mit kinit -f ab. In Szenario 3 kann er auf Rechner C zugreifen, da er ein weiterleitbares Ticket mit rlogin verwendet. In Szenario 4 schlägt der zweite rlogin-Befehl fehl, da das Ticket nicht weitergeleitet werden kann. In Szenario 5 wird stattdessen die Option -F verwendet. Dadurch ist der zweite rlogin-Befehl erfolgreich und das Ticket kann erneut weitergeleitet werden (an Rechner D).
Abbildung 26-3 Verwenden weiterleitbarer Tickets
Die folgenden Beispiele zeigen, wie sich die Optionen auf die kerberisierten Befehle auswirken.
Beispiel 26-5 Verwenden der Optionen -a, -f und -x mit telnet
In diesem Beispiel hat sich der Benutzer david bereits angemeldet und möchte telnet auf den Rechner denver.example.com anwenden. Er verwendet die Option -f zum Weiterleiten seiner vorhandenen Tickets, die Option -x zum Verschlüsseln der Sitzung und die Option -a zum automatischen Ausführen der Anmeldung. Da er nicht vorhat, die Services eines dritten Hosts zu nutzen, kann er -f anstelle von -F verwenden.
% telnet -a -f -x denver.example.com Trying 128.0.0.5... Connected to denver.example.com. Escape character is '^]'. [ Kerberos V5 accepts you as "david@eng.example.com" ] [ Kerberos V5 accepted forwarded credentials ] SunOS 5.9: Tue May 21 00:31:42 EDT 2004 Welcome to SunOS %
Bedenken Sie, dass der Rechner von david Kerberos verwendet hat, um ihn für denver.example.com zu authentifizieren, und ihn automatisch unter seinem Namen angemeldet hat. Er verfügte über eine verschlüsselte Sitzung, Kopien seiner Tickets standen schon für ihn bereit und er musste zu keiner Zeit sein Passwort eingeben. Hätte er eine Nicht-Kerberos-Version von telnet verwendet, wäre er aufgefordert worden, sein Passwort anzugeben. Das Passwort wäre dann unverschlüsselt über das Netzwerk versendet worden. Hätte ein Eindringling währenddessen den Netzwerkverkehr beobachtet, so hätte dieser das Passwort von david erfahren.
Wenn Sie Ihre Kerberos-Tickets weiterleiten, löscht telnet diese beim Beenden, sofern vorhanden. Gleiches gilt für die anderen hier erläuterten Befehle.
Beispiel 26-6 Verwenden von rlogin mit der Option -F
In diesem Beispiel möchte sich die Benutzerin jennifer beim eigenen Rechner (boston.example.com) anmelden. Sie leitet ihre vorhandenen Tickets mit der Option -F weiter und verschlüsselt die Sitzung mit der Option -x. Sie wählt -F anstelle von -f, da sie nach der Anmeldung bei boston gegebenenfalls weitere Netzwerktransaktionen ausführen möchte, für die Tickets erneut weitergeleitet werden müssen. Da sie ihre vorhandenen Tickets weiterleitet, braucht sie zudem ihr Passwort nicht einzugeben.
% rlogin boston.example.com -F -x This rlogin session is using encryption for all transmissions. Last login Mon May 19 15:19:49 from daffodil SunOS Release 5.9 (GENERIC) #2 Tue Nov 14 18:09:3 EST 2003 %
Beispiel 26-7 Festlegen der Schutzebene in ftp
Angenommen, der Benutzer joe möchte mit ftp über den Rechner denver.example.com seine Mail aus dem Verzeichnis ~joe/MAIL abrufen, indem er die Sitzung verschlüsselt. Der Austausch sähe wie folgt aus:
% ftp -f denver.example.com Connected to denver.example.com 220 denver.example.org FTP server (Version 6.0) ready. 334 Using authentication type GSSAPI; ADAT must follow GSSAPI accepted as authentication type GSSAPI authentication succeeded Name (daffodil.example.org:joe) 232 GSSAPI user joe@MELPOMENE.EXAMPLE.COM is authorized as joe 230 User joe logged in. Remote system type is UNIX. Using BINARY mode to transfer files. ftp> protect private 200 Protection level set to Private ftp> cd ~joe/MAIL 250 CWD command successful. ftp> get RMAIL 227 Entering Passive Mode (128,0,0,5,16,49) 150 Opening BINARY mode data connection for RMAIL (158336 bytes). 226 Transfer complete. 158336 bytes received in 1.9 seconds (1.4e+02 Kbytes/s) ftp> quit %
Zum Verschlüsseln der Sitzung setzt joe die Schutzebene auf private.