共有サーバーで使用されるすべてのフォルダに対して正しいACLを設定しようとしています。これにより、他のユーザーが互いのファイルを読み取ることができなくなります。これまで私がしたことは次のとおりです。
各Webサイトフォルダは、別々のユーザーとグループが所有しています。
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
権限は0に設定されているため、-rwxr-x---
他のすべての人の権限は0です。
しかし、apache(www-data
)には実行権限が必要なので、基本的には不可能です(error: AH00035
)。
だから私はsetfaclを使用し、www-dataに実行および読み取り権限を与えることにしました。
setfacl -R -m u:www-data:rx /var/www/crm/
getfaclは以下を提供します:
# file: crm
# owner: crm
# group: crm
user::rwx
user:www-data:r-x
group::r-x
mask::r-x
other::---
これでサイトはうまくいきますが、私がやっていることが正しいかどうかはわかりません。この設定は、ユーザーがお互いにファイルを読み取らないように分離するのに十分ですか?