我不知道当前的Ubuntu软件包如何进行初始的OpenLDAP设置,但是在10.04和12.04这个过程对cn = config都没有很好的考虑.如果设置,您应该在/etc/ldap/slapd.d/cn=config/olc
Database={0}config.ldif中的属性olcRootPW中找到密码(它可能是base64编码的).
要更改密码,请使用ldapmodify作为root.将其另存为LDIF文件rootpw_cnconfig.ldif:
dn: olcDatabase={0}config,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: foobar123
注意:要在CentOS7上更改root密码,请使用dn:olcDatabase = {2} hdb,cn = config而不是dn:olcDatabase = {0} config,cn = config.
显然,将您的密码设置为foobar123以外的其他密码.然后运行ldapmodify:
$sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f rootpw_cnconfig.ldif
这假设可以使用ldapi协议(-H ldapi:///)访问LDAP服务器和cn = config数据库,并且启用并运行外部SASL身份验证(-Y EXTERNAL),默认情况下应该是新的Debian和Ubuntu中的OpenLDAP设置.如果你看/etc/ldap/slapd.d/cn=config/olcDatabase={0}config.ldif它应该包含一个属性olcAccess:
olcAccess: {0}to * by dn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth manage by * break