Sendmail + Cyrus + LDAP

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
ISQman
ефрейтор
Сообщения: 55
Зарегистрирован: 2009-02-26 18:42:03
Контактная информация:

Sendmail + Cyrus + LDAP

Непрочитанное сообщение ISQman » 2016-05-13 16:20:19

Всем привет!
есть связка сендмыла и цероза с авторизацией через AD, всё там хорошо... НО, когда имя пользователя в системе отличается от названия почтового ящика, нарпимер учётка VasyaPupkin имеет мыл vp@mycorp.org. Следовательно вопрос: кто с таким сталкивался и как можно такое вылечить, т.к. цероз вроде как пускает, но меилбокса нет (имя пользователя должно быть меилом?) ну и сендмыл так же не разрешает отправлять письма. Делал я через saslauthd.

Код: Выделить всё

# cat /etc/saslauthd.conf

ldap_servers: ldap://dc1.mycorp.org/ ldap://dc2.mycorp.org/ ldap://dc3.mycorp.org/
ldap_bind_dn:CN=ldap,CN=Users,DC=MYCORP,DC=ORG
dap_password:LD@Puser$tr0ngp@ss
ldap_search_base:DC=MYCORP,DC=ORG

#ldap_filter:(sAMAccountName=%u|mail=%u)
#ldap_filter:mail=%u
#ldap_filter:sAMAccountName=%U
#ldap_filter:(userPrincipalName=%u)

ldap_filter:(mail=%u@mycorp.org)
ldap_auth_method:bind
ldap_deref: never
ldap_restart: yes
ldap_scope: sub
ldap_use_sasl: yes
ldap_mech: DIGEST-MD5
ldap_start_tls: no
ldap_version: 3
ldap_timeout: 10
ldap_cache_ttl: 30
ldap_cache_mem: 32768
Пробовал разные фильтры, но видимо не в ту сторону смотрю.
Также хочу заметить, что сендмыл отправляет письма, если используется порт 25 в бате (через 465 норм отправляет только, если имя пользователя и мыл совпадают), также в логи сервера ничего не попадает, клиент получает:

Код: Выделить всё

Невозможно соединиться с сервером. Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение
В масдайном аутглюке - норм.
|"""""""""""""""""| |\
|Холодное пиво! ||""\__,
|_____________ |||_|__|)
*(@)|(@)"""*******(@)"

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
ISQman
ефрейтор
Сообщения: 55
Зарегистрирован: 2009-02-26 18:42:03
Контактная информация:

Sendmail + Cyrus + LDAP

Непрочитанное сообщение ISQman » 2016-05-17 17:51:20

из того, что я нарыл:
ldap_use_sasl: yes
убивает возможность использовать фильтры. так как инициализирует подключение fastbind

если использовать
ldap_use_sasl: no

не подключаемся, пишет, что не хватает прав:
mail saslauthd[19773]: Authentication failed for testmail: Bind to ldap server failed (invalid user/password or insufficient access) (-7)
mail saslauthd[19773]: do_auth : auth failure: [user=testmail] [service=imap] [realm=] [mech=ldap] [reason=Unknown]

попробовал от админа:
mail saslauthd[19773]: ldap_simple_bind() failed 8 (Strong(er) authentication required)
mail saslauthd[19932]: Authentication failed for testmail: Retry condition (ldap server connection reset or broken) (-3)
mail saslauthd[19932]: do_auth : auth failure: [user=testmail] [service=imap] [realm=] [mech=ldap] [reason=Unknown]
|"""""""""""""""""| |\
|Холодное пиво! ||""\__,
|_____________ |||_|__|)
*(@)|(@)"""*******(@)"

Аватара пользователя
ISQman
ефрейтор
Сообщения: 55
Зарегистрирован: 2009-02-26 18:42:03
Контактная информация:

Sendmail + Cyrus + LDAP

Непрочитанное сообщение ISQman » 2016-05-19 10:51:18

Видимо я и закончу... В общем есть по хорошему 3 выхода из положения:
1) http://www.websense.com/support/article ... n-required
Для тех, кто не осилит - в групповых политиках на КД нужно выставить следующее:
Computer Configuration > Windows Settings > Security Settings > Local Policies > Security Options
Domain controller: LDAP server signing requirements = None
Network security: LDAP client signing requirements = Negotiate
тогда начнёт пускать
далее, нужно использовать привилегированного пользователя для коннекта
2) можно настроить связку через gssapi через керберос с кейтабами, есть в тырнетах, самое сложное было когда-то для меня - кейтабы.
3) поднимаем что-то типа RODC на лдапе и при помощи того же кербероса конектимся к локальной машине и ищем пользователей.

Если кто сталкивался с более тонкой настройкой - прошу описать какие права надо дать пользователю "ldap_bind_dn:CN=ldap...", что бы он мог нормально подключаться, а то админа давать не кошерно как-то
|"""""""""""""""""| |\
|Холодное пиво! ||""\__,
|_____________ |||_|__|)
*(@)|(@)"""*******(@)"

Аватара пользователя
ISQman
ефрейтор
Сообщения: 55
Зарегистрирован: 2009-02-26 18:42:03
Контактная информация:

Sendmail + Cyrus + LDAP

Непрочитанное сообщение ISQman » 2016-05-20 9:53:05

и с этим справился, нужно точно указывать "cn", у меня "cn=ldap user" по факту в базе был, что бы не заморачиваться с пробелами и кавычками - переименовал пользователя в базе на ldap_user и всё заработало.

Всем спасибо ;)
|"""""""""""""""""| |\
|Холодное пиво! ||""\__,
|_____________ |||_|__|)
*(@)|(@)"""*******(@)"

Аватара пользователя
ISQman
ефрейтор
Сообщения: 55
Зарегистрирован: 2009-02-26 18:42:03
Контактная информация:

Sendmail + Cyrus + LDAP

Непрочитанное сообщение ISQman » 2016-05-20 9:53:05

и с этим справился, нужно точно указывать "cn", у меня "cn=ldap user" по факту в базе был, что бы не заморачиваться с пробелами и кавычками - переименовал пользователя в базе на ldap_user и всё заработало.

Всем спасибо ;)
|"""""""""""""""""| |\
|Холодное пиво! ||""\__,
|_____________ |||_|__|)
*(@)|(@)"""*******(@)"