You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04搭建OpenLDAP后DIT中缺失rootDN的问题求助

Ubuntu 22.04搭建OpenLDAP后DIT中缺失rootDN的问题求助

我刚接触LDAP和目录服务,目标是从ICAO的公钥目录导入包含证书的LDIF文件,但在Ubuntu上搭建OpenLDAP时遇到了两个棘手的问题,想请教各位帮忙排查:

问题详情

  1. DIT中缺失rootDN
    按照官方指南完成OpenLDAP搭建后,我执行以下命令查询整个目录信息树(DIT):

    ldapsearch -x -LLL -H ldap:/// -b dc=example,dc=com dn
    

    结果只返回了根域条目:

    dn: dc=example,dc=com
    

    但预期应该还能看到管理员条目 dn: cn=admin,dc=example,dc=com,这明显不对。

  2. 无法导入LDIF文件
    因为rootDN的问题,我尝试导入LDIF文件时直接失败,执行命令:

    sudo ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f icaopkd.ldif -v
    

    得到报错:

    ldap_initialize( <DEFAULT> )
    Enter LDAP Password:
    ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
    

可能的排查方向

  • 检查OpenLDAP服务状态
    先确认slapd服务是否正常运行:

    sudo systemctl status slapd
    

    如果服务未启动,先启动并设置开机自启:

    sudo systemctl start slapd
    sudo systemctl enable slapd
    
  • 直接查看DIT数据库内容
    用slapcat命令可以直接读取OpenLDAP的数据库文件,不需要LDAP绑定,能看到完整的条目:

    sudo slapcat
    

    搜索输出内容里是否有cn=admin,dc=example,dc=com的条目,以此确认该条目是否真的不存在。

  • 检查LDAP监听配置
    确认slapd是否在监听TCP端口389:

    sudo netstat -tulpn | grep slapd
    

    如果没有看到监听记录,可能需要修改slapd的配置,确保它监听本地或指定IP的LDAP端口。

  • 排查防火墙限制
    Ubuntu默认的ufw防火墙可能阻止了LDAP端口,检查状态:

    sudo ufw status
    

    如果389端口未被允许,执行以下命令开放:

    sudo ufw allow ldap
    
  • 确认管理员DN的正确性
    有时候安装过程中管理员DN可能被设置为其他格式(比如uid=admin,dc=example,dc=com),可以通过重新配置slapd来确认:

    sudo dpkg-reconfigure slapd
    

    按提示重新设置根域、管理员DN和密码。

  • 指定LDAP服务器地址执行绑定
    尝试在ldapadd命令中明确指定服务器地址,避免默认地址的问题:

    sudo ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f icaopkd.ldif -v -H ldap://localhost
    

备注:内容来源于stack exchange,提问作者tzippy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 09:34:42