Ubuntu连接Active Directory LDAP失败:绑定均报错求助
问题:Ubuntu无法连接Windows Active Directory(LDAP验证失败)
我正在Active Directory环境旁配置Request Tracker工单系统,但遇到Ubuntu服务器无法连接Windows AD的问题。已关闭AD端防火墙,服务器与AD处于同一网段且网络可达,匿名和带凭证的ldapsearch命令均失败。
测试命令及报错
匿名连接测试
执行命令:
ldapsearch -x -H ldap://"IP_ActiveDirectory" -b "dc=xxxx,dc=com"
返回报错:
In order to perform this operation a successful bind must be completed.... data 0, v4563
带凭证连接测试
执行命令:
ldapsearch -x -b "dc=xxxx,dc=com" -H "ldap://IP_ActiveDirectory" -D "CN=admin,DC=xxxxx,DC=com" -W
返回报错:
Invalid credentials (49) .... data 52e, v4563
已排查项
- 确认AD管理员凭证正确
- 服务器与AD处于同一网段,网络连通性正常
- 尝试使用AD域名代替IP地址,问题依旧
求问需要调整AD或Ubuntu的哪些配置才能解决连接问题?
解决建议
针对匿名绑定失败的问题
AD默认禁用匿名LDAP绑定,这是安全默认配置。若确实需要匿名访问,需在AD中修改组策略:
- 打开AD域控制器的组策略管理,找到默认域控制器策略
- 编辑策略路径:
计算机配置 > 管理模板 > 系统 > LDAP客户端 > 允许匿名LDAP查询,设置为已启用 - 执行
gpupdate /force刷新组策略
但不建议开启匿名绑定,优先使用带凭证的绑定方式。
针对凭证错误(52e)的问题
错误代码52e表示AD无法验证提供的用户名/密码,即使确认凭证正确,可从以下方向排查:
绑定DN格式错误
- 尝试使用UPN格式代替DN,比如
admin@xxxx.com,调整命令为:ldapsearch -x -b "dc=xxxx,dc=com" -H ldap://IP_ActiveDirectory -D "admin@xxxx.com" -W - 若必须使用DN,确认账号完整路径,比如管理员账号通常在
CN=Users容器下,完整DN应为CN=admin,CN=Users,DC=xxxx,DC=com
- 尝试使用UPN格式代替DN,比如
Ubuntu端LDAP客户端配置问题
- 安装必要工具:
sudo apt install ldap-utils libnss-ldap libpam-ldap - 配置LDAP客户端时,确保基础DN设为
dc=xxxx,dc=com,服务器地址填写AD的IP或域名,绑定DN格式正确 - 重启nscd服务生效:
sudo systemctl restart nscd
- 安装必要工具:
AD账号权限或状态问题
- 确认该管理员账号未被锁定、未过期
- 检查账号是否拥有LDAP查询权限(默认管理员账号具备该权限,可在AD用户属性的安全选项中确认)
- 换用其他AD管理员账号测试连接
LDAP协议版本或加密设置
- AD可能要求使用LDAPS(LDAP over SSL),改用
ldaps://IP_ActiveDirectory:636测试:ldapsearch -x -b "dc=xxxx,dc=com" -H ldaps://IP_ActiveDirectory:636 -D "admin@xxxx.com" -W -Z - 若使用LDAPS,需将AD的CA证书导入Ubuntu信任存储:
- 从AD服务器导出CA证书(.cer格式)
- 复制证书到Ubuntu的
/usr/local/share/ca-certificates/目录 - 执行
sudo update-ca-certificates更新证书库
- AD可能要求使用LDAPS(LDAP over SSL),改用
DNS解析问题
- 确保Ubuntu的DNS服务器指向AD域控制器,或能正确解析AD域名
- 测试解析:
nslookup xxxx.com,确认返回AD的IP地址
内容的提问来源于stack exchange,提问作者RCPAN98
相关产品推荐
相关产品推荐

