Я понимаю, что об этой ошибке довольно много раз спрашивали в Server Fault, и я провел обширный поиск в Google, однако, хоть убей, я не могу точно выяснить, почему я не могу использовать ldapsearch.
Моя конечная цель - использовать php-скрипт adLDAP в блоке debian, который присоединен к домену Windows через openLDAP. openLDAP правильно работает в debian box, и у меня есть пользователи моего домена, которые могут входить в систему и тому подобное. Однако каждый раз, когда я пытаюсь запустить ldapsearch или скрипт adLDAP, я получаю ту же ошибку, которая
ldap_bind: неверные учетные данные (49)
Я использую следующий ldapsearch:
ldapsearch -D "cn = test" -w Test123 -h DomainCont.example.local -b "dc = example, dc = local" -s sub "(objectclass = *)"
Я рву здесь волосы. Запуск параметра отладки, похоже, тоже не помогает, как показывает
** ld 0x8e6410 Подключения: хост: DomainCont.example.local порт: 389 (по умолчанию) refcnt: 2 status: Connected last used: Thu Jan 10 12:45:48 2013
Любая помощь будет принята с благодарностью.
Сервер возвращает ошибку, поэтому отладка на клиенте не очень поможет. К сожалению, ваш пример может быть слишком запутанным для устранения неполадок; Я собираюсь предположить, что у вас действительно нет суффикса, добавленного к "cn = test" в вашем примере.
Если вы привязаны к AD, cn=test
должен содержать полный путь LDAP. (в таком случае, cn=test,ou=container,dc=example,dc=local
) Для пользователей AD вы можете использовать альтернативный синтаксис (изменить: на самом деле они не связаны с Active Directory)'DOMAIN\samaccountname'
- помните, что обратная косая черта должна быть экранирована, если вы не используете одинарные кавычки.
Было бы полезно проверить, как система аутентифицируется по LDAP, и попытаться отразить это как можно точнее. Я предлагаю изменить ваше сообщение, включив эти сведения, если это не помогает.