8

我到处寻找解决问题的方法,但仍然没有找到。我有这两个简单的文件,分别是 sladp.conf 和 mytree.ldif,当我尝试向 mytree.ldif 添加一些内容时,它一直要求我输入密码(我相信这是在 slapd.conf 中定义的 roopw),但它不起作用. 我真的需要帮助。

这些是我的文件:

slapd.conf

database dbd
suffix "dc=ers,dc=uminho,dc=pt"
rootdn "cn=Manager,dc=ers,dc=uminho,dc=pt"
rootpw ersadmin
directory /usr/local/var/openldap-data

我的树.ldif

dn: dc=ers, dc=uminho, dc=pt
objectclass: dcObject
objectclass: organization
o: ERS
dc: ers

dn: cn=Manager,dc=ers,dc=uminho,dc=pt
objectclass: organizationalRole
cn: Manager

这就是我正在尝试做的事情和我的回应:

sudo ldapadd -x -D "cn=Manager,dc=ers,dc=uminho,dc=pt" -W -f /etc/ldap/mytree.ldif
Enter LDAP Password:
ldap_bind: Invalid credentials (49)

我已经尝试使用加密密码

slappasswd -h {SHA} -s ersadmin

并更改我的 slapd.conf 文件

password-hash   {SHA}
rootpw  {SHA}pLEBIPx4rW3eebpwACBGAZkNH4CVBRGW

但它没有用。提前致谢。

4

3 回答 3

13

这个问题可能更适合http://serverfault.com

看来您的问题出在绑定(身份验证)阶段,因此您应该ldapsearch在尝试修改数据库之前对其进行测试并使其正常工作。尝试:

ldapsearch -x -D cn=Manager,dc=ers,dc=uminho,dc=pt -w ersadmin

假设这会给您同样的错误,请检查您的 OpenLDAP 日志文件(默认情况下它会记录到 syslog,尽管这取决于系统)。查看连接是否甚至到达服务器并查看它为什么拒绝它。如果日志文件没有为您提供足够的信息,请在slapd.conf (trace/acl) 中启用更多调试日志记录。

如果它甚至没有看到连接,您可能正在对其他服务器进行身份验证,这通常在${prefix}/etc/ldap.conf.

还要确保您的slapd实际上使用的是您的slapd.conf而不是另一个配置源(它可能在不同的位置使用slapd.dslapd.conf)。

除了日志文件,还请始终指定您使用的 OpenLDAP 版本,因为 2.3 和 2.4 之间(甚至在次要版本之间)存在巨大差异。

于 2011-06-08T12:31:03.610 回答
2

我已经多次遇到这个问题,这里的解决方案检查 slapd.conf 中的 rootpw 您输入的内容如下所示,这意味着空间将偶然添加

只需复制以下内容并重新启动 ldap 服务

database        bdb
suffix          "dc=ldaptest,dc=com"
rootdn          "cn=Manager,dc=ldaptest,dc=com"
rootpw          {SSHA}Bnrl4t23XQxT3uzlC9AxO+hm6DNpps`Hello`

以上在我的情况下根据您的情况更改您的专有名称,一旦解决,请让我知道

于 2013-09-12T09:53:54.777 回答
0

对我来说,它是这样工作的

slappasswd -h {SHA} -s ersadmin

并更改我的slapd.conf文件(旧加密)

rootpw  {SHA}pLEBIPx4rW3eebpwACBGAZkNH4CVBRGW
于 2016-11-30T05:14:20.340 回答