6.6. 配置 SSSD 以应用 LDAP 访问过滤器
如果在 /etc/sssd/sssd.conf
中设置 access_provider
选项,SSSD 会使用指定的访问提供程序来评估哪些用户被授予系统访问权限。如果您正在使用的访问提供商是 LDAP 提供商类型的扩展,您也可以指定一个用户必须匹配的 LDAP 访问控制过滤器,以允许访问系统。
例如,当使用 Active Directory (AD) 服务器作为访问提供程序时,您可以将 Linux 系统的访问权限限制为指定的 AD 用户。与指定过滤器不匹配的所有其他用户的访问都被拒绝。
访问过滤器仅应用于 LDAP 用户条目。因此,在嵌套组上使用这种类型的访问控制可能无法正常工作。要在嵌套的组中应用访问控制,请参阅配置 simple
访问提供程序规则。
在使用脱机缓存时,SSSD 会检查用户最近的在线登录尝试是否成功。在最近一次在线登录期间成功登录的用户仍将能够脱机登录,即使他们与访问过滤器不匹配。
先决条件
-
root
访问权限
步骤
-
打开
/etc/sssd/sssd.conf
文件: 在
[domain]
部分中,指定访问控制过滤器。-
对于 LDAP,请使用
ldap_access_filter
选项。 对于 AD,请使用
ad_access_filter
选项。另外,您必须通过将ad_gpo_access_control
选项设置为禁用来禁用基于 GPO 的访问控制
。例 6.4. 允许访问特定 AD 用户
例如,要只允许对属于
admins
用户组且具有unixHomeDirectory
属性集的 AD 用户进行访问,请使用:[domain/your-AD-domain-name] access provider = ad [... file truncated ...] ad_access_filter = (&(memberOf=cn=admins,ou=groups,dc=example,dc=com)(unixHomeDirectory=*)) ad_gpo_access_control = disabled
-
对于 LDAP,请使用
SSSD 也可以根据条目中的 authorizedService
或 host
属性检查结果。实际上,可以根据用户条目和配置评估所有选项 MDASH LDAP 过滤器,authorizedService
和 host
MDASH。ldap_access_order
参数列出所有要使用的访问控制方法,按照应如何评估它们进行排序。
[domain/example.com] access_provider = ldap ldap_access_filter = memberOf=cn=allowedusers,ou=Groups,dc=example,dc=com ldap_access_order = filter, host, authorized_service
其他资源
-
系统中
sssd-ldap (5)
和sssd-ad (5)
手册页