NFS services use UNIX UIDs to identify a user and cannot directly use principals. Um den Hauptbenutzer in eine UID zu übersetzen, muß eine Berechtigungsnachweistabelle erstellt werden, in der eine Zuordnung von Hauptbenutzern und UNIX-UIDs vorgenommen wird. Die weiter unten dargestellten Verfahren richten sich auf die Aufgaben, die erforderlich sind, um einen SEAM NFS-Server zu konfigurieren, die Berechtigungsnachweistabelle zu verwalten und Kerberos-Sicherheitsmodi für über NFS eingehängte Dateisysteme einzuleiten. Die folgende Tabelle beschreibt die in diesem Abschnitt behandelten Aufgaben.
Tabelle 3-3 Aufgabenübersicht für das Konfigurieren eines SEAM NFS-Servers
Aufgabe |
Beschreibung |
Anweisungen finden Sie unter ... |
---|---|---|
Konfigurieren eines SEAM NFS-Servers | Schritte zum Aktivieren eines Servers für die Freigabe eines Dateisystems, das Kerberos-Authentisierung erfordert. | "So werden SEAM NFS-Server konfiguriert" |
Ändern des serverseitigen Mechanismus für die Berechtigungsnachweis-tabelle | Schritte zur Definition des serverseitigen Mechanismus, der vom Befehl gsscred verwendet wird. | "So ändern Sie den serverseitigen Mechanismus für die gsscred-Tabelle" |
Erstellen einer Berechtigungsnachweis-tabelle | Schritte zum Generieren einer Berechtigungsnachweistabelle. | "So erstellen Sie eine Berechtigungsnachweistabelle" |
Ändern der Berechtigungsnachweis-tabelle, in der Benutzer-Hauptbenutzer und UNIX UIDs einander zugeordnet werden. | Schritte zum Aktualisieren von Informationen in der Berechtigungsnachweistabelle. | "So fügen Sie einen einzelnen Eintrag zur Berechtigungsnachweistabelle hinzu" |
Freigeben eines Dateisystems mit Kerberos-Authentisierung | Schritte zur Freigabe eines Dateisystems mit Sicherheitsmodi, die eine Kerberos-Authentisierung erforderlich machen. | "So richten Sie eine sichere NFS-Umgebung mit mehreren Kerberos-Sicherheitsmodi ein" |
Dieses Verfahren verlangt, daß der Master-KDC konfiguriert ist. Um den Prozeß vollständig testen zu können, benötigen Sie mehrere Clients. Es werden die folgenden Konfigurationsparameter verwendet:
Bereichsname = ACME.COM
DNS-Domainname = acme.com
NFS server = denver.acme.com
Admin-Hauptbenutzer = kws/admin
Voraussetzungen für die Konfiguration eines SEAM NFS-Servers
Die SEAM Client-Software muß installiert sein.
Optional: Installieren Sie den NTP-Client oder einen anderen Mechanismus für die Synchronisation der Uhrzeit.
Siehe "Synchronisieren der Uhren zwischen KDCs und SEAM-Clients", um weitere Informationen über NTP zu erhalten.
Starten Sie kadmin.
Die Verwendung des SEAM-Verwaltungstools zum Hinzufügen eines Hauptbenutzers wird in "Erstellen eines neuen Hauptbenutzers" erklärt "Erstellen eines neuen Hauptbenutzers". Das Beispiel weiter unten zeigt, wie die erforderlichen Hauptbenutzer über die Befehlszeile hinzugefügt werden. Sie müssen sich mit einem der admin-Hauptbenutzernamen anmelden, die Sie beim Konfigurieren des Master-KDCs erstellt haben.
denver # /usr/krb5/sbin/kadmin -p kws/admin Paßwort eingeben: <Eingabe des Paßworts für kws/admin> kadmin: |
Erstellen Sie den Hauptbenutzer für den NFS-Service des Servers.
kadmin: addprinc -randkey nfs/denver.acme.com Hauptbenutzer "nfs/denver.acme.com" erstellt. kadmin: |
Optional: Erstellen Sie einen Root-Hauptbenutzer für den NFS-Server.
kadmin: addprinc root/denver.acme.com Geben Sie das Paßwort für Hauptbenutzer root/denver.acme.com@ACME.COM ein: <Eingabe des Paßworts> Geben Sie das Paßwort für Hauptbenutzer root/denver.acme.com@ACME.COM erneut ein: <Nochmalige Eingabe> Hauptbenutzer "root/denver.acme.com@ACME.COM" erstellt. kadmin: |
Fügen Sie den Hauptbenutzer des NFS-Service des Servers zur Schlüsseltabelle des Servers hinzu.
kadmin: ktadd nfs/denver.acme.com kadmin: Eintrag für nfs/denver.acme.com mit kvno 3, Verschlüsselungstyp DES-CBC-CRC zur Schlüsseltabelle hinzugefügt WRFILE:/etc/krb5/krb5.keytab kadmin: quit |
Beenden Sie kadmin
kadmin: quit |
Erstellen Sie die Tabelle gsscred.
Weitere Informationen finden Sie unter "So erstellen Sie eine Berechtigungsnachweistabelle".
Geben Sie das NFS-Dateisystem in Verbindung mit Kerberos-Sicherheitsmodi frei.
Weitere Informationen finden Sie unter "So richten Sie eine sichere NFS-Umgebung mit mehreren Kerberos-Sicherheitsmodi ein".
Authentisieren Sie auf jedem Client Benutzer- und Root-Hauptbenutzer.
Weitere Informationen finden Sie unter "Einrichten der Root-Authentisierung für das Einhängen von NFS-Dateisystemen".
Melden Sie sich auf dem NFS-Server als Superuser an.
Bearbeiten Sie /etc/gss/gsscred.conf und ändern Sie den Mechanismus.
Einer der folgenden serverseitigen Mechanismen kann verwendet werden: files, xfn_files, xfn_nis, xfn_nisplus oder xfn. Die Vorteile jedes einzelnen dieser Mechanismen wird in "Verwenden der Tabelle für gsscred" behandelt.
Die gsscred-Berechtigungstabelle wird von einem NFS-Server dazu verwendet, um SEAM-Hauptbenutzer und UIDs einander zuzuordnen. Damit ein NFS-Client ein Dateisystem mit Kerberos-Authentisierung von einem NFS-Server an anderer Stelle einhängen kann, muß diese Tabelle erstellt oder verfügbar gemacht werden.
Melden Sie sich auf dem entsprechenden Server als Superuser an.
Von welchem Server aus und unter welcher ID Sie diesen Befehl ausführen, hängt vom serverseitigen Mechanismus ab, der zur Unterstützung der gsscred-Tabelle ausgewählt wurde. Für alle Mechanismen mit Ausnahme von xfn_nisplus müssen Sie sich als root anmelden.
Ist der serverseitige Mechanismus ... |
dann ... |
---|---|
files |
Auf NFS-Server ausführen |
xfn |
Host aufgrund der xfn-Dateieinstellung auswählen |
xfn_files |
Auf NFS-Server ausführen |
xfn_nis |
Auf NIS-Master ausführen |
xfn_nisplus |
An beliebiger Stelle ausführen, solange die Berechtigungen, NIS+-Daten zu ändern, vorhanden sind. |
Optional: Wenn /var/fn nicht existiert, und Sie eine der xfn-Optionen verwenden möchten, initialisieren Sie eine XFN-Datenbank.
# fnselect files # fncreate -t org -o org// |
Erstellen Sie mit gsscred die Berechtigungsnachweistabelle.
Der Befehl sammelt Informationen aus allen im passwd-Eintrag der Datei /etc/nsswitch.conf aufgelisteten Quellen. Sie müssen eventuell vorübergehend den Eintrag files entfernen, falls Sie die lokalen Paßwort-Einträge nicht in die Berechtigungsnachweistabelle aufnehmen möchten. Siehe die Online-Dokumentation zu gsscred(1M), um weitere Informationen zu erhalten.
# gsscred -m kerberos_v5 -a |
Dieses Verfahren verlangt, daß die gsscred-Tabelle bereits auf dem NFS-Server installiert ist.
Melden Sie sich auf einem NFS-Server als Superuser an.
Fügen Sie mithilfe des Befehls gsscred einen Eintrag zur Tabelle hinzu.
# gsscred -m [mech] -n [name] -u [uid] -a |
mech |
Der zu verwendende Sicherheitsmechanismus. |
Name |
Der Hauptbenutzername des Benutzers entsprechend der Definition im KDC. |
uid |
Die Benutzer-ID des Benutzers entsprechend der Definition in der Paßwort-Datenbank. |
-a |
Fügt die UID zur Hauptbenutzernamen-Zuordnung hinzu. |
Im folgenden Beispiel wird ein Eintrag für die Benutzerin mit dem Namen sandy, die der UID 3736 zugeordnet ist, hinzugefügt. Die UID wird der Paßwortdatei entnommen, wenn sie nicht in der Befehlszeile angegeben ist.
# gsscred -m kerberos_v5 -n sandy -u 3736 -a |
Melden Sie sich auf dem NFS-Server als Superuser an.
Bearbeiten Sie die Datei /etc/dfs/dfstab , und fügen Sie die Option sec= mit den erforderlichen Sicherheitsmodi in den entsprechenden Einträgen hinzu.
# share -F nfs -o [Modus] [Dateisystem] |
Modus |
Die bei der Freigabe zu verwendenden Sicherheitsmodi. Bei Verwendung mehrfacher Sicherheitsmodi wird der erste Modus in der Liste von autofs als Standard verwendet. |
Dateisystem |
Der Pfad auf das freizugebende Dateisystem. |
Alle Clients, die den Zugriff auf Dateien des benannten Dateisystems versuchen, benötigen Kerberos-Authentisierung. Um den Zugriff auf Dateien durchzuführen, sollten sowohl der Benutzer-Hauptbenutzer als auch der root-Hauptbenutzer auf dem NFS-Client authentisiert werden.
Vergewissern Sie sich, daß der NFS-Service auf dem Server ausgeführt wird.
Wenn dies der erste Freigabebefehl oder die erste Freigabefehlsfolge ist, die Sie eingeleitet haben, dann werden wahrscheinlich die NFS-Daemons nicht ausgeführt. Die nachstehende Befehlsfolge beendet die Daemons und startet sie neu.
# /etc/init.d/nfs.server stop # /etc/init.d/nfs.server start |
Optional: Wenn autofs verwendet wird, bearbeiten Sie die auto_master
-Daten, um einen anderen als den Standardsicherheitsmodus auszuwählen
Sie müssen dieses Verfahren nicht befolgen, wenn Sie autofs für den Zugriff auf das Dateisystem nicht verwenden, oder wenn die Standardauswahl des Sicherheitsmodus akzeptabel ist.
/home auto_home -nosuid,sec=krbi |
Optional: Führen Sie den Befehl mount manuell aus, um auf das Dateisystem mit einem anderen als dem Standardmodus zuzugreifen.
Alternativ dazu könnten Sie den Befehl mount dazu verwenden, um den Sicherheitsmodus anzugeben, doch dies nutzt nicht den Vorteil der automatischen Mounts aus:
# mount -F nfs -o sec=krb5p /export/home |
Dieses Beispiel erfordert Kerberos-Authentisierung, bevor auf die Dateien zugegriffen werden kann.
# share -F nfs -o sec=krb5 /export/home |
In diesem Beispiel sind alle drei Kerberos-Sicherheitsmodi ausgewählt worden. Wenn bei der Mount-Anforderung kein Sicherheitsmodus angegeben ist, dann wird der erste aufgeführte Modus bei allen NFS V3-Clients angewendet (in diesem Fall krb5). Zusätzliche Informationen finden Sie unter "Änderungen für den Befehl share".
# share -F nfs -o sec=krb5:krb5i:krb5p /export/home |