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

OpenLDAP配置ACL遇错及ldapsearch连接失败求助

OpenLDAP ACL配置问题解决

问题1:ldapsearch无法访问cn=config目录

你用ldap://mynewdomain.com访问cn=config失败,是因为默认OpenLDAP的cn=config(配置目录)仅允许通过本地套接字ldapi:///访问,且仅允许本地root用户通过SASL EXTERNAL认证访问。正确的查询命令为:

sudo ldapsearch -Y EXTERNAL -H ldapi:/// -LLL -b cn=config "(objectClass=olcDatabaseConfig)"

执行后会列出所有数据库配置条目,找到你的目标数据库DN(比如olcDatabase={1}mdb,cn=config)。

问题2:ldapmodify报错“no global superior knowledge”

这个错误是因为你在DN行里保留了注释内容,服务器无法识别带注释的DN。解决步骤:

  1. 用上面的查询命令确认你的数据库DN(比如olcDatabase={1}mdb,cn=config,注意{X}是实际数字,比如{1}或{0})
  2. 执行修改命令时,必须删除DN行的注释,示例命令如下(替换{1}为你的实际数字):
sudo ldapmodify -Y EXTERNAL -H ldapi:/// <<EOF
dn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to dn.base="" by * read
olcAccess: {1}to attrs=userPassword,shadowLastChange by self write
olcAccess: {2}to * by dn="cn=admin,dc=mynewdomain,dc=com" write by * read
EOF

ACL编写要点

  • 语法规则:olcAccess: {N}to <目标> by <主体> <权限>
    • {N}:规则优先级,数字越小越先匹配
    • <目标>:dn.base=""匹配根目录,*匹配所有条目,attrs=userPassword匹配指定属性
    • <主体>:*所有用户,self条目自身,dn="cn=admin,dc=mynewdomain,dc=com"指定管理员
    • <权限>:read读取,write写入,search搜索,none无权限
  • 修改后验证ACL:
sudo ldapsearch -Y EXTERNAL -H ldapi:/// -b cn=config olcDatabase={1}mdb olcAccess

内容的提问来源于stack exchange,提问作者Farziddin Doniyorov

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 03:42:46