谁可以更改 ACL 权限?

Jan*_*ček 6 linux acl permissions privileges

我正在使用 ACL 来控制对不同 Apache 实例和不同管理员组的 Web 根的访问。我有一个 Unix 组,admins-web22用于特定网站的管理员和apache-web22特定 apache 实例的用户。这些是在 web 根目录上设置的权限:

# file: web22
# owner: root
# group: root
user::rwx
user:apache-web22:r-x
group::rwx
group:webmaster:rwx
group:admins-web22:rwx
mask::rwx
other::---
default:user::rwx
default:user:apache-web22:r-x
default:group::rwx
default:group:admins-web22:rwx
default:mask::rwx
default:other::r-x
Run Code Online (Sandbox Code Playgroud)

有一个用户fred是 的成员admins-web22。该用户具有对该目录的完全读写访问权限(如上所述)。这工作正常。但是,该用户无法授予用户apache-web22对某些文件和目录的写权限,这一点很重要(例如,Web 管理员想要为 Drupal 设置上传目录)。该setfacl命令给出“不允许操作。”。

我的问题是,谁可以使用 授予权限setfacl,我怎样才能让组的用户自己admins-web22更改权限(为apache-web22)?

我正在运行 Debian Wheezy,如果它很重要,它是一个 ext4 分区。

Ste*_*itt 4

手册setfacl页解释了谁可以授予权限:

文件所有者和有能力的进程CAP_FOWNER被授予修改文件 ACL 的权限。这类似于访问文件模式所需的权限。(在当前的 Linux 系统上,root 是唯一具有此CAP_FOWNER功能的用户。)

因此fred只能用于setfacl他拥有的文件。根据您的具体安全要求,您可以允许 的成员作为(使用)admins-web22运行,这将允许他们更改...拥有的文件的 ACL。setfaclapache-web22sudoapache-web22