我在 docker 容器中设置了一个 openldap 服务器(slapd),我刚刚获取了最新的 centos 镜像(标签:最新、centos7、7,此处为镜像
然后我安装了以下软件包:
- openldap-servers-2.4.44-5.el7.x86_64
- openldap-2.4.44-5.el7.x86_64
- openldap-clients-2.4.44-5.el7.x86_64
- openldap-devel-2.4.44-5.el7.x86_64
然后刚刚启动服务/usr/sbin/slapd -F /etc/openldap/slapd.d/
然后我尝试使用此 ldif 文件 (db.ldif) 将域和 root 用户添加到 ldap 配置
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=mydomain,dc=com
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=myadminuser,dc=mydomain,dc=com
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: {SSHA}blablablabla
然后当我跑ldapmodify -Y EXTERNAL -H ldapi:/// -f db.ldif
它给我带来了这个ldap_sasl_interactive_bind_s: Can't contact LDAP server (-1)
我看到端口是打开的,因为 telnet 可以连接到它并且实际上从另一台机器上进行 ldapsearch 工作ldapsearch -h $myserver -p $myport -x
并回应:
# extended LDIF
#
# LDAPv3
# base <> (default) with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# search result
search: 2
result: 32 No such object
# numResponses: 1
我真的不知道我错过了什么。