ldapsearch - 需要强(更强)身份验证 - 需要传输加密

ldapsearch - 需要强(更强)身份验证 - 需要传输加密

我尝试使用 搜索我公司的广告ldapsearch。但是我总是收到以下错误:

ldap_bind: Strong(er) authentication required (8)
        additional info: BindSimple: Transport encryption required.

我尝试了所有可能的组合来使用 LDAPS,但似乎无法通过除默认端口上的 LDAP 之外的任何其他方式连接到服务器。
奇怪的是,我使用 Active Directory Explorer 时没有遇到任何问题。

我认为可能是防火墙配置不正确并阻止了 LDAPS(636)端口,但这并不能解释 Active Directory Explorer 的工作原理......

GitLab 似乎也能很好地连接到它。只是它不会进行身份验证。但这ldapsearch也是我尝试调试的原因。

这就是我正在使用的命令:

ldapsearch -D "cn=myuser,cn=Users,dc=company,dc=local" -w "<password>" \
    -p 389 -h 10.128.1.254 \
    -b "cn=Users,dc=company,dc=local"

服务器是正确的,bind_dn(根据 Active Directory Explorer)和相应的密码也是正确的,我尝试使用大写和小写来表示,我尝试了使用 LDAPS(如,,)和标志cn的所有可能配置,所以我真的没有主意了。-H ldaps://10.128.1.254-H ldaps://10.128.1.254:389-H ldaps://10.128.1.254:636-x

如果相关的话,AD 服务器就是 Synology/DSM 上的 Active Directory 服务器,它是底层的 Linux SAMBA 服务器。

非常感谢您的帮助。


更新:

看起来添加-Y NTLM可以让我走得更远。

现在我得到:

SASL/NTLM authentication started
ldap_sasl_interactive_bind_s: Invalid credentials (49)
        additional info: SASL:[NTLM]: NT_STATUS_OBJECT_NAME_NOT_FOUND

这很奇怪,因为我知道密码是正确的。


更新2:

现在使用-Y GSSAPI会产生这个什么都没有的错误:

SASL/GSSAPI authentication started
ldap_sasl_interactive_bind_s: Local error (-2)
        additional info: SASL(-1): generic failure: GSSAPI Error: Unspecified GSS failure.  Minor code may provide more information (No Kerberos credentials available (default cache: FILE:/tmp/krb5cc_0))

更新 3:

参数-ZZ-Ztoo)以这个错误结尾:

ldap_start_tls: Connect error (-11)
        additional info: The TLS connection was non-properly terminated.

答案1

您确定在 Active Directory 部署中配置了 TLS 吗?默认情况下不是。

无论如何使用 LDAPS(默认端口 636):

ldapsearch -H ldaps://10.128.1.254

使用 LDAP 并强制 StartTLS 扩展操作成功(默认端口 389):

ldapsearch -H ldap://10.128.1.254 -ZZ

请注意,OpenLDAP 的客户端工具会执行严格的 TLS 主机名检查。因此,服务器证书必须包含证书的 subjectAltName 或 CN 属性中与 -H 一起使用的 DNS 名称或 IP 地址。

如果您想要将 SASL 与 GSSAPI/Kerberos 一起使用,则必须先获取 Kerberos 票证授予票证kinit

答案2

如果你使用 SAMBA 作为 AD,你必须添加

ldap server require strong auth = no

在 smb.conf 中全局尝试

ldapsearch -D "cn=myuser,cn=Users,dc=company,dc=local" -x -w "<password>" \
     -h 10.128.1.254 -b "cn=Users,dc=company,dc=local"

相关内容