
Я попробовал несколько ответов по использованию ldapsearch, но все равно не смог аутентифицироваться с помощью службы ldap с сервера linux. Я не уверен, какие параметры использовать? Я пробую эту команду
ldp=ldap://ldap.xyz.com
user=joe.john
ldapsearch -x -D "uid=$user,dc=xyz,dc=com" \
-W -H $ldp -b "dc=xyz,dc=com" \
-s sub 'uid=$user'
Error :
Enter LDAP Password:
ldap_bind: Invalid credentials (49)
additional info: Unable to bind to the Directory Server as user uid=joe.john,dc=xyz,dc=com because no such user exists in the server
Я не уверен в вышеуказанных параметрах, хотя я пробовал разные варианты, я не уверен, кого спросить в текущей организации. После того, как я аутентифицируюсь, мне также нужно проверить несколько других идентификаторов пользователей, используя ту же команду или другие средства.
решение1
Синтаксис ldapsearch
выглядит хорошо, так что все должно работать.
Первое (хотя это и тривиально) — проверить, правильный ли пароль вы используете.
Если вы абсолютно уверены, что указали правильный пароль, то, возможно, вы неправильно указали пользователя. При привязке к LDAP вам нужно указать точное DN вашего пользователя. Вы указали uid=$user,dc=xyz,dc=com
, что выглядит странно для меня (хотя синтаксически правильно), поскольку пользователи обычно находятся где-то «глубже», в своих собственных ou
. Так что если DN вашего пользователя на самом деле uid=$user,ou=users,ou=auth,dc=xyz,dc=com
, то вы не можете привязаться к тому, который вы использовали.
Если DN правильный, вы можете попробовать добавить опцию -Z
(которая выдает StartTLS) или использовать ldaps
вместо ldap
. Возможно, каталог LDAP настроен на отклонение любых попыток аутентификации при незашифрованном соединении.