共有サーバーで使用されているすべてのフォルダーに正しい 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
権限は に設定されている-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::---
現在、Web サイトは正常に動作していますが、自分が行った操作が正しく行われているかどうかはわかりません。この種の構成は、ユーザーが互いのファイルを読み取れないように分離するのに十分でしょうか?