Kerberos V5 ist ein System mit einfacher Anmeldung. Das bedeutet, Sie müssen nur einmal Ihr Paßwort eingeben, und die Kerberos V5-Programme erledigen dann das Authentisieren (und wahlweise auch das Verschlüsseln) für Sie, weil Kerberos in jedes der existierenden, bekannten Netzwerkprogramme integriert ist. Die Kerberos V5-Anwendungen sind Versionen bestehender UNIX-Netzwerkprogramme, bei denen die Kerberosfunktionen hinzugefügt worden sind.
Wenn Sie zum Beispiel ein mit Kerberos ausgestattetes Programm dazu verwenden, um sich mit einem entfernten Host zu verbinden, dann müssen das Programm, das KDC und der entfernte Host eine Reihe von schnellen Verhandlungen durchführen. Wenn diese Verhandlungen abgeschlossen sind, hat das Programm Ihre Identität beim entfernten Host in Ihrem Namen nachgewiesen, und der entfernte Host hat Ihnen Zugang gewährt.
Beachten Sie, daß kerberosfähige Befehle zuerst versuchen, die Authentisierung mit Kerberos durchzuführen. Wenn die Authentisierung durch Kerberos fehlschlägt, tritt ein Fehler auf, oder es wird die UNIX-Authentisierung versucht, je nachdem, welche Optionen mit dem Befehl verwendet wurden. Lesen Sie im Abschnitt Kerberos-Sicherheit der Online-Dokumentation zu den Kerberos-Befehlen nach, wo Sie ausführlichere Informationen erhalten.
Die mit Kerberos ausgestatteten Netzwerk-Services sind diejenigen Programme, die zu einem anderen Computer irgendwo im Internet eine Verbindung herstellen. Diese Programme befinden sich im Verzeichnis /usr/krb5/bin; setzen Sie die Variable PATH so, daß sie vor den nicht kerberosfähigen Versionen kommen. Es handelt sich bei diesen Programmen um:
ftp
rcp
rlogin
rsh
telnet
Diese Programme haben alle originalen Leistungsmerkmale der jeweiligen, nicht kerberosfähigen Entsprechungen. Sie haben auch zusätzliche Leistungsmerkmale, bei denen unter Verwendung von Kerberos-Tickets die Authentisierung (und wahlweise auch Verschlüsselung) mit dem entfernten Host transparent verhandelt wird. In den meisten Fällen werden Sie nur bemerken, daß Sie Ihr Paßwort nicht mehr eingeben müssen, um sie zu benutzen, weil Kerberos für Sie den Nachweis Ihrer Identität erbringt.
Die Kerberos V5-Netzwerkprogramme erlauben Ihnen folgende Optionen:
Weiterleiten Ihrer Tickets an einen anderen Host (sofern Sie von vornherein weiterleitbare Tickets erworben haben)
Verschlüsseln der zwischen Ihnen und dem entfernten Host übertragenen Daten
Dieser Abschnitt geht davon aus, daß Sie bereits mit den nicht kerberosfähigen Versionen dieser Programme vertraut sind, und stellt daher die Funktionalität heraus, die durch das Kerberos V5-Package hinzugefügt worden sind. Ausführliche Beschreibungen der hier dargestellten Befehle finden Sie auf den entsprechenden Seiten der Online-Dokumentation.
Die folgenden Kerberos-Optionen sind zu den Befehlen ftp, rcp, rlogin, rsh und telnet hinzugefügt worden:
Versuche automatische Anmeldung mithilfe von existierenden Tickets. Verwendet den Benutzernamen, wie er von getlogin() zurückgegeben wird, es sei denn, dieser unterscheidet sich von der aktuellen Benutzer-ID. (Siehe die Online-Dokumentation unter telnet(1), um Einzelheiten zu erfahren.)
Leite ein nicht wiederholt weiterleitbares Ticket weiter an einen entfernten Host. Diese Option und die -F (siehe unten) schließen sich gegenseitig aus; sie können im selben Befehl nicht zusammen verwendet werden.
Sie sollten ein Ticket weiterleiten, wenn Sie Grund zur Annahme haben, daß Sie sich bei einem anderen mit Kerberos ausgestatteten Service authentisieren müssen, wenn Sie sich zum Beispiel über rlogin bei einem anderen Computer und dann von dort aus über rlogin bei einem dritten Computer anmelden möchten.
Sie sollten auf jeden Fall ein weiterleitbares Ticket verwenden, wenn Ihr Home-Verzeichnis auf dem entfernten Host ein mit Kerberos V5 ausgestatteter NFS-Mount ist, weil Sie sonst keinen Zugriff auf Ihr Home-Verzeichnis haben. (Das heißt: angenommen, Sie melden sich zunächst bei System 1 an. Von dort aus melden Sie sich über rlogin bei Ihrem Home-Computer an, System 2, der Ihr Home-Verzeichnis aus System 3 einhängt. Wenn Sie nicht die Option -f oder die Option - F mit dem Befehl rlogin verwendet haben, können Sie nicht zu Ihrem Home-Verzeichnis gelangen, weil Ihr Ticket nicht an System 3 weitergeleitet werden kann.
Standardmäßig ruft kinit weiterleitbare Ticket-Granting Tickets (TGTs) ab; Ihre SEAM-Konfiguration könnte in der Beziehung jedoch anders sein.
Weitere Informationen über das Weiterleiten von Tickets finden Sie unter "Weiterleiten von Tickets mit Option -f oder - F".
Leite eine wiederholt weiterleitbare Kopie eines Ticket-Granting Tickets an ein entferntes System weiter. Ähnlich der Option -f (siehe oben), doch sie erlaubt den Zugriff auf einen weiteren (z.B. vierten oder fünften) Computer. Die Option -F kann daher als Obermenge der Option -f angesehen werden. Diese Option und die Option -f schließen sich gegenseitig aus; sie können im selben Befehl nicht zusammen verwendet werden.
Weitere Informationen über das Weiterleiten von Tickets finden Sie unter "Weiterleiten von Tickets mit Option -f oder - F".
Fordere Tickets für entfernten Host im angegebenen bereich an, anstatt den Bereich selbst über die Datei krb5.conf zu ermitteln.
Authentisiere mit den Tickets beim entfernten Host, melde aber nicht automatisch an.
Gebe den zu verwendenden GSS-API-Sicherheitsmechanismus gemäß Liste /etc/gss/mech an. Standardeinstellung ist kerberos_v5.
Verschlüssele diese Sitzung.
Deaktiviere Authentisierungstyp auth_type.
Tabelle 6-1, zeigt, welche Befehle bestimmte Optionen haben (ein "X" bedeutet, der Befehl hat diese Option).
Tabelle 6-1 Kerberos-Optionen für Netzwerk-Befehle
|
ftp |
rcp |
rlogin |
rsh |
telnet |
---|---|---|---|---|---|
- a |
|
|
|
|
X |
-f |
X |
|
X |
X |
X |
-F |
|
|
X |
X |
X |
-k |
|
X |
X |
X |
X |
-K |
|
|
|
|
X |
-m |
X |
|
|
|
|
-x |
|
X |
X |
X |
X |
- X |
|
|
|
|
X |
Zusätzlich erlaubt ftp die Festlegung der Schutzstufe für eine Sitzung zum Zeitpunkt der Befehlseingabe:
Setze die Schutzstufe auf "clear" (kein Schutz). Dies ist die Standardeinstellung.
Setze die Schutzstufe auf "private." Datenübertragungen werden zum Schutz der Vertraulichkeit und Integrität verschlüsselt. Dieser Vertraulichkeits-Service könnte jedoch nicht allen SEAM-Benutzern zur Verfügung stehen.
Setze die Schutzstufe auf "safe." Integritätsschutz von Datenübertragungen wird durch kryptographische Prüfsummen erreicht.
Sie können die Schutzstufe auch bei der ftp-Befehlseingabe festlegen, indem Sie protect eingeben und danach eine der oben genannten Schutzstufen (clear, private oder safe).
Wie in "Überblick über kerberosfähige Befehle" beschrieben, ist es bei einigen Befehlen möglich, Tickets entweder mit der Option -f oder mit der Option -F weiterzuleiten. Durch das Weiterleiten von Tickets können Sie Ihre Netzwerk-Transaktionen "verketten"; so können Sie sich zum Beispiel mitrlogin auf einem Computer anmelden und dann von dort aus über rloginauf einem anderen anmelden. Die Option -f erlaubt das Weiterleiten eines Tickets, während die Option -F das erneute Weiterleiten eines bereits weitergeleiteten Tickets erlaubt.
In Abbildung 6-2 ruft der Benutzer david mit kinit ein Ticket-Granting Ticket (TGT) ab. (Es ist nicht weiterleitbar, da der nicht die Option -f angegeben hat.) In Szenario 1 kann er sich mit rlogin auf Computer B anmelden, kann aber nicht weitergehen. in Szenario 2 schlägt der Befehl rlogin -f fehl, weil er versucht, ein Ticket weiterzuleiten, das nicht weiterleitbar ist.
(In der Realität werden SEAM-Konfigurationsdateien so eingerichtet, daß kinit standardmäßig weiterleitbare Tickets abruft. Ihre Konfiguration könnte jedoch unterschiedlich sein. Um der Erklärung willen haben wir angenommen, daß kinit nur dann weiterleitbare TGTs abruft, wenn der Befehl mit der Option - f aufgerufen wird. Beachten Sie übrigens, daß kinit keine Option - F hat; TGTs sind nur weiterleitbar oder gar nicht.)
In Abbildung 6-3 ruft david weiterleitbare TGTs mit kinit -f ab. In Szenario 3 kann er Computer C erreichen, weil er ein weiterleitbares Ticket mit rlogin verwendet. In Szenario 4 schlägt der zweite rlogin fehl, weil das Ticket nicht wiederholt weiterleitbar ist. Durch Verwendung der Option -F, wie in Szenario 5, ist stattdessen der Befehl rlogin erfolgreich, so daß das Ticket an Computer D weitergeleitet werden kann.
Die folgenden Beispiele vermitteln eine Vorstellung, wie die Optionen der kerberosfähigen Befehle funktionieren.
In diesem Beispiel hat der Benutzer david sich schon angemeldet und will nun über telnet auf den Computer denver.acme.com zugreifen. Er verwendet die Option -f, um seine bestehenden Tickets weiterzuleiten, die Option - x, um die Sitzung zu verschlüsseln, und die Option -a, um die Anmeldung automatisch durchzuführen. Weil er nicht vorhat, die Services eines dritten Hosts in Anspruch zu nehmen, kann er die Option -f anstelle von -F verwenden.
% telnet -a -f -x denver.acme.com Verbindungsaufbau mit 128.0.0.5... Verbunden mit denver.acme.com. Escape-Zeichen ist '^]'. [ Kerberos V5 akzeptiert Sie als "david@eng.acme.com" ] [ Kerberos V5 hat weitergeleitete Berechtigungsnachweise akzeptiert] SunOS 5.7: Die. 21. Mai 00:31:42 EDT 1998 Willkommen bei SunOS % |
Beachten Sie, daß davids sich über Kerberos bei denver.acme.com authentisiert hat und automatisch mit seiner Identität angemeldet wurde. Er hatte eine verschlüsselte Sitzung, Kopien seiner Tickets warteten schon auf ihn, und er mußte nie sein Paßwort eingeben. Hätte er eine nicht kerberosfähige Version von telnet benutzt, dann wäre er nach seinem Paßwort gefragt worden, und dieses wäre dann unverschlüsselt über das Netzwerk gesendet worden. Wenn ein Eindringling den Netzwerkverkehr zu der Zeit beobachtet hätte, dann hätte er davids Paßwort erfahren.
Wenn Sie Ihre Kerberos-Tickets weiterleiten, vernichtet telnet (wie auch die anderen hier behandelten Befehle) diese bei Programmende.
Hier möchte die Benutzererin jennifer sich auf ihrem eigenen Computer, boston.acme.com anmelden. Sie leitet ihre bestehenden Tickets mit der Option -F weiter und verschlüsselt dann die Sitzung mit -x. Sie wählt die Option -F anstelle von -f weil Sie nach ihrer Anmeldung auf boston noch andere Netzwerk-Transaktionen durchführen möchte, was ein wiederholtes Weiterleiten der Tickets erfordert. Auch muß Sie Ihr Paßwort nicht eingeben, da sie ihre bestehenden Tickets weiterleitet.
% rlogin boston.acme.com -F -x Diese rlogin-Sitzung verwendet DES-Verschlüsselung für alle Datenübertragungen. Letzte Anmeldung Mon 19. Mai 15:19:49 h von chrysantheme SunOS Release 5.7 (GENERISCH) #2 Die 14. Nov 18:09:3 h 1998 % |
Nehmen wir jetzt an, daß joe mithilfe von ftp seine Post vom Verzeichnis ~joe/MAIL auf dem Computer denver.acme.com holen und dabei die Sitzung verschlüsseln möchte. Der Informationsaustausch würde folgendermaßen aussehen:
% ftp -f denver.acme.com Verbunden mit denver.acme.com 220 denver.acme.org FTP-Server (Version 6.0) bereit. 334 Verwendung von Authentisierungstyp GSSAPI; ADAT muß folgen GSSAPI als Authentisierungstyp akzeptiert GSSAPI-Authentisierung erfolgreich Name (chrysantheme.acme.org:joe) 232 GSSAPI Benutzer joe@MELPOMENE.ACME.COM als joe autorisiert 230 Benutzer joe angemeldet. Entfernter Systemtyp ist UNIX. BINÄR-Modus zum Übertragen von Dateien verwendet. ftp> protect private 200 Schutzstufe Private eingestellt ftp> cd ~joe/MAIL 250 CWD Befehl erfolgreich. ftp> get RMAIL 227 Eintritt in Passivmodus (128,0,0,5,16,49) 150 Datenverbindung im BINÄR-Modus für RMAIL geöffnet (158336 Byte). 226 Übertragung abgeschlossen. 158336 Byte in 1,9 seconds empfangen (1.4e+02 Kbytes/s) ftp> quit % |
Um die Sitzung zu verschlüsseln, setzt joe die Schutzstufe auf private.