什么时候需要 ldapi:// -Y EXTERNAL?显然, cosine.ldif 没有它就会中断

mel*_*low 7 openldap

我是 OpenLDAP(但不是 Microsoft Active Directory)的新手,正在阅读 zytrax 的 openldap 指南。我在 CentOS 7.4 上使用 OpenLDAP 2.4.44,如下所示:

@(#) $OpenLDAP: slapd 2.4.44 (Aug  4 2017 14:23:27) $
    mockbuild@c1bm.rdu2.centos.org:/builddir/build/BUILD/openldap-2.4.44/openldap-2.4.44/servers/slapd
Run Code Online (Sandbox Code Playgroud)

我想添加余弦(以及后来的 inetorgperson)模式,但这失败了:

ldapadd -f /etc/openldap/schema/cosine.ldif
ldap_sasl_interactive_bind_s: No such attribute (16)
Run Code Online (Sandbox Code Playgroud)

而这有效:

ldapadd -H ldapi:/// -Y EXTERNAL -f /etc/openldap/schema/cosine.ldif
Run Code Online (Sandbox Code Playgroud)

任何人都可以解释为什么?显然,ldapi:// -Y EXTERNAL 似乎表示 SASL,但我还没有找到 zytrax 对为什么/何时在 OLC 中使用 ldapi:// 而不是 ldapadd 命令的解释。

Paw*_*zuk 9

ldapadd -H ldapi:/// -Y EXTERNAL ...当您要修改时使用cn=config- LDAP 配置本身。LDAP 架构是cn=config.

  • -H ldapi:///- 使用 UNIX 域套接字 ( /var/run/ldapi)
  • -Y EXTERNAL - 对 SASL 使用 EXTERNAL 机制

我不是 SASL 机制的专家,但在这种情况下,如果用户的 UID 和 GID 等于 0 - 是根用户,则身份验证将成功。