Ham*_*ner 4 openldap ldap centos
我们有一个有效的 LDAP 设置。但是,由于本地文件和 LDAP 中都存在一些用户名和组名,我们最近遇到了一个问题。具体来说,apache 用户和组都存在于:
/etc/passwd 和 /etc/group在最近的 yum 更新(CentOS 5)之后,进程的组 ID 似乎已从/etc/groupLDAP 中的值更改为值(而用户 ID 仍然是 中的 ID /etc/passwd)。由于 httpd 需要的一些文件由用户 root 拥有,组 apache (from /etc/group) 但不是全局可读的,这导致了问题。
请注意,我们已经nss_initgroups_ignoreusers apache,...在/etc/ldap.conf和中都有/etc/openldap/ldap.conf。此外,在/etc/nsswitch.conf我们有
passwd: files ldap
group: files ldap
shadow: files ldap
Run Code Online (Sandbox Code Playgroud)
和其余的正常点点滴滴。
因此,如果 LDAP 和本地文件中都存在名称,是否有办法确保本地文件中的 ID 优先于 LDAP 中的 ID?
我不知道您的示例中是否有错别字,但组数据库被称为group而不是groups.
您应该能够在成功查找后强制停止搜索,例如
passwd: files [SUCCESS=return] ldap
group: files [SUCCESS=return] ldap
Run Code Online (Sandbox Code Playgroud)
无论如何,以上应该是默认操作,因此您应该确认您正在寻找的内容确实在files.
注意 在使用 nsswitch.conf 的每个进程中,整个文件只读取一次;如果文件稍后更改,则该过程将继续使用旧配置。
| 归档时间: |
|
| 查看次数: |
2308 次 |
| 最近记录: |