OpenLDAP 2.3, SQUID 2.6 ldap_auth у кого-нибудь работает? [Solved]
Не совсем в тематику форума, но на Gentoo наблюдается абсолютно то же самое.
FreeBSD 6.2, системную авторизацию переделал на OpenLDAP (предполагается, что сервер будет держать централизованную базу пользователей).
Установлены следующие пакеты:
openldap-client-2.3.41 Open source LDAP client implementation openldap-server-2.3.41 Open source LDAP server implementation pam_ldap-1.8.4 A pam module for authenticating with LDAP nss_ldap-1.257 RFC 2307 NSS module
В текущем приближении там живут только записи класса posixAccount
Системная авторизация работает - только в путь. Индеец - аналогично.
Пробую задействовать авторизацию через LDAP для SQUID'а (в текущем срезе портов это - 2.6.18).
Согласно инструкции (сволочи, не указывают на каких версиях это работает), первым этапом рекомендуется произвести проверку (здесь для случая Gentoo):
/usr/lib/squid/squid_ldap_auth -b "ou=People,dc=mydomain,dc=ru" -f "uid=%s" localhost
Говорят, что при успешном завершении команда должна вывести "OK".
В моём случае - тишина. При повторном нажатии "Enter" в процессе выполнения - "ERR".
Если прописать в конфиг SQUID'а секцию авторизации (на сервере, т.е. на FreeBSD):
auth_param basic program /usr/local/libexec/squid/squid_ldap_auth -b "ou=People,dc=mydomain,dc=ru" -f "uid=%s" -h localhost acl ldapauth proxy_auth REQUIRED http_access allow ldapauth
Авторизация не производится (браузер выдаёт повторный запрос на авторизацию).
При повторении опыта на моей рабочей станции (Gentoo Linux, 2.6.22-gentoo-r9, SQUID 2.6.17, авторизация всё к тому же OpenLDAP-серверу) результат идентичен.
Вопрос: это разработчики что-то поломали (и нужно писать багрепорт) или я что-то неправильно делаю?
ЗЫ: Авторизация через pam_auth также завязанная на тот же LDAP-сервер работает без каких бы то ни было проблем.
- Для комментирования войдите или зарегистрируйтесь
Насколько я
Насколько я помню, в конфиге Squid нужно указать версию протокола LDAP (обязательно третья версия). Без этого модуль не отдавал заветный OK. Надо посмотреть еще логи LDAP, что он говорит при попытке аутентификации при loglevel 256.
_______________________
From Siberia with Love!
Уточняющий вопрос
А вообще какой-нибудь вывод (кроме заветного "ОК") у него наблюдался?
С учётом того, что на pam_ldap заведена вся системная аутентификация - многовато получается разгребать...
Ладно, будем посмотреть.
--
Live free or die
По идее, если
По идее, если все работает правильно, то он отдает либо ОК Success, либо ERR Success. Если ничего не отдает - ошибка подключения к LDAP. Когда у нас испытывали такую связку, решением был такой конфиг в squid.conf:
Без ключа "-v 3" (использовать протокол третей версии) ничего не работало.
_______________________
From Siberia with Love!
Thanks! Пошёл
Thanks!
Пошёл шаманить относительно прав доступа (халява, увы, проходит только тогда, когда доступ к 389 порту извне закрыт).
--
Live free or die
Относительно
Относительно прав доступа для OpenLDAP буду разбираться и отпишусь позже.
Для неанонимного доступа использую следующую конструкцию в squid.conf:
Предварительно задав значение атрибута userPassword для пользователя squid и уделив внимание правам доступа к файлу
/usr/local/etc/squid/passwd
.(напоминаю, что здесь речь идёт о FreeBSD, для случая Gentoo необходимо поправить пути).
Пока же интересный момент:
Просто posixAccount - пароль сверяется по атрибуту userPassword.
После добавления objectClass sambaSamAccount дотоле верный пароль "внезапно" становится неправильным и нужно вводить пароль Samba (какой где и как хэш используется для меня пока дело тёмное).
--
Live free or die