URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 37379
[ Назад ]

Исходное сообщение
"Проблема с аутентификацие courier-imap через LDAP"

Отправлено Вадим , 17-Ноя-03 16:59 
Добрый день!
Настроил courier-imap с аутентификацией через LDAP.  
Попытки забиндиться к базе LDAP через ldapsearch удаются для всех пользователей без исключения, но courier-imap почему-то аутентифицирует всего нескольких пользователей.

Кто-нибудь еще с такой мистикой встречался?


Содержание

Сообщения в этом обсуждении
"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 17-Ноя-03 20:57 
как , как ты это сделал , расскажи плиз

"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 17-Ноя-03 21:51 
Операционная система FreeBSD 4.9

Настройки OpenLDAP
***************** slapd.conf *********************

include         /usr/local/etc/openldap/schema/core.schema
include         /usr/local/etc/openldap/schema/cosine.schema
include         /usr/local/etc/openldap/schema/inetorgperson.schema
include         /usr/local/etc/openldap/schema/nis.schema

pidfile         /var/run/slapd.pid
argsfile        /var/run/slapd.args

access to dn="" by * read
access to *
        by group="cn=admins,dc=xxx,dc=ru" write
        by dn="cn=admin,dc=xxx,dc=ru" write
        by * read
        by anonymous auth
allow bind_v2

database        bdb
suffix          "dc=xxx,dc=ru"
rootdn          "cn=admin,dc=xxx,dc=ru"
rootpw          asdfasdfasdfadsf

directory       /var/db/openldap-data

index   objectClass,uid,uidNumber,gidNumber,memberUid   eq
index   cn,mail,surname,givenname                       eq,subinitial
*******************************

************** ldap.conf ****************

BASE    dc=xxx, dc=ru
URI     ldap://127.0.0.1
******************************************

Courier-imap

***************** authdaemonrc **************

authmodulelist="authldap"
authmodulelistorig="authcustom authcram authuserdb authldap authpam"
daemons=5
version=""
*************************************************

*********************** ./authldaprc *************

LDAP_SERVER             127.0.0.1
LDAP_PORT               389

LDAP_BASEDN             dc=xxx, dc=ru
LDAP_TIMEOUT            5
LDAP_AUTHBIND           1

LDAP_MAIL               mail

LDAP_FILTER           (objectClass=posixAccount)

LDAP_DOMAIN             xxx.ru

LDAP_GLOB_UID           mailnull
LDAP_GLOB_GID           mail

LDAP_HOMEDIR            uid

LDAP_MAILROOT        /var/mail
LDAP_FULLNAME           cn
LDAP_DEREF              never
LDAP_TLS                0
*************************************

*************** ./pop3d-ssl ***********

SSLPORT=995
SSLADDRESS=0
SSLPIDFILE=/var/run/pop3d-ssl.pid
POP3DSSLSTART=NO
POP3_STARTTLS=YES

POP3_TLS_REQUIRED=0

COURIERTLS=${bindir}/couriertls
TLS_STARTTLS_PROTOCOL=TLS1
TLS_CERTFILE=/etc/ssl/certs/xxx.crt

TLS_VERIFYPEER=NONE
****************************************


"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Xela , 18-Ноя-03 10:23 
Может вот это:
LDAP_CLEARPW            clearPassword
LDAP_CRYPTPW            userPassword
в authldaprc поможет....

"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 18-Ноя-03 12:59 
>Может вот это:
>LDAP_CLEARPW   clearPassword
>LDAP_CRYPTPW   userPassword
>в authldaprc поможет....

Включение LDAP_CRYPTPW не помогает, а не шифрованных паролей у меня в базе LDAP'a нет.



"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Xela , 18-Ноя-03 13:32 
Хм...
У меня такое было в том случае, если есть несколько виртуальных
доменов и в них есть пользователи с одинаковым именем.
Помогла передача в качестве имени пользователя login@domain


"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 18-Ноя-03 13:42 
Домен у меня один.



