LDAP服务器突然失效,应用登录报错、程序连不上目录服务,第一反应大多是服务宕机。但提示服务不可用背后原因很多,有可能人为停止服务,有可能启动类型改成禁用,防火墙拦截端口,或是证书过期导致服务启动失败。分不清故障类型,排查会绕不少弯路。
第一步先判断故障类别,查看服务状态。Windows打开services.msc,找到AD LDS实例服务,名称一般ADAM_<实例名>,查看状态Running、Stopped还是Disabled。Linux执行systemctl status slapd,显示Loaded: disabled代表服务禁用,开机不会自动启动;状态failed代表启动阶段报错,和单纯禁用不是一回事。

场景一:AD LDS实例服务停止或者禁用
AD LDS属于实例化服务,Windows安装Active Directory Lightweight Directory Services功能,不等于实例正常运行。部分安全配置操作之后,AD LDS实例服务启动类型被修改为禁用,应用立刻无法连接。不要直接改成自动启动,先确认修改来源。如果是组策略强制控制,手动修改服务项,策略刷新之后配置会被覆盖。
排查执行gpresult /h C:Tempgpresult.html,查看计算机配置系统服务项,确认是否有组策略锁定AD LDS服务启动模式。确定是组策略造成,到组策略管理修改对应规则,不要只在本地服务管理器临时调整。组策略无限制,手动修改启动类型为自动,启动服务验证运行状态。
还有一类棘手故障,AD LDS启动报错0xc0000025,事件日志错误ID1168。诱因一般是ADSI Edit手动修改msDS-Behavior-Version属性至7,想提升功能级别到WIN2016,但没有安装2025年2月或更新汇总补丁。安装对应补丁,服务即可正常启动。
场景二:组策略强制LDAP签名,连接被拒绝
客户端访问LDAP提示服务器不可用、连接被拒绝,但服务正常运行,端口可以连通。重点排查LDAP签名策略。
Windows域控制器注册表项HKLMSYSTEMCurrentControlSetServicesNTDSParameters内LDAPServerIntegrity,数值2代表强制签名,数值1不强制。数值设为2,客户端应用pfSense、Squid这类不支持LDAP签名程序,连接直接失败。本地策略该项灰色不可修改,可以通过组策略管理编辑器调整默认域控制器策略。
修改注册表只能临时生效,策略刷新会覆盖配置。根本解决方式进入组策略管理,找到默认域控制器策略,域控制器:LDAP服务器签名要求设置为无,强制刷新策略。
场景三:OpenLDAP的slapd启动失败
Linux环境OpenLDAP服务启动失败,systemctl status slapd返回failed,日志输出具体报错。最常见问题TLS初始化失败,日志提示main: TLS init def ctx failed: -1,slapd进程直接退出,大多是证书过期。查看/etc/openldap/certs目录证书文件,执行openssl x509 -enddate -noout -in 证书文件查看有效期。证书过期重新签发或者续期,重启slapd。
另一高频故障是配置目录权限。OpenLDAP 2.4之后使用cn=config动态配置,/etc/openldap/slapd.d目录属主必须为ldap:ldap,权限错误slapd读取配置失败无法启动。执行chown -R ldap:ldap /etc/openldap/slapd.d修复权限,重启服务。
服务状态显示disabled,需要开机自启,执行systemctl enable slapd。优先验证服务能否正常启动,systemctl start slapd确认无报错,再配置开机自启,不然开机依旧启动失败。
场景四:端口通畅性问题,服务运行但无法连接
服务状态正常,客户端telnet测试389端口超时。检查服务器本地防火墙,iptables或者firewalld放行389、636端口。云服务器额外核对安全组,云平台默认通常只开放22、80端口,389和636默认关闭。
服务器部署在NAT环境,客户端域名解析得到内网IP,同样无法连接。nslookup核查域名解析IP,确认是服务器对外公网地址。
还有隐蔽情况,LDAP服务仅绑定127.0.0.1地址,外部请求无法接入。执行netstat -tulnp | grep slapd查看监听地址,如果显示127.0.0.1:389而非0.0.0.0:389,修改配置文件监听地址改为0.0.0.0或者服务器真实IP。
不管哪类故障,排查顺序参考如下
第一步确认服务状态,区分停止、禁用或是启动报错。服务运行但无法连接,检查端口、防火墙。端口正常却认证失败,核查签名策略、账号绑定凭证。启动报错,查看系统日志定位根源,证书过期、配置目录权限是两大常见故障点。
修复之后不要直接收尾。组策略造成的禁用,修改策略执行gpupdate /force刷新,重启服务验证。证书问题,续期之后检查自动续期定时任务,避免几个月后故障复发。人为关停服务,查看操作日志确认操作人和变更原因,防止同类问题再次出现。