Автор Тема: ldap авторизация  (Прочитано 3475 раз)

ska

  • Гость
ldap авторизация
« : 02.03.2011 08:43:06 »
Я безуспешно на многих форумах пытаюсь решить этот вопрос и никто ничего конкретного пока не сказал. Уже бы давно установил в школе линукс, но без централизованной авторизации делать этого не буду).

Хочу авторизацию только с модулем pam, без tls и sasl
На сервере free bsd с айпи 192.168.0.6 запустил openldap, добавил в базу несколько записей
в /usr/local/etc/ldap.conf так
host 127.0.0.1
base dc=test,dc=org
scope sub
pam_password exop
nss_base_passwd ou=People,dc=test,dc=org
nss_base_shadow ou=People,dc=test,dc=org

в /usr/local/etc/openldap/ldap.conf такая запись

URI ldap://ldap.test.org

Затем пробую авторизоваться на альтовском клиенте, предварительно указав авторизовываться через домен test.org и в качестве шлюза указал 192.168.0.6. Однако после ввода логина и пароля авторизоваться как всегда не получается (графическое окно входа в систему показывает login incorrect) а в консоль ошибок идут такие сообщения.
nss_ldap: failed to bind to LDAP server ldap://ldap.test.org: Invalid credentials

Расшифруйте пожалуйста эту строку. Не понимаю, зачем ему вообще нужны какие-то данные для привязки, если в /etc/pam_ldap.conf клиента записи насчет привязки закомментированы, а по-умолчанию привязка анонимная

P.S. мне кажется что проблема на стороне клиента (в моем случае это легкий альт линукс 5.0.1) потому что, если я захожу на сервер по ssh,  у меня получается сделать например вот так
$ ldapsearch -x -D 'uid=testuser,ou=People,dc=test,dc=org' -W -H ldap://ldap.test.org -b ou=People,dc=test,dc=org uid=testuser
в результате получаю что просил
Enter LDAP Password:                                                         
# extended LDIF                                                               
#                                                                             
# LDAPv3                                                                     
# base <ou=People,dc=test,dc=org> with scope subtree                       
# filter: uid=testuser                                                       
# requesting: ALL                                                             
#

# testuser, People, test.org
dn: uid=testuser,ou=People,dc=test,dc=org
uid: testuser
cn: Testuser
objectClass: top
objectClass: posixAccount
objectClass: account
userPassword:: dGVzdHVzZXI=
loginShell: /bin/csh
uidNumber: 1003
gidNumber: 1003
homeDirectory: /home/testuser
gecos: test

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 166
    • Домашняя страница
Re: ldap авторизация
« Ответ #1 : 02.03.2011 15:42:26 »
Что выдаёт на клиенте system-auth status?
(подсказка: можно выбрать аутентификацию через Центр управления системой, модуль alterator-auth. Он сделает нужный симлинк в /etc/pam.d и пропишет куда надо).
Андрей Черепанов (cas@)

ska

  • Гость
Re: ldap авторизация
« Ответ #2 : 03.03.2011 01:38:24 »
Я же написал вот так
Цитировать
Затем пробую авторизоваться на альтовском клиенте, предварительно указав авторизовываться через домен test.org и в качестве шлюза указал 192.168.0.6.
Т.е. это я делал именно через центр управления системой
в ответ на system-auth status получаю такое
krb5  dc=test,dc=org  ldap://ldap.test.org
(спасибо за команду)
Буду настраивать дальше сервер с керберос).
« Последнее редактирование: 03.03.2011 01:50:52 от ska »

ska

  • Гость
Re: ldap авторизация
« Ответ #3 : 04.03.2011 08:33:39 »
Клиент остался прежним. Сервер поменял на альтовский) (установил, запустил, через веб добавил пользователя)

Далее при попытке зайти на клиенте идут такие сообщения в консоль
nss_ldap: failed to bind to LDAP server ldap://ldap.test.org: cant contact LDAP server
nss_ldap: could not search LDAP server - Server is unavailable

Есть ли этому какое-нибудь объяснение?

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 166
    • Домашняя страница
Re: ldap авторизация
« Ответ #4 : 04.03.2011 13:57:54 »
nss_ldap: failed to bind to LDAP server ldap://ldap.test.org: cant contact LDAP server
А клиент откуда получает DNS? Обычно с того же сервера по DHCP. Проверьте имя на клиенте и, если нужно пропишите его в /etc/hosts или на DNS:
host ldap.test.org
Андрей Черепанов (cas@)

ska

  • Гость
Re: ldap авторизация
« Ответ #5 : 05.03.2011 10:02:21 »
nss_ldap: failed to bind to LDAP server ldap://ldap.test.org: cant contact LDAP server
А клиент откуда получает DNS? Обычно с того же сервера по DHCP. Проверьте имя на клиенте и, если нужно пропишите его в /etc/hosts или на DNS:
host ldap.test.org
В ответ на host ldap.test.org
получаю
ldap.test.org has address 192.168.0.1

Теперь в консоли клиента добавилось еще небольшое пояснение( (я его уже видел)
linlight5-:0                      nss_ldap: failed to bind to LDAP server ldap://ldap.test.org: Invalid credentials
Непонятен большое пустое место между названием моего клиента и сообщением от nss_ldap
Такое ощущение, что там  должна быть какая-то еще служба, но это место пустое(?)
« Последнее редактирование: 05.03.2011 10:10:32 от ska »

ska

  • Гость
Re: ldap авторизация
« Ответ #6 : 05.03.2011 11:31:08 »
Случилось чудооо! Я только что авторизовался через лдап.)))
Я переустановил клиента при работающем сервере и зашел. :-X
P.S. до окончательного удаления виндовс на школьных компах остались считанные дни)

Оффлайн sedanov

  • Участник
  • *
  • Сообщений: 127
Re: ldap авторизация
« Ответ #7 : 10.05.2011 18:49:18 »
А если лдап сервер стоит виртуально. а инет через сам шлюз... что  в шлюзе в dnsmasq указать дге лдап сервер?