Exim&dovecot + многоступенчатая авторизация MySQL+md5 hash

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Raven_kg
рядовой
Сообщения: 46
Зарегистрирован: 2009-11-30 9:38:35
Контактная информация:

Exim&dovecot + многоступенчатая авторизация MySQL+md5 hash

Непрочитанное сообщение Raven_kg » 2011-11-09 8:13:44

Добрый день камрады. Встала интересная задачка - прикрутить почтарь к одному крупному порталу. Вся проблема в том, что на портале ничего менять нельзя, а почта должна вязаться к существующим userid и паролям. Пароли лежат в md5 хеше, почтовые адреса и мэйлбоксы будут именоваться по userid - например 1@example.com, для человекоподобности предполагается использовать таблицу mail следующего вида:

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

| id | alias | domain | mailbox | quota |
Теперь самая большая проблема - по логике авторизация должна происходить следующим образом - user@example.com --> запрос в таблицу mail, выборка id и mailbox по полям alias и domain --> запрос в таблицу ban, проверка наличия в ней id (если есть - идите лесом) --> запрос в таблицу users, выборка из поля password по userid --> авторизация exim/divecot

Собственно вопрос - КАК?! Вообще реален ли такой изврат, можно ли заставить так работать exim и dovecot или же хотя бы с помощью sasl заставить это работать...

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

mak_v_
проходил мимо

Re: Exim&dovecot + многоступенчатая авторизация MySQL+md5 ha

Непрочитанное сообщение mak_v_ » 2011-11-10 9:37:42

сессия аутентификаторов exim

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

auth_cram_md5:
  driver = cram_md5
  public_name = CRAM-MD5
  server_secret = ${lookup mysql{SELECT decrypt FROM users \
                        WHERE login = '${quote_mysql:${local_part:$1}}' \
                        AND domain = '${quote_mysql:${domain:$1}}' \
                        AND status = '1'}{$value}fail}
server_set_id = $1
аутентификатор dovecot-sql.conf

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

driver = mysql
connect = host=localhost dbname=MAILDB user=exim_admin password=mailsuperpassword
default_pass_scheme = CRYPT
password_query = SELECT password FROM users WHERE login = '%n' AND domain = '%d' AND status = '1'
user_query = SELECT uid, gid FROM users WHERE login = '%n' AND domain = '%d
где-то так