问题:在文件夹或文件上使用ACL时,CentOS似乎没有考虑辅助组
场景: CentOS 6基本安装,使用LDAP帐户来validation用户。 我正在尝试在某些文件夹上设置相当复杂的权限。 我已经确保文件系统通过ACL支持进行挂载,并确定LDAP用户能够正确login。
重现步骤:作为testing,我有一个简单的文件夹结构。 文件夹test1由root拥有,拥有770个权限,我已经将另一个组添加到该文件夹setfacl -mg:testgroup:rwx test1/文件夹的getfacl输出如下所示:
getfacl: Removing leading '/' from absolute path names # file: share/test1/ # owner: root # group: root user::rwx group::rwx group:testgroup:rwx mask::rwx other::---
用户andrew属于域组和testing组,如groups andrew所示。 组域是用户主组。 如果用户安德鲁尝试读取位于test1中的任何内容,则会显示权限被拒绝的错误。 但是,如果用户主要组更改为testing组,则用户可以与该文件夹的内容进行交互。
有人可以告诉我这里发生了什么,如果有办法获得预期的行为?
编辑这似乎是与LDAP有关的问题。 我只是testing使用本地用户帐户,一切都按预期工作。
正如你所说的,这个问题涉及到LDAP用户信息的使用。 您的Centos6机器configuration的方式与LDAP服务器不兼容,所以当它尝试获取用户所属的补充组列表时,找不到任何内容。
不幸的是,如何解释与POSIX组相关的LDAP属性有几个标准 – rfc2307,rfc2307bis,IPA
Centos 6使用SSSD来pipe理与远程目录和authentication数据库的交互。 SSSD的默认设置是使用rfc2307。
您可能会发现您的LDAP服务器正在使用rfc2307bis。 我们有一个Centos 5目录服务器,它是rfc2307bis默认configuration的。 作为一个进一步的复杂,我们的C5目录是使用属性“uniqueMember”,而不是“成员”组成员。
要修复它,编辑/etc/sssd/sssd.conf并添加以下行:
ldap_schema = rfc2307bis ldap_group_member = uniqueMember
您也可以参考以下内容:
您是否尝试过查看用户所属的两个组的数字 ID以及目录的ACL? 尝试getfacl -n test1并将列出的组与id -G andrew的输出进行比较。 看看有没有差异,并尝试解决它。