Exim, несколько одинаковых аутентификаторов, как в dovecot

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35456
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Exim, несколько одинаковых аутентификаторов, как в dovec

Непрочитанное сообщение Alex Keda » 2010-03-12 15:33:40

с отладкой прогоните сообщение
Убей их всех! Бог потом рассортирует...

Хостинговая компания 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/

blade_007
ст. прапорщик
Сообщения: 571
Зарегистрирован: 2010-03-12 12:59:08
Контактная информация:

Re: Exim, несколько одинаковых аутентификаторов, как в dovec

Непрочитанное сообщение blade_007 » 2010-03-12 16:29:55

Как всегда вдумчивое чтение документации и форумов помогает.

Итак, рабочий вариант

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

  server_condition = ${if or {\
   {crypteq{$3} {${lookup mysql{SELECT crypt FROM users WHERE id = '${quote_mysql:${local_part:$2}}' AND passwd = '${quote_mysql:$auth3}' AND active = 'Y'}{$value}{*}}}}\
  {ldapauth {user=${quote_ldap:${lookup ldapdn {user=LDAP_AD_BINDDN pass=LDAP_AD_PASS \
  ldap:///LDAP_AD_BASE??sub?\
(&(objectclass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2))(mail=${quote_ldap:$auth2}))}{$value}fail}} \
pass=${quote_ldap:$auth3} connect=5 ldap:///}} \
  } \
}
в предыдущем варианте были лишние {yes}{no}.

Комбинированные условия OR/AND принимают только условия, описанные в секции 11.7, т.е. crypteq, eq, ldapauth и т.п. Они возвращают булево значение (true/false). Если у вас аутентификатор использует какие-либо lookup - приведите его к виду {eq{${lookup ldap {LDAP_QUERY}{true}{false}}}{true}}.
Всем спасибо.

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: Exim, несколько одинаковых аутентификаторов, как в dovec

Непрочитанное сообщение dikens3 » 2010-03-12 19:38:27

Автор, неплохо было бы в полезные скрипты отписать.(тема прилеплена)
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.