Ich versuche, für alle Ordner auf meinem freigegebenen Server die richtige ACL festzulegen. Auf diese Weise können andere Benutzer die Dateien der anderen nicht lesen. Was ich bisher getan habe, ist Folgendes:
Der Besitzer jedes Website-Ordners ist ein separater Benutzer bzw. eine separate Gruppe:
ls -l crm
drwxr-x--- 3 crm crm 4096 Jan 6 04:54 crm
drwxr-x--- 3 mdf mdf 4096 Jan 8 00:26 mdf
drwxr-x--- 3 dba dba 4096 Jan 6 04:54 dba
Die Berechtigungen sind auf gesetzt -rwxr-x---
, andere haben also 0 Berechtigungen.
Da Apache ( www-data
) jedoch Ausführungsberechtigungen benötigt, funktioniert dies standardmäßig nicht ( error: AH00035
).
Aus diesem Grund habe ich mich dazu entschieden, setfacl zu verwenden und www-data Ausführungs- und Leseberechtigungen zu erteilen:
setfacl -R -m u:www-data:rx /var/www/crm/
getfacl gibt aus:
# file: crm
# owner: crm
# group: crm
user::rwx
user:www-data:r-x
group::r-x
mask::r-x
other::---
Jetzt funktioniert die Website einwandfrei, aber ich bin nicht sicher, ob ich das richtig gemacht habe. Reicht diese Art der Konfiguration aus, um zu verhindern, dass Benutzer gegenseitig ihre Dateien lesen?