你如何在 openldap 2.4 上设置管理员密码

And*_*der 3 linux openldap

我开始使用 openLdap 2.4 并且遇到了一些麻烦,我看到的所有示例似乎都参考了使用文本配置文件 slapd.conf 的以前的版本,但是从我在有关 v2.4 的讨论中看到的,这是已弃用。

我以为我需要添加一个用户,并以他们的身份登录> 但是当我尝试运行 ldapadd 命令时,我收到输入密码的提示:

Enter LDAP Password: 
ldap_bind: Invalid credentials (49)
Run Code Online (Sandbox Code Playgroud)

注意:我通过 yum(在 Fedora 15 中)安装了 openldap 服务器,并且已经安装了 phpldapadmin 但如果有人有建议,也可以在命令行上尝试。

安装并启动后,我从搜索中得到以下响应:

# ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
# extended LDIF
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: namingContexts 
dn:
namingContexts: dc=my-domain,dc=com    
# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1
Run Code Online (Sandbox Code Playgroud)

如果有帮助,我很高兴删除并重新安装服务器,任何人都可以提供适用于 2.4 版的提示链接以进行新设置吗?

CVV*_*VVS 5

这是旧的,但问题和非答案会在搜索中弹出很多。首先,运行 slappasswd 生成密码。

slappasswd 
New password: ************
Re-enter new password: *************
{SSHA}OM5mbC3/kQPAg8MH6FOqXkATjLjt2IZ2
Run Code Online (Sandbox Code Playgroud)

然后使用该值填充后端的配置。

ldapmodify -Q -Y EXTERNAL -H ldapi:/// << E0F
dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}qUoTRPwppaedqHQTgYOPYWokr3SiXjbK
E0F
Run Code Online (Sandbox Code Playgroud)

您的 dn 可能与此处显示的 dn 不同。配置数据库位于 RHEL7 上的 /etc/openldap/slapd.d/cn=config 中。现在您可以使用默认的 rootdn 登录。

如果您愿意,您可以为根 dn 设置自己的值:

ldapmodify -Q -Y EXTERNAL -H ldapi:/// << E0F
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=manager,dc=example,dc=com
E0F
Run Code Online (Sandbox Code Playgroud)

  • 有没有更干净的方法来做到这一点? (2认同)

use*_*421 0

slapd.conf 在 OpenLDAP 2.4 中仍然有效,但是在文档中可能“不再强调”它。