为/ var / www中的不同文件提供文件所有权/权限集

我正在尝试为我的服务器上的/ var / wwwbuild立一组安全的所有权/许可标准。 所有权是apache或不是apache,权限是从000-777的任何东西。

这是我第一次尝试。 我不认为自己是一个服务器pipe理员,或安全knowledgable,所以我在寻找build议,反馈和更正。

/ uploads /目录 apache:666
(所以Apache和开发人员可以读/写,但不能执行?)

PHP文件不是-apache:665
(所以任何人都可以执行,但只有开发人员可以改变?)

.htaccess文件,也许JS和CSS? 不是的Apache:664
(apache只能读,devs可以改变吗?)

第一个将不起作用 – 你需要能够执行一个目录来打开它(这是unix目录下执行的目录)。
我build议添加不同的用户到相关的组(例如开发人员),然后给“任何人”没有权限或只读(所以设置最后一部分为0)。 如果您只有一个相关组,请将文件夹组更改为该组,并recursion设置权限以执行所需的操作。 或者,如果你在一个启用了acl的基于RedHat的发行版上,查看一下setfacl – 它允许你给用户/组提供文件/文件夹的特定权限。 以下两个例子:
setfacl -m user:john:rx someFile.php
setfacl -m user:michael:--- michael_mustnt_read.txt
setfacl -R -m group:devs:rwx scripts/ – 允许devs在这个目录下有完整的权限。
setfacl -d -R -m group:devs:rwx scripts/ – 与上述相同,但不对现有文件进行任何更改,默认情况下在新文件上设置权限。