Modulname: mac_bsdextended.ko
Parameter in der Kernelkonfiguration:
options MAC_BSDEXTENDED
Bootparameter: mac_bsdextended_load="YES"
Das Modul mac_bsdextended(4) erstellt eine Firewall für
das Dateisystem und ist eine Erweiterung des sonst üblichen
Rechtemodells. Es erlaubt einem Administrator einen Regelsatz zum
Schutz von Dateien, Werkzeugen und Verzeichnissen in der
Dateisystemhierarchie zu erstellen, der einer Firewall ähnelt.
Sobald auf ein Objekt im Dateisystem zugegriffen werden soll, wird eine
Liste von Regel abgearbeitet, bis eine passende Regel gefunden wird
oder die Liste zu Ende ist. Das Verhalten kann durch die Änderung
des sysctl(8) Parameters
security.mac.bsdextended.firstmatch_enabled
eingestellt werden. Ähnlich wie bei den anderen Firewallmodulen
in FreeBSD wird eine Datei erstellt, welche die Zugriffsregeln
enthält. Diese wird beim Systemstart durch eine Variable in
rc.conf(5) eingebunden.
Der Regelsatz kann mit dem Programm ugidfw(8) eingepflegt werden, welches eine Syntax bereitstellt, die der von ipfw(8) gleicht. Weitere Werkzeuge können auch selbst erstellt werden, indem die Funktionen der Bibliothek libugidfw(3) verwendet werden.
Bei der Arbeit mit diesem Modul ist äußerste Vorsicht geboten - falscher Gebrauch kann den Zugriff auf Teile des Dateisystems komplett unterbinden.
Nachdem das Modul mac_bsdextended(4) erfolgreich geladen wurde, zeigt das folgende Kommando die gegenwärtig aktiven Regeln an:
#
ugidfw list
0 slots, 0 rules
Wie erwartet, sind keine Regeln definiert. Das bedeutet, das auf
alle Teile des Dateisystems zugegriffen werden kann. Um eine Regel zu
definieren, die jeden Zugriff durch Nutzer blockiert und nur die Rechte
von root
unangetastet läßt, muß
lediglich dieses Kommando ausgeführt werden:
#
ugidfw add subject not uid root new object not uid root mode n
Das ist allerdings keine gute Idee, da nun allen Nutzern der
Zugriff auf selbst die einfachsten Programme wie ls
untersagt wird. Angemessener wäre etwas wie:
#
ugidfw set 2 subject uid user1 object uid user2 mode n
#
ugidfw set 3 subject uid user1 object gid user2 mode n
Diese Befehle bewirken, dass user1
keinen
Zugriff mehr auf Dateien und Programme hat, die
gehören.
Dies schließt das Auslesen von Verzeichniseinträgen ein.
user2
Anstelle uid
user1
könnte auch not uid
als Parameter übergeben
werden. Dies würde diesselben Einschränkungen für alle
Nutzer bewirken anstatt nur einen einzigen.user2
root
ist von diesen Einstellungen nicht
betroffen.
Dies sollte als Überblick ausreichen, um zu verstehen, wie das Modul mac_bsdextended(4) helfen kann, das Dateisystem abzuschotten. Weitere Informationen bieten die Manpages mac_bsdextended(4) und ugidfw(8).
Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an
<de-bsd-questions@de.FreeBSD.org>.
Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an
<de-bsd-translators@de.FreeBSD.org>.