最近在redhat enterprise linux 6.0上配置openldap服务器时总是在提示一个错误:

ldapwhoami或者ldapsearch是出现sasl绑定错误


ldap_sasl_interactive_bind_s: Invalid credentials (49)
       additional info: SASL(-13): user not found: no secret in database


网络上针对ldap服务器的49错误解决方法有很多,我这里就自己的经验总结下:


1。默认的openLDAP是基于 sasl 的绑定,需要先创建sasl用户及其密码
[root@mail html]# saslpasswd2 -c UserName
输入两次密码,密码保存在/etc/sasldb2,可以用 sasldblistusers2 命令查看用户名称
在ldapsearch等命令中使用 -U UserName -W参数,然后输入上面的密码就行


2。查看修改/etc/openldap/slapd.conf
rootpw     123456  注:行首不能有空格,属性于值间隔用tab键隔开


3。mv /etc/openldap/slapd.d /etc/openldap/slapd.bak 

//将这个文件夹改为其它名字,在redhat enterprise linux 6.4中需要这么做,其他版本未知


4。chmod 644 /etc/openldap/dlapd.conf ,如果不行设为777再试下