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)
Konfigurieren des Kerberos-Service (Übersicht der Schritte)
Konfigurieren zusätzlicher Kerberos-Services (Übersicht der Schritte)
So konfigurieren Sie ein Master-KDC manuell
So konfigurieren Sie ein KDC zur Verwendung eines LDAP-Datenservers
So konfigurieren Sie ein Slave-KDC manuell
So aktualisieren Sie die Ticket Granting Service-Schlüssel auf einem Master-Server
Konfigurieren von bereichsübergreifender Authentifizierung
So richten Sie eine hierarchische bereichsübergreifende Authentifizierung ein
So richten Sie eine direkte bereichsübergreifende Authentifizierung ein
Konfigurieren von Kerberos-Netzwerkanwendungsservern
So konfigurieren Sie einen Kerberos-Netzwerkanwendungsserver
Konfigurieren von Kerberos-NFS-Servern
So konfigurieren Sie Kerberos-NFS-Server
So erstellen Sie eine Berechtigungsnachweistabelle
So fügen Sie der Berechtigungstabelle einen einzelnen Eintrag hinzu
So ordnen Sie Berechtigungsnachweise zwischen Bereichen zu
So richten Sie eine sichere NFS-Umgebung mit mehreren Kerberos-Sicherheitsmodi ein
Konfigurieren von Kerberos-Clients
Konfigurieren von Kerberos-Clients (Übersicht der Schritte)
So erstellen Sie ein Kerberos-Clientinstallationsprofil
So konfigurieren Sie einen Kerberos-Client automatisch
So konfigurieren Sie einen Kerberos-Client interaktiv
So konfigurieren Sie einen Kerberos-Client manuell
So deaktivieren Sie die Überprüfung des TGT (Ticket Granting Ticket)
So greifen Sie auf ein durch Kerberos geschütztes NFS-Dateisystem als root-Benutzer zu
So konfigurieren Sie eine automatische Migration von Benutzern in einem Kerberos-Bereich
Synchronisieren von Uhren zwischen KDCs und Kerberos-Clients
Austauschen von Master-KDC und Slave-KDC
So konfigurieren Sie ein austauschbares Slave-KDC
So tauschen Sie ein Master-KDC gegen ein Slave-KDC aus
Verwalten der Kerberos-Datenbank
Backup und Weitergabe der Kerberos-Datenbank
So erstellen Sie ein Backup der Kerberos-Datenbank
So stellen Sie die Kerberos-Datenbank wieder her
So konvertieren Sie eine Kerberos-Datenbank nach einem Server-Upgrade
So konfigurieren Sie ein Master-KDC zur Verwendung der inkrementellen Weitergabe
So konfigurieren Sie ein Slave-KDC zur Verwendung der inkrementellen Weitergabe
So konfigurieren Sie ein Slave-KDC zur Verwendung der vollständigen Weitergabe
So überprüfen Sie die Synchronisierung der KDC-Server
So führen Sie eine manuelle Weitergabe der Kerberos-Datenbank an Slave-KDCs durch
Einrichten von paralleler Weitergabe
Konfigurationsschritte zum Einrichten einer parallelen Weitergabe
So entfernen Sie eine Stash-Datei
Verwalten eines KDC auf einem LDAP-Verzeichnisserver
So löschen Sie einen Bereich auf einem LDAP-Verzeichnisserver
Erhöhen der Sicherheit auf Kerberos-Servern
So aktivieren Sie nur kerberisierte Anwendungen
So beschränken Sie den Zugriff auf KDC-Server
So verwenden Sie eine Wörterbuchdatei zur Erhöhung der Passwortsicherheit
24. Kerberos-Fehlermeldungen und -Fehlerbehebung
25. Verwalten von Kerberos-Hauptelementen und Richtlinien (Aufgaben)
26. Verwenden von Kerberos-Anwendungen (Aufgaben)
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)
Kerberos-Clients schließen in dem Netzwerk, das Kerberos-Services verwenden muss, jeden Host ein, der kein KDC-Server ist. Dieser Abschnitt enthält die Verfahren zum Installieren eines Kerberos-Clients sowie Informationen zur Verwendung der root-Authentifizierung zum Einhängen von NFS-Dateisystemen.
In der folgenden Übersicht der Schritte sind alle Verfahren zum Einrichten von Kerberos-Clients aufgeführt. Jede Zeile enthält eine Aufgabenbezeichnung, eine Beschreibung der Gründe für die Aufgabe und einen Link zur Aufgabe.
|
Mit diesem Verfahren wird ein kclient-Profil erstellt, das bei der Installation eines Kerberos-Clients verwendet werden kann. Durch Verwenden des kclient-Profils verringern Sie das Risiko von Schreibfehlern. Außerdem muss der Benutzer im Vergleich zum interaktiven Prozess weniger eingreifen.
Ein kclient-Beispielprofil kann etwa folgendermaßen aussehen:
client# cat /net/denver.example.com/export/install/profile REALM EXAMPLE.COM KDC kdc1.example.com ADMIN clntconfig FILEPATH /net/denver.example.com/export/install/krb5.conf NFS 1 DNSLOOKUP none
Bevor Sie beginnen
Bei diesem Verfahren wird ein Installationsprofil verwendet. Weitere Informationen finden Sie unter So erstellen Sie ein Kerberos-Clientinstallationsprofil.
Sie müssen das Kennwort für den clntconfig-Hauptbenutzer angeben, um den Vorgang durchzuführen.
client# /usr/sbin/kclient -p /net/denver.example.com/export/install/profile Starting client setup --------------------------------------------------- kdc1.example.com Setting up /etc/krb5/krb5.conf. Obtaining TGT for clntconfig/admin ... Password for clntconfig/admin@EXAMPLE.COM: <Type the password> nfs/client.example.com entry ADDED to KDC database. nfs/client.example.com entry ADDED to keytab. host/client.example.com entry ADDED to KDC database. host/client.example.com entry ADDED to keytab. Copied /net/denver.example.com/export/install/krb5.conf. --------------------------------------------------- Setup COMPLETE. client#
Beispiel 23-7 Automatisches Konfigurieren eines Kerberos-Client mit Befehlszeilenüberschreibungen
In dem folgenden Beispiel werden die im Installationsprofil eingestellten Parameter DNSARG und KDC überschrieben.
# /usr/sbin/kclient -p /net/denver.example.com/export/install/profile\ -d dns_fallback -k kdc2.example.com Starting client setup --------------------------------------------------- kdc1.example.com Setting up /etc/krb5/krb5.conf. Obtaining TGT for clntconfig/admin ... Password for clntconfig/admin@EXAMPLE.COM: <Type the password> nfs/client.example.com entry ADDED to KDC database. nfs/client.example.com entry ADDED to keytab. host/client.example.com entry ADDED to KDC database. host/client.example.com entry ADDED to keytab. Copied /net/denver.example.com/export/install/krb5.conf. --------------------------------------------------- Setup COMPLETE. client#
Dieses Verfahren verwendet das kclient-Installationsdienstprogramm ohne Installationsprofil.
Sie müssen die folgenden Informationen bereitstellen:
Kerberos-Bereichsname
KDC-Master-Hostname
Administrativer Hauptelementname
Passwort für das administrative Hauptelement
Beispiel 23-8 Ausführen des kclient-Installationsdienstprogramms
Die folgende Ausgabe zeigt das Ergebnis nach Ausführung des Befehls kclient.
client# /usr/sbin/kclient Starting client setup --------------------------------------------------- Do you want to use DNS for kerberos lookups ? [y/n]: n No action performed. Enter the Kerberos realm: EXAMPLE.COM Specify the KDC hostname for the above realm: kdc1.example.com Setting up /etc/krb5/krb5.conf. Enter the krb5 administrative principal to be used: clntconfig/admin Obtaining TGT for clntconfig/admin ... Password for clntconfig/admin@EXAMPLE.COM: <Type the password> Do you plan on doing Kerberized nfs ? [y/n]: n host/client.example.com entry ADDED to KDC database. host/client.example.com entry ADDED to keytab. Do you want to copy over the master krb5.conf file ? [y/n]: y Enter the pathname of the file to be copied: \ /net/denver.example.com/export/install/krb5.conf Copied /net/denver.example.com/export/install/krb5.conf. --------------------------------------------------- Setup COMPLETE ! #
In diesem Verfahren werden die folgenden Konfigurationsparameter verwendet:
Realm name = EXAMPLE.COM
DNS-Domainname = example.com
Master-KDC = kdc1.example.com
Slave-KDC = kdc2.example.com
NFS-Server = denver.example.com
Client = client.example.com
admin-Hauptelement = kws/admin
Benutzer-Hauptelement = mre
Onlinehilfe-URL = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956
Hinweis - Passen Sie die URL an, sodass sie auf den Bereich "Graphical Kerberos Administration Tool" verweist, wie in Onlinehilfe-URL im Graphical Kerberos Administration Tool beschrieben.
Um die Kerberos-Standardversion der Datei zu ändern, müssen Sie die Bereichsnamen und die Servernamen ändern. Sie müssen auch den Pfad zu den Hilfedateien für gkadmin angeben.
kdc1 # cat /etc/krb5/krb5.conf [libdefaults] default_realm = EXAMPLE.COM [realms] EXAMPLE.COM = { kdc = kdc1.example.com kdc = kdc2.example.com admin_server = kdc1.example.com } [domain_realm] .example.com = EXAMPLE.COM # # if the domain name and realm name are equivalent, # this entry is not needed # [logging] default = FILE:/var/krb5/kdc.log kdc = FILE:/var/krb5/kdc.log [appdefaults] gkadmin = { help_url = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956
Hinweis - Um die Verschlüsselungstypen zu beschränken, können Sie die Zeilen default_tkt_enctypes oder default_tgs_enctypes einstellen. Eine Beschreibung der Probleme beim Beschränken der Verschlüsselungstypen finden Sie unter Verwenden von Kerberos-Verschlüsselungstypen.
Ab Solaris 10 5/08 wird die Zuordnung zwischen Kerberos-Bereich und KDC standardmäßig in der folgenden Reihenfolge bestimmt:
Durch Definition im Abschnitt realms in krb5.conf
Durch Suchen von SRV-Datensätze in DNS
Sie können dieses Verhalten ändern, indem Sie dns_lookup_kdc oder dns_fallback im Abschnitt libdefaults der Datei krb5.conf hinzufügen. Weitere Informationen finden Sie auf der Manpage krb5.conf(4). Beachten Sie, dass Verweise immer zuerst getestet werden.
Ab Solaris 10 5/08 wird die Zuordnung zwischen Host und Bereich standardmäßig in der folgenden Reihenfolge bestimmt:
Wenn das KDC Verweise unterstützt, kann es den Client informieren, zu welchem Bereich der Host gehört.
Durch Definition von domain_realm in der Datei krb5.conf
DNS-Domainname des Hosts
Standardbereich
Sie können dieses Verhalten ändern, indem Sie dns_lookup_kdc oder dns_fallback im Abschnitt libdefaults der Datei krb5.conf hinzufügen. Weitere Informationen finden Sie auf der Manpage krb5.conf(4). Beachten Sie, dass Verweise immer zuerst getestet werden.
Die Installation und Verwendung des Network Time Protocol (NTP) ist nicht obligatorisch. Damit die Authentifizierung erfolgreich ist, müssen alle Uhren mit der Uhrzeit auf dem KDC-Server synchronisiert sein, wobei die maximale Abweichung durch die clockskew-Beziehung in der Datei krb5.conf definiert wird. Informationen zu NTP finden Sie unter Synchronisieren von Uhren zwischen KDCs und Kerberos-Clients.
Sie können das Graphical Kerberos Administration Tool verwenden, wie unter So erstellen Sie ein neues Kerberos-Hauptelement erläutert. Dazu müssen Sie sich mit einem der zuvor bei der Konfiguration des Master-KDC erstellten admin-Hauptelementnamen anmelden. In dem folgenden Beispiel wird gezeigt, wie die erforderlichen Hauptelemente mithilfe der Befehlszeile hinzufügt werden.
denver # /usr/sbin/kadmin -p kws/admin Enter password: <Type kws/admin password> kadmin:
Sie müssen ein Benutzer-Hauptelement nur erstellen, wenn dem mit diesem Host verbundenen Benutzer noch kein Hauptelement zugewiesen ist.
kadmin: addprinc mre Enter password for principal mre@EXAMPLE.COM: <Type the password> Re-enter password for principal mre@EXAMPLE.COM: <Type it again> kadmin:
Dieser Schritt muss ausgeführt werden, damit der Client root-Zugriff auf Dateisysteme hat, die über den NFS-Service eingehängt wurden. Er ist auch für nicht interaktiven root-Zugriff erforderlich, beispielsweise zum Ausführen von cron-Jobs als root.
Wenn der Client keinen root-Zugriff auf ein Remote-Dateisystem benötigt, das über den NFS-Service eingehängt ist, können Sie diesen Schritt überspringen. Das root-Hauptelement muss ein Hauptelement aus zwei Komponenten sein, wobei die zweite Komponente dem Hostnamen des Kerberos-Clientsystems entspricht, um die Erstellung eines root-Hauptelements für den ganzen Bereich zu vermeiden. Wenn die Hauptelementinstanz ein Hostname ist, muss der FQDN unabhängig von der Schreibung des Domainnamens in der Datei /etc/resolv.conf in Kleinbuchstaben angegeben werden.
kadmin: addprinc -randkey root/client.example.com Principal "root/client.example.com" created. kadmin: ktadd root/client.example.com Entry for principal root/client.example.com with kvno 3, encryption type AES-256 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal root/client.example.com with kvno 3, encryption type AES-128 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal root/client.example.com with kvno 3, encryption type Triple DES cbc mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal root/client.example.com with kvno 3, encryption type ArcFour with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal root/client.example.com with kvno 3, encryption type DES cbc mode with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab. kadmin:
Das host-Hauptelement wird von Remote-Zugriffsservices zur Authentifizierung verwendet. Das Hauptelement ermöglicht root den Erhalt eines Berechtigungsnachweises, wenn noch keiner in der Schlüsseltabellendatei vorhanden ist.
kadmin: addprinc -randkey host/denver.example.com Principal "host/denver.example.com@EXAMPLE.COM" created. kadmin: ktadd host/denver.example.com Entry for principal host/denver.example.com with kvno 3, encryption type AES-256 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal host/denver.example.com with kvno 3, encryption type AES-128 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal host/denver.example.com with kvno 3, encryption type Triple DES cbc mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal host/denver.example.com with kvno 3, encryption type ArcFour with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal host/denver.example.com with kvno 3, encryption type DES cbc mode with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab. kadmin:
Dieser Schritt ist nur erforderlich, wenn der Client auf NFS-Dateisysteme unter Verwendung der Kerberos-Authentifizierung zugreifen muss.
kadmin: ktadd nfs/denver.example.com Entry for principal nfs/denver.example.com with kvno 3, encryption type AES-256 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal nfs/denver.example.com with kvno 3, encryption type AES-128 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal nfs/denver.example.com with kvno 3, encryption type Triple DES cbc mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal nfs/denver.example.com with kvno 3, encryption type ArcFour with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal nfs/denver.example.com with kvno 3, encryption type DES cbc mode with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab. kadmin:
kadmin: quit
Bearbeiten Sie die Datei /etc/nfssec.conf und entfernen Sie das "#" vor den Kerberos-Sicherheitsmodi.
# cat /etc/nfssec.conf . . # # Uncomment the following lines to use Kerberos V5 with NFS # krb5 390003 kerberos_v5 default - # RPCSEC_GSS krb5i 390004 kerberos_v5 default integrity # RPCSEC_GSS krb5p 390005 kerberos_v5 default privacy # RPCSEC_GSS
Wenn die Datei /etc/resolv.conf noch nicht erstellt wurde, erstellen Sie sie, da die Standardisierung des Service-Hauptelements davon abhängt, dass dies von DNS durchgeführt wird. Weitere Informationen finden Sie auf der Manpage resolv.conf(4).
Nachdem die Datei /etc/resolv.conf erstellt oder geändert wurde, müssen Sie den gssd-Dämon neu starten, um die Änderungen erneut zu lesen.
# svcadm restart network/rpc/gss
Weitere Informationen finden Sie auf der Manpage warn.conf(4).
Beispiel 23-9 Einrichten eines Kerberos-Clients unter Verwendung eines Nicht-Solaris-KDC
Ein Kerberos-Client kann zur Verwendung eines Nicht-Solaris-KDC eingerichtet werden. In diesem Fall muss der Datei /etc/krb5/krb5.conf im Abschnitt realms eine Zeile hinzugefügt werden. Die Zeile ändert das Protokoll, das für die Kommunikation zwischen Client und dem Kerberos-Server zur Passwortänderung verwendet wird. Die Zeile hat folgendes Format.
[realms] EXAMPLE.COM = { kdc = kdc1.example.com kdc = kdc2.example.com admin_server = kdc1.example.com kpasswd_protocol = SET_CHANGE }
Beispiel 23-10 DNS-TXT-Datensätze für die Zuordnung von Host- und Domainnamen zum Kerberos-Bereich
@ IN SOA kdc1.example.com root.kdc1.example.com ( 1989020501 ;serial 10800 ;refresh 3600 ;retry 3600000 ;expire 86400 ) ;minimum IN NS kdc1.example.com. kdc1 IN A 192.146.86.20 kdc2 IN A 192.146.86.21 _kerberos.example.com. IN TXT "EXAMPLE.COM" _kerberos.kdc1.example.com. IN TXT "EXAMPLE.COM" _kerberos.kdc2.example.com. IN TXT "EXAMPLE.COM"
Beispiel 23-11 DNS-SRV-Datensätze für Kerberos-Serverpositionen
In diesem Beispiel werden die Datensätze für die Position der KDCs, des admin-Servers bzw. des kpasswd-Servers definiert.
@ IN SOA kdc1.example.com root.kdc1.example.com ( 1989020501 ;serial 10800 ;refresh 3600 ;retry 3600000 ;expire 86400 ) ;minimum IN NS kdc1.example.com. kdc1 IN A 192.146.86.20 kdc2 IN A 192.146.86.21 _kerberos._udp.EXAMPLE.COM IN SRV 0 0 88 kdc2.example.com _kerberos._tcp.EXAMPLE.COM IN SRV 0 0 88 kdc2.example.com _kerberos._udp.EXAMPLE.COM IN SRV 1 0 88 kdc1.example.com _kerberos._tcp.EXAMPLE.COM IN SRV 1 0 88 kdc1.example.com _kerberos-adm._tcp.EXAMPLE.COM IN SRV 0 0 749 kdc1.example.com _kpasswd._udp.EXAMPLE.COM IN SRV 0 0 749 kdc1.example.com
Mit diesem Verfahren wird die Sicherheitsprüfung deaktiviert, die feststellt, ob das KDC des Host-Hauptelements, das in der lokalen /etc/krb5/krb5.keytab-Datei gespeichert ist, mit dem KDC übereinstimmt, von dem das TGT stammt. Mit dieser Überprüfung vermeiden Sie DNS-Spoofingangriffe. Für einige Clientkonfigurationen ist das Host-Hauptelement möglicherweise nicht verfügbar, sodass diese Überprüfung deaktiviert werden muss, damit der Client funktioniert. Die Überprüfung muss in den folgenden Fällen deaktiviert werden:
Die Client-IP-Adresse wird dynamisch zugewiesen. Beispiel: ein DHCP-Client
Der Client wurde nicht zum Hosten eines Service konfiguriert, daher wurde kein Host-Hauptelement erstellt.
Der Hostschlüssel ist nicht auf dem Client gespeichert.
Wenn die Option verify_ap_req_nofail auf false eingestellt ist, ist der TGT-Überprüfungsprozess nicht aktiviert. Weitere Informationen zu dieser Option finden Sie auf der Manpage krb5.conf(4).
client # cat /etc/krb5/krb5.conf [libdefaults] default_realm = EXAMPLE.COM verify_ap_req_nofail = false ...
Hinweis - Die Option verify_ap_req_nofail kann entweder im Abschnitt [libdefaults] oder im Abschnitt [realms] der Datei krb5.conf eingegeben werden. Wenn sich die Option im Abschnitt [libdefaults] befindet, wird sie auf alle Bereiche angewendet. Wenn sich die Option im Abschnitt [realms] befindet, gilt die Einstellung nur für den definierten Bereich.
Dieses Verfahren ermöglicht einem Client den Zugriff auf ein NFS-Dateisystem mit Kerberos-Authentifizierung unter Verwendung der root-ID-Berechtigung, insbesondere, wenn das NFS-Dateisystem mit Optionen wie -o sec=krb5,root=client1.sun.com zur gemeinsamen Nutzung freigegeben ist.
Sie können das Graphical Kerberos Administration Tool verwenden, wie unter So erstellen Sie ein neues Kerberos-Hauptelement erläutert. Dazu müssen Sie sich mit einem der zuvor bei der Konfiguration des Master-KDC erstellten admin-Hauptelementnamen anmelden. In dem folgenden Beispiel wird gezeigt, wie die erforderlichen Hauptelemente mithilfe der Befehlszeile hinzufügt werden.
denver # /usr/sbin/kadmin -p kws/admin Enter password: <Type kws/admin password> kadmin:
Dieses Hauptelement ermöglicht einen Root-ähnlichen Zugriff auf über NFS eingehängte Dateisysteme, in denen eine Kerberos-Authentifizierung erforderlich ist. Das root-Hauptelement muss ein Hauptelement aus zwei Komponenten sein, wobei die zweite Komponente dem Hostnamen des Kerberos-Clientsystems entspricht, um die Erstellung eines root-Hauptelements für den ganzen Bereich zu vermeiden. Wenn die Hauptelementinstanz ein Hostname ist, muss der FQDN unabhängig von der Schreibung des Domainnamens in der Datei /etc/resolv.conf in Kleinbuchstaben angegeben werden.
kadmin: addprinc -randkey root/client.example.com Principal "root/client.example.com" created. kadmin:
Dieser Schritt muss ausgeführt werden, wenn Sie ein root-Hauptelement hinzugefügt haben, damit der Client root-Zugriff auf Dateisysteme hat, die über den NFS-Service eingehängt wurden. Er ist auch für nicht interaktiven root-Zugriff erforderlich, beispielsweise zum Ausführen von cron-Jobs als root.
kadmin: ktadd root/client.example.com Entry for principal root/client.example.com with kvno 3, encryption type AES-256 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal root/client.example.com with kvno 3, encryption type AES-128 CTS mode with 96-bit SHA-1 HMAC added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal root/client.example.com with kvno 3, encryption type Triple DES cbc mode with HMAC/sha1 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal root/client.example.com with kvno 3, encryption type ArcFour with HMAC/md5 added to keytab WRFILE:/etc/krb5/krb5.keytab. Entry for principal root/client.example.com with kvno 3, encryption type DES cbc mode with RSA-MD5 added to keytab WRFILE:/etc/krb5/krb5.keytab. kadmin:
kadmin: quit
Benutzer, die über kein Kerberos-Hauptelement verfügen, können automatisch in einen vorhandenen Kerberos-Bereich migriert werden. Die Migration wird mithilfe des PAM-Framework für den verwendeten Service erzielt, indem das Modul pam_krb5_migrate in den Authentifizierungs-Stack des Service in /etc/pam.conf übernommen wird.
In diesem Beispiel werden die PAM-Servicenamen dtlogin und other zur Verwendung der automatischen Migration konfiguriert. Die folgenden Konfigurationsparameter werden verwendet:
Realm name = EXAMPLE.COM
Master-KDC = kdc1.example.com
Rechner, der den Migrationsservice hostet = server1.example.com
Migrationservice-Hauptelement = host/server1.example.com
Bevor Sie beginnen
Richten Sie server1 als Kerberos-Client des Bereichs EXAMPLE.COM ein. Weitere Informationen finden Sie unter Konfigurieren von Kerberos-Clients.
Das Hostservice-Hauptelement in der Datei keytab von server1 wird verwendet, um den Server beim Master-KDC zu authentifizieren.
server1 # klist -k Keytab name: FILE:/etc/krb5/krb5.keytab KVNO Principal ---- ------------------------------------------------ 3 host/server1.example.com@EXAMPLE.COM 3 host/server1.example.com@EXAMPLE.COM 3 host/server1.example.com@EXAMPLE.COM 3 host/server1.example.com@EXAMPLE.COM
# cat /etc/pam.conf . . # # dtlogin service (explicit because of pam_krb5_migrate) # dtlogin auth requisite pam_authtok_get.so.1 dtlogin auth required pam_dhkeys.so.1 dtlogin auth required pam_unix_cred.so.1 dtlogin auth sufficient pam_krb5.so.1 dtlogin auth requisite pam_unix_auth.so.1 dtlogin auth optional pam_krb5_migrate.so.1
Der Ablaufzeitpunkt des Passworts für neu erstellte Kerberos-Konten kann auf den aktuellen Zeitpunkt (jetzt) eingestellt werden, um eine sofortige Änderung des Kerberos-Passworts zu erzwingen. Um den Ablaufzeitpunkt auf "jetzt" einzustellen, fügen Sie die Option expire_pw den Zeilen hinzu, in denen das Modul pam_krb5_migrate verwendet wird. Weitere Informationen finden Sie auf der Manpage pam_krb5_migrate(5).
# cat /etc/pam.conf . . dtlogin auth optional pam_krb5_migrate.so.1 expire_pw
Dadurch kann die Passwortablauffunktion von Kerberos den Zugriff sperren.
# cat /etc/pam.conf . . # # Default definition for Account management # Used when service name is not explicitly mentioned for account management # other account requisite pam_roles.so.1 other account required pam_krb5.so.1 other account required pam_unix_account.so.1
Dadurch können abgelaufene Passwörter aktualisiert werden.
# cat /etc/pam.conf . . # # Default definition for Password management # Used when service name is not explicitly mentioned for password management # other password required pam_dhkeys.so.1 other password requisite pam_authtok_get.so.1 other password requisite pam_authtok_check.so.1 other password sufficient pam_krb5.so.1 other password required pam_authtok_store.so.1
Mit den folgenden Einträgen erhält das Service-Hauptelement host/server1.example.com Migrations- und Abfragerechte für alle Benutzer, mit Ausnahme des root-Benutzers. Es ist wichtig, dass nicht zu migrierende Benutzer unter Verwendung der Berechtigung U in der Datei kadm5.acl aufgeführt werden. Diese Einträge müssen sich vor dem Eintrag für alle Berechtigungen oder ui befinden. Weitere Informationen finden Sie auf der Manpage kadm5.acl(4).
kdc1 # cat /etc/krb5/kadm5.acl host/server1.example.com@EXAMPLE.COM U root host/server1.example.com@EXAMPLE.COM ui * */admin@EXAMPLE.COM *
Dies ermöglicht dem Dämon kadmind, die neuen kadm5.acl-Einträge zu verwenden.
kdc1 # svcadm restart network/security/kadmin
Durch folgende Einträge verwendet der Dämon kadmind den PAM-Service k5migrate zur Validierung des UNIX-Benutzerpassworts für zu migrierende Konten.
# grep k5migrate /etc/pam.conf k5migrate auth required pam_unix_auth.so.1 k5migrate account required pam_unix_account.so.1