linux – 在/ var / www中处理Apache 2用户www-data权限的最佳方法是什么?

前端之家收集整理的这篇文章主要介绍了linux – 在/ var / www中处理Apache 2用户www-data权限的最佳方法是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有人有一个很好的解决方案来处理/ var / www中的文件?我们正在运行基于名称的虚拟主机,Apache 2用户是www-data.

我们有两个普通用户&根.所以当搞乱/ var / www中的文件时,而不是……

chown -R www-data:www-data

……一直以来,处理这个问题的好方法是什么?

补充问题:你是如何获得权限的硬核?

这一直是协作开发环境中的一个问题.

解决方法

尝试扩展@ Zoredache的 answer,我自己给出了一个:

>创建一个新组(www-pub)并将用户添加到该组

groupadd www-pub

usermod -a -G www-pub usera ##必须使用-a附加到现有组

usermod -a -G www-pub userb

groups usera ##显示用户
>将/ var / www下所有内容的所有权更改为root:www-pub

chown -R root:www-pub / var / www ## -R for recursive
>将所有文件夹的权限更改为2775

chmod 2775 / var / www ## 2 =设置组ID,7 = rwx为所有者(root),7 = rwx为组(www-pub),5 = rx为world(包括apache www-data用户)

设置组ID(SETGID)位(2)会将组(www-pub)复制到该文件夹​​中创建的所有新文件/文件夹.其他选项是SETUID(4)来复制用户ID,而STICKY(1)我认为只允许所有者删除文件.

有一个-R递归选项,但不会区分文件文件夹,所以你必须use find,如下所示:

find / var / www -type d -exec chmod 2775 {}
>将所有文件更改为0664

find / var / www -type f -exec chmod 0664 {}
>将用户的umask更改为0002

其他umask控制默认文件创建权限,0002意味着文件将有664和目录775.设置此项(通过编辑/ etc / profile底部的umask行),意味着一个用户创建的文件可由其他用户写入www-group中的用户无需chmod他们.

通过创建文件和目录并使用ls -l验证所有者,组和权限来测试所有这些.

注意:您需要注销/以更改组才能生效!

原文链接:https://www.f2er.com/linux/402918.html

猜你在找的Linux相关文章