EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты
Модератор: xM
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
-
Контактная информация:
Непрочитанное сообщение
dikens3 » 2007-04-18 12:17:14
Кому интересно:
mysql:Код: Выделить всё
INSERT INTO `users`(username,password,domain) VALUES ('dik',sha1('test'),'domain.ru');
exim:
Код: Выделить всё
# Настройка аутентификации
begin authenticators
auth_plain:
driver = plaintext
public_name = PLAIN
server_condition = ${lookup mysql{SELECT username FROM users WHERE username = '${quote_mysql:${local_part:$2}}' \
AND password=(SELECT sha1('${quote_mysql:$3}')) AND active='Y'}{yes}{no}}
server_prompts = :
server_set_id = $2
auth_login:
driver = plaintext
public_name = LOGIN
server_condition = ${lookup mysql{SELECT username FROM users WHERE username = '${quote_mysql:${local_part:$1}}' \
AND password=(SELECT sha1('${quote_mysql:$2}')) AND active='Y'}{yes}{no}}
server_prompts = Username:: : Password::
server_set_id = $1
Собственно минусы:
Не будут работать аутентификации spa(ntlm) Cram-md5 и может ещё какие.
Собственно хотел посоветоваться с народом, а надо ли хранить в базе критованные пароли?
В моём случае собираюсь сделать аутентификацию только через TLS.(Никто не знает как заставить использовать только TLS для аутентификации?) Чтобы не перехватывались пароли. Но в таком случае нафига они нужны криптованные/хэшированные?
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
dikens3
-
Хостинг HostFood.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/
-
dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
-
Контактная информация:
Непрочитанное сообщение
dikens3 » 2007-04-18 12:41:36
Код: Выделить всё
Если вы хотите информировать о доступности AUTH лишь когда подключение зашифровано с использованием TLS, вы можете использовать тот факт, что значение этой опции раскрывается, установкой типа такой:
auth_advertise_hosts = ${if eq{$tls_cipher}{}{}{*}}
Сам нашёл. Спасибо лиссяре за перевод.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
dikens3
-
Alex Keda
- стреляли...
- Сообщения: 35477
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
-
Контактная информация:
Непрочитанное сообщение
Alex Keda » 2007-04-18 13:50:40
плюсы - можно спокойно хранить пароли в БД.
многие юзеры будут не в восторге, если узнают что их пароли лежат открытые.
Убей их всех! Бог потом рассортирует...
Alex Keda
-
dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
-
Контактная информация:
Непрочитанное сообщение
dikens3 » 2007-04-18 14:05:21
lissyara писал(а):плюсы - можно спокойно хранить пароли в БД.
многие юзеры будут не в восторге, если узнают что их пароли лежат открытые.
Мои тоже что-то вякали, пока я не показал как на компе выламываются все пароли практически из всех программ. Особенно BAT, OExpress, ICQ и т.п. хлам. Теперь молчат ибо нет такой проги из которой нельзя выломать пароль (на которых работают мои пользователи). Им теперь точно пофигу как лежат пароли на сервере(они не знают вобщем)
Ну украдут базу, она ведь нужна спамерам в первую очередь. А E-Mail'ы там открытые. В случае OpenRelay поменять пароли недолго. :-)
Если хэшировать ещё и логин, тогда неясно как ставить ограничения. Нифига ведь не знаешь для кого ставишь.

Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
dikens3
-
binomics
- проходил мимо
- Сообщения: 3
- Зарегистрирован: 2008-02-15 13:57:47
Непрочитанное сообщение
binomics » 2008-02-20 18:57:01
Господа, а не подскажите ли rак заставить authdaemond' при первой выборке из БД выбирать хешированный пароль. Пароли кладутся в базу как указано в первом посте.
Дебаг конфиг пишет нижеследующее:
Код: Выделить всё
Feb 19 11:10:20 SERVER courier-imap: Connection, ip=[1.1.1.1]
Feb 19 11:10:23 SERVER authdaemond: received auth request, service=pop3, authtype=login
Feb 19 11:10:23 SERVER authdaemond: authmysql: trying this module
Feb 19 11:10:23 SERVER authdaemond: Install of a character set for MySQL. SQL query: SET NAMES utf8
Feb 19 11:10:23 SERVER authdaemond: SQL query: SELECT `username`, "", `password`, 26, 6., CONCAT('/var/mail/exim/', `maildir`), CONCAT('/var/mail/exim/', `maildir`), quota, `name`, "" FROM `mailbox` WHERE `username` = "test@server.ru" AND (active='1')
Feb 19 11:10:23 SERVER authdaemond: supplied password '123' does not match clearpasswd '40bd001563085fc35165329ea1ff5c5ecbdbbeef'
Feb 19 11:10:23 SERVER authdaemond: authmysql: REJECT - try next module
Feb 19 11:10:23 SERVER authdaemond: FAIL, all modules rejected
binomics
-
binomics
- проходил мимо
- Сообщения: 3
- Зарегистрирован: 2008-02-15 13:57:47
Непрочитанное сообщение
binomics » 2008-02-20 20:44:08
SORRY не совсем корректно сформулировал. Если я правильно понял, то authdaemond нужно заставить полученный пароль от клиента захешировать SHA-1 и сравнить с полученным хешем из базы.
Но вот сделать это не получается
В документации по authdaemond описана функция проверки, но лезть в исходники откровенно говоря не хочется. Есть жгучее желание обойтись "малой кровью".
Надеюсь на помощь.
Сервер настраивался по статье
http://www.lissyara.su/?id=1175
binomics
-
binomics
- проходил мимо
- Сообщения: 3
- Зарегистрирован: 2008-02-15 13:57:47
Непрочитанное сообщение
binomics » 2008-02-24 10:55:19
Вопрос снят, проблема решена внимательным вкуриванием доков и в конечном итоге установкой dovecot.
binomics