Weiter zum Inhalt

POSIX ACL: Erste Schritte

Im Rahmen einer Serverinstallation Samba, möchte ich die POSIX ACL einführen, da hiermit die Rechte auf Dateien und Verzeichnisse über das Windowsfrontend gesetzt werden können.

Voraussetzungen

Dateisystem

Die Voraussetzung für den Einsatz von ACL ist ein Dateisystem mit entsprechender Unterstützung für erweitere Attribute und POSIX ACL. Sie können das mit dem Befehl “grep "XATTR\|POSIX_ACL" /boot/config-$(uname -r)” überprüfen. Die Ausgabe sollte in etwa so aussehen:


% grep "XATTR\|POSIX_ACL" /boot/config-$(uname -r)
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_DEVPTS_FS_XATTR=y
CONFIG_TMPFS_XATTR=y
CONFIG_CIFS_XATTR=y

Sollten bei den Zeilen mit *_FS_XATTR und *_ kein “y” stehen, dann bleibt nur die Erstellung eines neunen Kernel mit den angepassten Parametern.

Bei der Verwendung von XFS ist nichts weiter zu beachten. Sollten Sie ACL’s auf einem ext2/ext3 Dateisystem eingesetzt werden, dann ist die Mountoption “acl” beim mounten anzugeben.

Samba

Bei Samba muss die Unterstützung von Attributen und ACL eingebaut sein. Mit dem Kommando “ldd $(which smbd)|grep "attr\|acl"” können Sie das überprüfen. Die Ausgabe sollte etwas so aussehen:


% ldd $(which smbd)| grep "attr\|acl"
libattr.so.1 => /lib/libattr.so.1 (0x4017c000)
libacl.so.1 => /lib/libacl.so.1 (0x40180000)

Kommandozeilenwerkzeuge für Linux

Bei einem Debiansystem können Sie die Kommandozeilenwerkzeug mit dem Befehl “apt-get install acl” nachinstallieren.

Erste Schritte

Mit dem ACL können Sie einem Dateiobject mehrere n Benutzern und Gruppen mit unterschiedlichen Rechten zuordnen.

Die Zuordnung der POSIX ACL zu den Windows ACL sieht so aus:
(Samba-3: Windows file and directory ACLs)

Windows ACE File Attribute Flag
Full Control #
Traverse Folder/Execute File x
List Folder/Read Data r
Read Attributes r
Read Extended Attributes r
Create Files/Write Data w
Create Folders/Append Data w
Write Attributes w
Write Extended Attributes w
Delete Subfolders and Files w
Delete #
Read Permissions all
Change Permissions #
Take Ownership #