"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 18-Ноя-03 13:04 
Версия OpenLDAP           2.1.22_2
Версия Courier-IMAP       2.1.2,1


"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 19-Ноя-03 13:42 
а ldif(ы) показать можешь?

"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 23-Ноя-03 23:45 
Причина проблемы была найдена.

У нас courier-imap в качестве логина использует e-mail. Те люди, которые не могли пройти авторизацию, в базе LDAP имели две записи с одинаковым e-mail'ом.

Как и в большинстве случаев, проблему вызвал обычный недосмотр :(



"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 23-Ноя-03 23:47 
ldifы покажи плиз или ссылку на доку дай.

"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 24-Ноя-03 00:00 
24-ого вечером, скорее после 18.00, либо сюда выложу пяток записей из своих ldif'ов, либо сброшу ссылочку.

>ldifы покажи плиз или ссылку на доку дай.



"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 24-Ноя-03 19:28 
ждём-с

"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 24-Ноя-03 19:53 
и еще у меня такой вопрос.
стоит сендмеил с прикрученным лдапом , заведён пользователь , никаких поп\имап сервисов нету...
-как узнать прикрутился ли лдап к сендмеилу и работает ли он....
-как узнать используется ли лдап, или сендмеил берёт запись из системы.
-что вообще используется при отправке писем ,пробывал отправить письмо с несуществующим пользователем в системе и в лдап базе, отправляется и доходит до места назначения.

"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 24-Ноя-03 22:06 
#Корневая запись
# xxx, ru
dn: dc=xxx,dc=ru
objectClass: dcObject
objectClass: organization
dc:: KJJKLjkajdf=
o: XXX
description: XXX

#Запись первой группы
#memberUid - члены группы
# group1, xxx, ru
dn: cn=group1,dc=xxx,dc=ru
objectClass: top
objectClass: posixGroup
cn: group1
gidNumber: 12900
memberUid: alexey
memberUid: sergey
memberUid: ivan

#Запись второй группы
# group2, xxx, ru
dn: cn=group2,dc=xxx,dc=ru
objectClass: top
objectClass: posixGroup
cn: group2
gidNumber: 12500
memberUid: oleg
memberUid: konstantin
memberUid: iliya
memberUid: olga
memberUid: anna
memberUid: rita
memberUid: wildcat
memberUid: deemon
memberUid: leslie
memberUid: nansy

#Член первой группы
# alexey, group1, xxx, ru
dn: uid=alexey,cn=group1,dc=xxx,dc=ru
uid: alexey
cn: alexey
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: top
userPassword:: adjJOIJlkadlkjPkvm=
loginShell: /usr/bin/csh
uidNumber: 5201
gidNumber: 12900
homeDirectory: /nethome/alexey
gecos: alexey
givenName: Alexey
sn: Linevskiy
ou: group1
mail: alexey@xxx.ru
telephoneNumber:

# Член второй группы
# oleg, group2, xxx, ru
dn: uid=oleg,cn=group2,dc=xxx,dc=ru
uid: oleg
cn: oleg
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: top
userPassword:: adjJOIJlkadlkjPkvm=
loginShell: /usr/bin/csh
uidNumber: 5202
gidNumber: 12500
homeDirectory: /nethome/oleg
gecos: oleg
givenName: oleg
sn: Petrov
ou: group2
mail: oleg@xxx.ru
telephoneNumber:

И так далее для остальных записей. Надеюсь, что тебе это поможет.


"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 24-Ноя-03 22:21 
>и еще у меня такой вопрос.
>стоит сендмеил с прикрученным лдапом , заведён пользователь , никаких поп\имап сервисов
>нету...

Самое простое что можно придумать, это отправить письмо пользователю который есть только в LDAP'е.

[ya@mail]$ telnet localhost 25
ehlo mail.xxx.ru

mail from: user@xxx.ru
250 OK
rcpt to: ldap_user@xxx.ru
250 Accepted
data
354 Enter message, ending with "." on a line by itself
;fjd
;afjd
;afjds
.
250 OK id=1AOM8T-0003QA-4I

А затем посмотреть в /var/spool/mail/, или там где у тебя кладется почта,
есть ли тестовое письмо для данного пользователя.


>-как узнать прикрутился ли лдап к сендмеилу и работает ли он....
>-как узнать используется ли лдап, или сендмеил берёт запись из системы.

Так правильно, ты ж SMTP аутентификацию не настраивал. Чего ж ему не доходить-то.
>-что вообще используется при отправке писем ,пробывал отправить письмо с несуществующим пользователем
>в системе и в лдап базе, отправляется и доходит до места
>назначения.



"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 24-Ноя-03 22:40 
спасибо за всё , попробуй и кстати у меня в логах вот , что мелькает
Nov 23 21:33:18 xxx sendmail[9647]: hANIWjOk009647: SYSERR(root): ldap_init/ldap_bind failed to xxx.com in map ldapmra: Protocol error
Nov 23 21:33:18 xxx sendmail[9647]: hANIWjOk009647: SYSERR(root): ldap_init/ldap_bind failed to xxx.com in map ldapmh: Protocol error

"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 24-Ноя-03 23:17 
Не за что.
В логах говорится, что клиент и сервер используют разные версии LDAP протокола.
Посмотри где в sendmail'e выставляется версия протокола LDAP и поиграйся
с ней (значения будут 2 либо 3).

>спасибо за всё , попробуй и кстати у меня в логах вот
>, что мелькает
>Nov 23 21:33:18 xxx sendmail[9647]: hANIWjOk009647: SYSERR(root): ldap_init/ldap_bind failed to xxx.com in
>map ldapmra: Protocol error
>Nov 23 21:33:18 xxx sendmail[9647]: hANIWjOk009647: SYSERR(root): ldap_init/ldap_bind failed to xxx.com in
>map ldapmh: Protocol error



"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 25-Ноя-03 22:15 
у меня еще вопрос :)

