完全Linux文件夹分离

完全Linux文件夹分离

各位 Linux 用户大家好。我正在运行 Debian 11。我正在运行具有多个站点的 nginx Web 服务器。每个站点的根目录都由特定用户拥有。我的目标是完全使一个用户的网络文件对另一个用户不可见user1拥有/var/www/site1user2拥有/var/www/site2。可以user1看到该文件夹site2​​存在,但我不希望他能够访问ls该目录或访问其中的任何文件。我希望其他用户的目录完全不透明。

我首先将目录的权限更改为750,但 Web 服务器用户www-data无法访问文件夹的内容。然后我设置了 ACL 以允许www-data读取访问。

我的(疯狂的)有效步骤:

chown -R user1: .
find . -type f -exec chmod 640 {} +
find . -type d -exec chmod 2750 {} +
setfacl -Rdm u::rwx,g::rx,o::0,u:www-data:rx .   # this didn't set up ACLs for individual files, hence the next line
find . -type f -exec setfacl -m u::rw,g::r,o::0,u:www-data:r {} +

问题:是否有更简单的方法来允许网络服务器访问文件夹的内容,同时限制其他用户?或者有比我采取的更简单的步骤吗?

(注意:我尝试将用户添加www-datauser1组中,反之亦然。即使该组具有读取权限并且 nginx 正在运行user www-data www-data;,nginx 仍然无法访问该文件夹的内容...)

相关内容