我需要确保我的LDAP服务器,我不太确定最好的方法去做。 我正在运行Debian“Lenny”,并使用OpenLDAP(slapd)。
我注意到,如果我运行:
ldapsearch -x -W -b 'dc=example,dc=com' -H 'ldap://127.0.0.1:389/' 'objectclass=*'
当它提示input密码时,只需按ENTER键,即可获得目录条目列表。 匿名访问是不可接受的,如果我打开这个互联网,但不能find一种方法来禁用匿名访问。
我已经尝试修改/etc/ldap/slapd.conf到以下内容:
进入 *
由dn =“cn = admin,dc = example,dc = com”写入
由*无
…但这并不能解决问题。
在此之后,我会通过TLS运行它,但是仍然允许匿名访问,但是这样做毫无意义。
有任何想法吗?
要完全禁用匿名绑定,请将此行添加到slapd.conf中:
disallow bind_anon
并重新启动slapd服务。
如果接受的答案不适合你(在Ubuntu上不适用于我),请尝试以下操作。
创buildldiff文件:
nano /usr/share/slapd/ldap_disable_bind_anon.ldif
粘贴在这里:
dn: cn=config changetype: modify add: olcDisallows olcDisallows: bind_anon dn: cn=config changetype: modify add: olcRequires olcRequires: authc dn: olcDatabase={-1}frontend,cn=config changetype: modify add: olcRequires olcRequires: authc
然后运行:
ldapadd -Y EXTERNAL -H ldapi:/// -f /usr/share/slapd/ldap_disable_bind_anon.ldif
既然你打算很快去SSL / TLS,你可能要考虑使用客户端证书validation来进一步加强你的安全。 具有-v -A选项的Stunnel会很好地完成。