из того , что ты мне запостил...
1)зачем gid и memberUid или ты пускаешь пользователей в систему тоже через лдап и они у тебя имеют соответственно и доступ к мылу?
2)userPassword он и для системы и для мыла?
3)а как сделать , чтоб пароль системный пересекался и не пересекался с мыльным ? ( всё в лдапе )...


"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 25-Ноя-03 23:48 
и еще вопрос :(((
в site.m4.config надо указывать лдап или сасл ?
и в конфиге сендмеила confLOCAL_MAILER cyrus или лдап?



"Проблема с аутентификацие courier-imap через LDAP"
Отправлено cas , 25-Ноя-03 23:59 
ВООБЩЕМ ЧТО МНЕ ПОЧИТАТЬ НА ЭТУ ТЕМУ? :)

"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 27-Ноя-03 14:54 
>у меня еще вопрос :)
>
>из того , что ты мне запостил...
>1)зачем gid и memberUid или ты пускаешь пользователей в систему тоже через
>лдап и они у тебя имеют соответственно и доступ к мылу?
>
>2)userPassword он и для системы и для мыла?
>3)а как сделать , чтоб пароль системный пересекался и не пересекался с
>мыльным ? ( всё в лдапе )...

Да, пользователи у нас имеют доступ и к почте и к системе по одному паролю из userPassword.
Пароли для мыла и для системы можно сделать разными, например, если ты делаешь домен через самбу, то подключаешь схему самбы, говоришь, что твой пользователь также является объектом sambaSamAccount и в поле sambaLMPassword запихиваешь пароль для системы. Почте говоришь что пароль лежит в userPassword, а системе в sambaLMPassword.
Это был пример, можно сделать совсем иначе.


"Проблема с аутентификацие courier-imap через LDAP"
Отправлено Вадим , 27-Ноя-03 15:18 
Неплохая статья про LDAP на русском

http://linuxshop.ru/linuxbegin/article454.html