ldap 正在运行,但 ldaps 不正确

ldap 正在运行,但 ldaps 不正确

我对 ldapsearch 有点迷茫...我必须配置一个带有 AD 身份验证的云。

效果很好

 ldapsearch -h server -p 389 -x -D 'admin.test' -w 'xxx' -b 'cn=admin.test,cn=users,dc=domain,dc=com'

但我想确保一些安全性,因此我尝试了 ldaps。

这是有效的:

> ldapsearch -H ldaps://server -x -D 'admin.test' -w 'xxx' -b 'cn=admin.test,cn=users,dc=domain,dc=com'

还有这个:

> ldapsearch -H ldaps://server:636 -x -D 'admin.test' -w 'xxx' -b 'cn=admin.test,cn=users,dc=domain,dc=com'

但这不起作用。

ldapsearch -h server -p 636 -x -D 'admin.test' -w 'xxx' -b 'cn=admin.test,cn=users,dc=domain,dc=com' -v
ldap_initialize( ldap://srv-dc01.get.com:636 )
ldap_result: Can't contact LDAP server (-1)

我不知道发生了什么。云需要 URL 而不是 URI。 另一个问题是,是否可以阻止 ldap 并让 ldaps 工作?

操作系统:带有 selinux Enforced DC 的 Linux CentOS 7 位于服务器 2008 R2 上。

非常感谢。问候,亚历山大

答案1

更新:

这一页看起来

完全合格的域名是总是需要使用 -h 选项。这可以防止中间人攻击。

然后:

尽管支持使用 ldaps 协议,但是它已被弃用。

更多内容来自man ldapsearch

-H:指定运行 ldap 服务器的备用主机。已弃用,改用 -H

要仅允许安全连接,请查看这里或者另一个简单的解决方案是使用 iptable 规则:

iptables -A OUTPUT -p tcp --dport 389 -j DROP
iptables -A INPUT  -p tcp --destination-port 389  -j DROP

答案2

谢谢,我尝试了 -Z 和 -ZZ。

 ldapsearch -h server -p 636 -x -D 'admin.test' -w 'xxx' -b cn=admin.test,cn=users,dc=domain,dc=com' -v -Z
ldap_initialize( ldap://server.domain.com:636 )
ldap_start_tls: Can't contact LDAP server (-1)
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)

使用 -ZZ 时,如果没有 ldap_sasl_bind(SIMPLE),则会出现相同的错误消息:无法联系 LDAP 服务器 (-1)

你说得对,这个命令并没有启动好的协议。有没有办法强制执行?

相关内容