Web 服务器和权限 - 两个用户有权修改特定(但不是全部)文件

Web 服务器和权限 - 两个用户有权修改特定(但不是全部)文件

因此,典型的情况是这样的:web 服务器(在本例中是 nginx)在 www-data 用户下工作。

然后还有“konrad”用户,他只是一个普通用户。

现在,整个网站(/var/www/html/cool-site)的所有者为:konrad,组为:www-data。

文件大多为 750。

这很好(我想)。但是……现在我遇到了另一种情况,另一个用户进来了。我们叫他“mike”。现在,我想要实现的是,他希望能够修改我拥有的文件,而我希望能够修改他拥有的文件。

或者更好的是 - 我作为管理员,想决定每个目录(?)、文件(?)只(康拉德)或者只有他(迈克)或者我们俩都可以做出改变。

显然,我们都应该有权查看文件和浏览目录。

我当时的想法是:再创建另一个组,比如“common”。将“www-data”用户添加到此组。将我们俩(konrad 和 mike)添加到此组。每当我(或 mike)决定我们俩都应该对该目录/文件具有写权限时,我们都会将其 chown 到此组,并且权限将允许在那里写入。然后我意识到在这种情况下,www-data 将具有对这些目录/文件的写权限。

所以我被困住了。我相信有解决办法,但我什么也想不出来 :)

答案1

按照您的建议,创建另一个组,但不要添加www-data到该组。

保留所有权限,然后添加扩展权限对于您想要按common组修改的文件/目录:

setfacl -m g:common:rw filename ...

您可以在 中阅读更多内容man setfacl

相关内容