5.4. Sicherung von NFS

Das Network File System oder NFS ist ein RPC-Dienst, der Client-Maschinen Dateisysteme, die vom Netzwerk aus zugängig sind, bereitstellt. Weitere Informationen zur Funktion von NFS finden Sie im Kapitel Netzwerkdateisystem (NFS) im Red Hat Enterprise Linux Referenzhandbuch. Weitere Informationen zur Konfiguration von NFS finden Sie im Red Hat Enterprise Linux Handbuch zur System-Administration. In den folgenden Unterabschnitten wird ein grundlegendes Wissen über NFS vorausgesetzt.

WichtigWichtig
 

Die Version von NFS, die in Red Hat Enterprise Linux inkludiert ist, NFSv4, benötigt nicht mehr länger den portmap-Dienst, wie in Abschnitt 5.2 beschrieben. NFS-Verkehr benutzt nunmehr eher TCP in allen Versionen, als UDP und erfordert TCP unter Verwendung von NFSv4. NFSv4 beinhaltet nunmehr Kerberos Benutzer- und Gruppen-Authentifizierung als Teil des RPCSEC_GSS Kernel-Moduls. Informationen über portmap sind weiterhin beinhaltet, da Red Hat Enterprise Linux ebenso NFSv2 und NFSv3 unterstützt, welche portmap einsetzen.

5.4.1. Planen Sie das Netzwerk sorgfältig

Da nunmehr von NFSv4 sämtliche Informationen verschlüsselt mittels Kerberos über das Netzwerk übertragen werden können, ist es wichtig, dass dieser Dienst richtig konfiguriert wird, sollte sich dieser hinter einer Firewall oder auf einem segmentierten Netzwerk befinden. NFSv2 und NFSv3 übergeben Daten noch immer nicht sicher. Dabei besteht immer ein gewisser Grund zur Besorgnis. Hier kann ein sorgfältiges Design des Netzwerks schwerwiegende Sicherheitsbrüche verhindern.

5.4.2. Achtung vor Syntax-Fehlern

Der NFS-Server entscheidet über die Datei /etc/exports, welche Dateisysteme exportiert werden sollen und zu welchen Hosts diese Dateisysteme exportiert werden sollen. Achten Sie darauf, dass Sie keine Extra-Leerstellen beim Bearbeiten dieser Datei einfügen.

Die folgende Zeile in der Datei /etc/exports legt fest, dass der Host bob.example.com Lese- und Schreibberechtigung auf das gemeinsame Verzeichnis /tmp/nfs/ erhält.

/tmp/nfs/     bob.example.com(rw)

Diese Zeile in der Datei /etc/exports beschreibt, dass der Host bob.example.com lediglich Leseberechtigung besitzt, allerdings jeder Lese- und Schreibberechtigung hat, wegen eines einzelnen Leerzeichens nach dem Hostnamen.

/tmp/nfs/     bob.example.com (rw)

Es ist sehr sinnvoll, jegliche konfigurierte NFS-Shares mit dem Befehl showmount zu prüfen:

showmount -e <hostname>

5.4.3. Verwenden Sie nicht die Option no_root_squash

Standardmäßig ändern NFS-Shares den Root-Benutzer in den Benutzer nfsnobody um, einem unprivilegierten Benutzer-Account. Auf diese Art gehören alle root-erstellten Dateien dem User nfsnobody, wodurch das Hochladen von Programmen mit der Setuid-Bit-Einstellung verhindert wird.

Wenn no_root_squash verwendet wird, können auswärtige Root-Benutzer jede Datei in dem gemeinsamen Dateisystem verändern und dabei trojanisierte Anwendungen hinterlassen, die von anderen Benutzern unabsichtlich ausgeführt werden.