我在测试环境中运行一个 OpenLDAP 服务器,该服务器在 LAN 上有一个防火墙,将端口 8636 转发回 slapd,并在 636 上进行监听(对于不支持 START_TLS 的旧应用程序)。
为了测试,我通过在命令行中指定来启动 LAN -p 8636
。由于某种原因,这失败了,所以我继续在 LDAP 服务器本身上尝试了相同的命令。我得到了同样的错误:
ldap1# ldapsearch -x -H ldaps://ldap1 -p 8636
ldapsearch: -H incompatible with -p
啊?这怎么会是个问题呢?如果我不指定端口号,那么一切都正常:
ldap1# ldapsearch -x -H ldaps://ldap1
# extended LDIF
#
# LDAPv3
...
还有其他方法可以告诉ldapsearch
在不同端口上使用 SSL 吗,或者我是否遗漏了语法中的某些内容?
根据答案更新
ldap1# ldapsearch -x -H ldaps://ldap1:636
# extended LDIF
#
# LDAPv3
...
答案1
ldapsearch: -H incompatible with -p
嗯?这有什么问题?
您可以使用已弃用的-h
和-p
分别设置主机名和非默认端口号,
或者使用-H
适当的RFC 2255指定 URL<scheme>://<hostname>[:portnumber]
设置非标准端口例如ldaps://ldap1:8636