/etc/exports
, listet die Verzeichnisse auf, die über das Netzwerk zur Verfügung gestellt werden (exported). Zu jeder NFS-Freigabe wird nur den Rechnern Zugang gewährt, die auf dieser Liste stehen. Eine feiner eingestellte Zugangskontrolle kann durch einige Optionen erzielt werden. Die Syntax dieser Datei ist recht einfach:
/freizugebendes/verzeichnis rechner1(option1,option2,...) rechner2(...) ...
fsid=0
oder fsid=root
identifiziert werden muss.
*.falcot.com
oder ein IP-Adressbereich wie 192.168.0.0/255.255.255.0
oder 192.168.0.0/24
verwendet wird.
ro
) schreibgeschützt bereitgestellt. Die Option rw
ermöglicht Schreibzugriff. NFS-Clients nehmen typischerweise über einen Port Verbindung auf, der Administratorrechte erfordert (mit anderen Worten, unterhalb von 1024); diese Einschränkung kann mit der Option insecure
aufgehoben werden (die Option secure
ist stillschweigend eingestellt, kann aber auch ausdrücklich angegeben werden, wenn dies der Deutlichkeit halber erforderlich ist).
sync
); dies kann durch die Option async
abgestellt werden. Asynchrones Schreiben erhöht die Leistung ein wenig, es verringert jedoch die Zuverlässigkeit, da die Gefahr eines Datenverlusts besteht, falls der Server zwischen der Annahmebestätigung des Schreibauftrags und dem tatsächlichen Schreibvorgang auf der Festplatte abstürzt. Da der voreingestellte Wert (im Vergleich zur früheren Einstellung von NFS) kürzlich geändert wurde, empfiehlt es sich, ihn ausdrücklich einzustellen.
nobody
. Dieses Verhalten entspricht der Option root_squash
und ist standardmäßig aktiviert. Die Option no_root_squash
, die dieses Verhalten abstellt, ist gefährlich und sollte nur in überwachten Umgebungen eingesetzt werden. Die Optionen anonuid=uid
und anongid=gid
ermöglichen es, anstelle von UID/GID 65534 (was dem User nobody
und der Gruppe nogroup
entspricht) einen anderen fingierten Benutzer anzugeben.
sec
hinzufügen, um die gewünschte Sicherheitsstufe anzugeben: sec=sys
ist der Standard ohne spezielle Sicherheitsmerkmale, sec=krb5
aktiviert nur die Authentifizierung, sec=krb5i
fügt Integritätsschutz hinzu, und sec=krb5p
ist die umfassendste Stufe, die Datenschutz (mit Datenverschlüsselung) enthält. Damit dies funktioniert, benötigen Sie ein funktionierendes Kerberos-Setup (dieser Service wird in diesem Buch nicht behandelt).
mount
und der Datei /etc/fstab
erforderlich.
Beispiel 11.22. Manuelles Einhängen mit dem Befehl mount
#
mount -t nfs4 -o rw,nosuid arrakis.internal.falcot.com:/shared /srv/shared
Beispiel 11.23. NFS-Eintrag in der Datei /etc/fstab
arrakis.internal.falcot.com:/shared /srv/shared nfs4 rw,nosuid 0 0
/shared/
des Servers arrakis
in das lokale Verzeichnis /srv/shared/
ein. Schreibzugriff ist erwünscht (daher der Parameter rw
). Die Option nosuid
ist eine Schutzmaßnahme, die jegliches setuid
- oder setgid
-Bit von Programmen, die auf der Freigabe gespeichert sind, entfernt. Falls die NFS-Freigabe nur zum Speichern von Dokumenten dienen soll, ist noexec
eine weitere empfehlenswerte Option, die das Ausführen von auf der Freigabe gespeicherten Programmen verhindert. Beachten Sie, dass auf dem Server das Verzeichnis shared
unterhalb des NFSv4-Root-Exports liegt (zum Beispiel /export/shared
), es ist kein Top-Level-Verzeichnis.