2014-12-15 2 views
1

У меня есть вопрос для вас.LDAP_BIND Не удается связаться с сервером LDAP

Моя цель - связать сервер ldap с php.

  • Когда я пытаюсь с терминальным (Баш) я использую:

ldapsearch -H ldaps://[server]:[port] -D [dn] -W

Он хорошо работает.

  • Когда я пытаюсь с PHP скрипт

$server = array("ldaps://[server]", "[port]");

$userdn = "[dn]";

$userpw = "[pw]";

$ds = ldap_connect($server[0], $server[1]) or die("ldap server offline");

ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);

ldap_set_option($ds, LDAP_OPT_REFERRALS, 0);

ldap_bind($ds, $userdn, $userpw);

Предупреждение: ldap_bind(): Невозможно связаться с сервером: Невозможно соединиться с сервером LDAP

Я не понимаю, что я ошибка. Я всю ночь искал в Google.

Q/A

_ I use mamp (apache)

_ Ldap server pings good, and works with bash.

_ I use a firewall, but it doesnt work without too.

_ all [var] are ok, because in bash it works.

+0

вы должны попробовать использовать бит о LDAP_OPT_DIAGNOSTIC_MESSAGE на странице man ldap_bind на php.net, чтобы получить более подробное сообщение об ошибке. http://php.net/manual/en/function.ldap-bind.php – Rooster

+0

error: 14090086: SSL-процедуры: SSL3_GET_SERVER_CERTIFICATE: проверка сертификата не выполнена (самоподписанный сертификат в цепочке сертификатов) – oxmolol

+0

добавление TLS_REQCERT позволяет ldap.conf и его работает! спасибо вам, помощник. – oxmolol

ответ

0

добавление TLS_REQCERT allow к ldap.conf и это работает! спасибо @rooster

Смежные вопросы