我正在尝试使用 Ubuntu 14.04 在 LAMP 上设置一个 Web 文件夹,其中:
- Apache/PHP 可以读取里面的所有内容。(接收对于文件夹和r--对于文件)
- “devs”组中的多个用户可以在内部执行任何操作。(读写对于文件夹和rw-对于文件)
- 新创建的文件夹和文件具有与上述相同的属性。
我知道这这个答案一开始看上去很不错,直到我尝试从网络访问时出现 403 权限被拒绝的情况。
我是否应该只使用一个可以修改 Web 文件夹的“dev”用户?
我也可以使用 ACL?
编辑 :不是重复的https://serverfault.com/a/357109/354883因为它不能解决新创建的文件的问题。
我的解决方案:由于我在标准权限系统上没有找到任何可以完全满足我要求的东西,所以我检查了 ACL。
我做了什么:
sudo apt-get install acl
你可能还想挂载你的分区以便启用 ACLsudo setfacl -Rm g:coders:rwx,g:www-data:r-x,o:--- webfolder
sudo setfacl -Rm d:g:coders:rwx,d:g:www-data:r-x,d:o:--- webfolder
答案1
对于 Apache 和“dev”组的用户,有权限做任何事你应该:
包括属于组“dev”www-data 组的用户,并在组“dev”中添加 www-data 用户
更改 umask 默认 Apache 和组“dev”的用户
添加或编辑 /etc/apache2/envvars
umask 002
/etc/init.d/apache2 restart
添加或编辑 ~/.bashrc 您的用户(或增强它)
umask 002
chmod 775 -R webfolder
笔记:请注意,这样所有属于“dev”的用户都将有权修改所有用户“dev”创建的文件。这对您的结构来说可能是危险的