繁体   English   中英

php_ldap克服ssl困难

[英]php_ldap over ssl difficulties

我试图从Ubuntu(hardy 8.04LTS)主机使用php_ldap(使用ADLdap)绑定到AD。 在端口389上绑定ldap:// myserver是可以的,但是不允许我做诸如设置密码之类的事情,因此我需要在端口636上绑定到ldaps:// myserver。

我知道某种形式的凭据传递可能会发生,也许带有证书,但是我真的很努力地使任何事情都起作用-ldaps上的绑定失败。

测试装置AD在mydom.local域中有一个容器Users,我要绑定的帐户位于Users容器中,并且DN为

'CN=LDAP BIND,OU=Users,DC=mydom,DC=local' and a password of 'mypass'

其sAMAccount名称为ldap

我怀疑我要么需要在ubuntu盒子上安装一些额外的软件包,要么对Windows服务器上的AD做一些魔术,或者做一些获取证书的工作,但是我被卡住了。

只是添加一些细节,如果我尝试从命令行使用ldapsearch连接以搜索某个名为install的用户,我会得到

ldapsearch -vv   -H 'ldaps://server.mydom.local' -Y DIGEST-MD5 -X 'dn:CN=LDAP BIND,OU=Users,DC=mydom,DC=local' sAMAccountname=install -U 'u:LDAP BIND'
ldap_initialize( ldaps://server.mydom.local:636/??base )
SASL/DIGEST-MD5 authentication started
Please enter your password: mypass
ldap_sasl_interactive_bind_s: Invalid credentials (49)

正如我所说,我可以成功绑定389。

我已经在Ubuntu盒子上安装了ldap-utils,libldap,php5-ldap和/etc/ldap/ldap.conf,它是:

TLS_REQCERT never
BINDDN 'CN=LDAP BIND,OU=Users,DC=mydom,DC=local'
URI ldaps://server.mydom.local

有什么建议吗?

啊哈! 找到它-为了通过ssl绑定到AD,您需要安装libsasl2-modules-gssapi-mit-这样在ubuntu上使用

apt-get install libsasl2-modules-gssapi-mit

我在这里找到了答案: https : //help.ubuntu.com/community/ActiveDirectoryHowto

这使我所有的绑定问题都消失了。 显然,如果您这样做是为了允许ADLdap更改密码,则与之绑定的用户将需要对AD服务器具有足够的权限。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM