当我安装 OpenLDAP 时,我被要求为管理员用户创建密码,但现在我意识到还有另一个管理员用户cn=config
的密码我不知道。有谁知道我应该如何继续更改或获取该管理员密码?我正在安装全新的 Ubuntu 13.10。
我需要那个密码,因为我正在尝试设置 sudo-ldap。
当我安装 OpenLDAP 时,我被要求为管理员用户创建密码,但现在我意识到还有另一个管理员用户cn=config
的密码我不知道。有谁知道我应该如何继续更改或获取该管理员密码?我正在安装全新的 Ubuntu 13.10。
我需要那个密码,因为我正在尝试设置 sudo-ldap。
我不知道当前的 Ubuntu 软件包是如何进行初始 OpenLDAP 设置的,但在 10.04 和 12.04 中,该过程对 cn=config 的影响并不大。如果设置,您应该在属性
olcRootPW
中找到密码/etc/ldap/slapd.d/cn=config/olcDatabase={0}config.ldif
(它可能是 base64 编码的)。要更改密码,请
ldapmodify
以 root 身份使用。将此保存为 LDIF 文件rootpw_cnconfig.ldif
:注意:要更改 CentOS7 上的 root 密码,请
dn: olcDatabase={2}hdb,cn=config
使用dn: olcDatabase={0}config,cn=config
.显然将您的密码设置为
foobar123
. 然后运行ldapmodify
:这假定
cn=config
可以使用 ldapi 协议 (-H ldapi:///
) 访问 LDAP 服务器和数据库,并且外部 SASL 身份验证 (-Y EXTERNAL
) 已启用并正常工作,默认情况下它应该在 Debian 和 Ubuntu 中的新 OpenLDAP 设置中进行。如果你看/etc/ldap/slapd.d/cn=config/olcDatabase={0}config.ldif
它应该包含一个属性olcAccess
:如果您不知道如何更改默认情况下(在某些 openldap 分发中)
cn=config
具有的访问权限,这里是解决方法:access to * by * none
slapd