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

Исходное сообщение
"Схема хранения паролей в Dovecot и Postfix"

Отправлено billybons2006 , 26-Апр-12 14:39 
Есть проблема в усатновкой RoundCube - не проходит тестовая аутентификация IMAP. Опишу ситуацию чуть подробнее. Если будет необходимо, опишу еще подробнее, вопрос в том, что может быть нужно...

Итак, есть Dovecot + Postfix + MySQL.

Dovecot-mysql.conf:
default_pass_scheme = MD5-CRYPT

Dovecot.conf:
auth_mechanisms = PLAIN LOGIN CRAM-MD5

Post­fix­ad­min — config.inc.php:
CONF['encrypt'] = 'md5crypt';

Все работает, почта ходит, smtp и imap авторизуются...

Решил поставить RoundCube. На этапе наладки получаю:
IMAP connect:  NOT OK(Login failed for test@virtual.local from 192.168.1.1(X-Forwarded-For: 192.168.100.201). AUTHENTICATE CRAM-MD5: A0001 NO [AUTHENTICATIONFAILED] Authentication failed.)

По идее, в конфиге RoundCube надо просто подправить:
$rcmail_config['imap_auth_type'] = null;
на...

подправить на что? Я уже что только не пробовал... Во-первых, скажу сразу, текст ошибки не менялся при этом (... AUTHENTICATE CRAM-MD5 ... ), как будто я и менял ничего в конфиге. Во-вторых, как вообще считается нормальным хранить пароли? Может, вообще открытым текстом, как раз для нормального взаимодействия между разными программами.

Помогите советом!


Содержание

Сообщения в этом обсуждении
"Схема хранения паролей в Dovecot и Postfix"
Отправлено vlb267 , 26-Апр-12 16:09 
Если  Dovecot.conf:
auth_mechanisms = PLAIN LOGIN CRAM-MD5

то

Dovecot-mysql.conf:
default_pass_scheme = СLEARTEXT


"Схема хранения паролей в Dovecot и Postfix"
Отправлено Дядя_Федор , 26-Апр-12 17:28 
У меня в базу вгоняются данных через Постфиксадмина (пароли, то есть). Там они кодируются от так - config.inc.php:
$CONF['encrypt'] = 'dovecot:CRAM-MD5'
В давкоте - dovecot.sql:
default_pass_scheme = CRAM-MD5
И усе работает. Раундкуб воббще не трогал - в нем null стоит.


"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 26-Апр-12 17:40 
Забал сказать, в postfixadmin у меня вообще:
$CONF['encrypt'] = 'md5crypt';

Сейчас попробую поставить "dovecot:CRAM-MD5".

Добавлено: мда, тут завязок куча на разные алгоритмы, начиная с установок PostfixAdmin... Надо будет аккуратненько завтра помучать... Пока вернул в прежнее состояние.


"Схема хранения паролей в Dovecot и Postfix"
Отправлено gfh1gfh1 , 27-Апр-12 00:43 
По любому придётся пароли в открытом виде хранить, ибо outlook очень херово работает с cram-md5, жрёт скотина только digest-md5

"Схема хранения паролей в Dovecot и Postfix"
Отправлено Дядя_Федор , 27-Апр-12 08:48 
> По любому придётся пароли в открытом виде хранить, ибо outlook очень херово
> работает с cram-md5, жрёт скотина только digest-md5

Да ладно. У меня и Аутлуковские клиенты работают вполне успешно. С методом хранения в базе это никак не связано. Просто у них надо выставить, чтобы они авторизовались на сервере плэйнтекстом. Ну и разумеется, разрешить и этот способ авторизации давкотом. А md5 действительно другой у Аутлука. :)



"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 27-Апр-12 11:44 
В итоге сделал везде открытый текст. Работает.

Я правильно понимаю, что безопасность авторизации в данном случае не страдает, если я использую SSL/TLS в настройках почтового клиента?


"Схема хранения паролей в Dovecot и Postfix"
Отправлено gfh1gfh1 , 27-Апр-12 11:55 
> В итоге сделал везде открытый текст. Работает.
> Я правильно понимаю, что безопасность авторизации в данном случае не страдает, если
> я использую SSL/TLS в настройках почтового клиента?

Открытый текст в базе или авторизации?


"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 27-Апр-12 14:57 
> Открытый текст в базе или авторизации?

Ответил чуть ниже, ошибся веткой.


"Схема хранения паролей в Dovecot и Postfix"
Отправлено gfh1gfh1 , 27-Апр-12 11:54 
>  Да ладно. У меня и Аутлуковские клиенты работают вполне успешно. С
> методом хранения в базе это никак не связано. Просто у них
> надо выставить, чтобы они авторизовались на сервере плэйнтекстом. Ну и разумеется,
> разрешить и этот способ авторизации давкотом. А md5 действительно другой у
> Аутлука. :)

Так в том и проблема что не хочется авторизации через plaintext. А чтобы одновременно в postfix и dovecot работали и CRAM-MD5 и DIGEST-MD5 и прочие схемы - надо хранить пароли в открытом виде.


"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 27-Апр-12 14:55 
> Так в том и проблема что не хочется авторизации через plaintext. А
> чтобы одновременно в postfix и dovecot работали и CRAM-MD5 и DIGEST-MD5
> и прочие схемы - надо хранить пароли в открытом виде.

Я правильно понимаю, что SSL и TLS включенные на клиенте (например, в Outlook), есть гарант того, что авторизация и все такое будет проходить безопасно? Т.е. т.к. и Postfix, и Dovecot и все остальное у меня находится на одной машине, то имеет смысл защищать только внешние подключения, а между компонентами почтового сервера пусть себе как хотят, хоть открытым текстом, хоть шифрованным?


"Схема хранения паролей в Dovecot и Postfix"
Отправлено gfh1gfh1 , 27-Апр-12 15:07 
> Я правильно понимаю, что SSL и TLS включенные на клиенте (например, в
> Outlook), есть гарант того, что авторизация и все такое будет проходить
> безопасно? Т.е. т.к. и Postfix, и Dovecot и все остальное у
> меня находится на одной машине, то имеет смысл защищать только внешние
> подключения, а между компонентами почтового сервера пусть себе как хотят, хоть
> открытым текстом, хоть шифрованным?

В принципе да, при SSL/TLS шифрованные пароли просто добавляют ещё секретности в сеанс сервер-клиент.


"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 27-Апр-12 16:41 
> В принципе да, при SSL/TLS шифрованные пароли просто добавляют ещё секретности в
> сеанс сервер-клиент.

Ок, спасибо за ответ!


"Схема хранения паролей в Dovecot и Postfix"
Отправлено Andrey Mitrofanov , 27-Апр-12 17:01 
>> Я правильно понимаю, что SSL и TLS включенные на клиенте (например, в
>> Outlook), есть гарант того, что авторизация и все такое будет проходить
>> безопасно?
> В принципе да, при SSL/TLS шифрованные пароли просто добавляют ещё секретности в
> сеанс сервер-клиент.

От взлома клиента или [базы] сервера - нет.

"Да", если оутлюк _честно (всем уже "улыбнуло"?..) проверяет сертификаты сервера и отказывается что-либо слать "чужаку".

"Да", если (и _пока) в указанном софте (и клиенте, и сервере) не обнаружится какая-нибудь "неприятная особенность", связанная с ....чем-то там в  SSL/TLS.

А так, "да!", нанотехнологии и облака.


"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 27-Апр-12 17:59 
Ок, тогда вопрос: можете привести для Postfix, PostfixAdmin, Dovecot (dovecot.conf и dovecot-mysql.conf) настройки шифрования? Которые будут работать друг с другом, естественно? Я только ЗА такие вещи, поэтому и спрашиваю.


"Схема хранения паролей в Dovecot и Postfix"
Отправлено Илья , 17-Апр-14 14:00 
> Ок, тогда вопрос: можете привести для Postfix, PostfixAdmin, Dovecot (dovecot.conf и dovecot-mysql.conf)
> настройки шифрования? Которые будут работать друг с другом, естественно? Я только
> ЗА такие вещи, поэтому и спрашиваю.

Так получилось найти настройки? Хочу поддерживать несколько вариантов авторизации, и не очень хочется хранить пароли в открытом виде...


"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 21-Апр-14 17:38 
> Так получилось найти настройки? Хочу поддерживать несколько вариантов авторизации, и не
> очень хочется хранить пароли в открытом виде...

Прошу прощения, не увидел раньше.

Есессно, получилось )) http://bozza.ru/art-170.html в самом низу, зеленая вставка:

1. PostfixAdmin:
$CONF['encrypt'] = 'dovecot:CRAM-MD5'

Dovecot:
2.
/etc/dovecot/dovecot.conf
auth_mechanisms = PLAIN

3.
/etc/dovecot/dovecot-mysql.conf
default_pass_scheme = CRAM-MD5


"Схема хранения паролей в Dovecot и Postfix"
Отправлено Michail , 18-Сен-17 08:13 
>[оверквотинг удален]
> Есессно, получилось )) http://bozza.ru/art-170.html в самом низу, зеленая вставка:
> 1. PostfixAdmin:
> $CONF['encrypt'] = 'dovecot:CRAM-MD5'
> Dovecot:
> 2.
> /etc/dovecot/dovecot.conf
> auth_mechanisms = PLAIN
> 3.
> /etc/dovecot/dovecot-mysql.conf
> default_pass_scheme = CRAM-MD5

При версии dovecot 2.2.22 postfixadmin 3.1 выдает ошибку  
#doveadm pw
Fatal: Couldn't load required plugin /usr/lib/dovecot/modules/lib90_sieve_plugin.so: Can't load plugin sieve_plugin: Plugin is intended to                       be used only by binaries: lda lmtp (we're doveadm)
Чё делать кто знает?


"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 19-Сен-17 00:26 
Я совсем не дока в этом, к сожалению. Но, может, вот эти ссылки (староваты, правда):
https://wiki.yola.ru/dovecot:dovecot
https://sourceforge.net/p/postfixadmin/bugs/248/
вам помогут?


Или права на файлы где-то нарушены? SELinux ничем не мешает (если он включен, конечно, и если система вообще с ним работает)?


Вряд ли это касается версии postfixadmin 3.1 (там какая-то замутка с опцией doveadm pw -t, functions.inc.php, функция pacrypt, где-то ее кто-то чинить собирался, ссылку не нашел, да и не факт, что это вам).

Ну, на всякий случай, Dovecot 2.2.10 и postfixadmin 3.1 (БЕЗ sieve) работает:

в postfixadmin config:
$CONF['encrypt'] = 'dovecot:CRAM-MD5';
$CONF['dovecotpw'] = "/usr/bin/doveadm pw";

в /etc/dovecot/dovecot.conf:
auth_mechanisms = PLAIN

в /etc/dovecot/dovecot-mysql.conf:
default_pass_scheme = CRAM-MD5


"Схема хранения паролей в Dovecot и Postfix"
Отправлено Михаил , 19-Сен-17 06:01 
Обновил довекот до последней версии
Ошибка пропала при таких настройках
>, Dovecot 2.2.32 и postfixadmin 3.1 работает:
> в postfixadmin config:
> $CONF['encrypt'] = 'dovecot:CRAM-MD5';
> $CONF['dovecotpw'] = "doveadm pw -s CRAM-MD5";
> в /etc/dovecot/dovecot.conf:
> auth_mechanisms = PLAIN
> в /etc/dovecot/dovecot-mysql.conf:
> default_pass_scheme = CRAM-MD5

"Схема хранения паролей в Dovecot и Postfix"
Отправлено Michail , 19-Сен-17 06:35 
> Обновил довекот до последней версии
> Ошибка пропала при таких настройках
>>, Dovecot 2.2.32 и postfixadmin 3.1 работает:
>> в postfixadmin config:
>> $CONF['encrypt'] = 'dovecot:CRAM-MD5';
>> $CONF['dovecotpw'] = "doveadm pw -s CRAM-MD5";
>> в /etc/dovecot/dovecot.conf:
>> auth_mechanisms = PLAIN
>> в /etc/dovecot/dovecot-mysql.conf:
>> default_pass_scheme = CRAM-MD5

Хотя в чем- то ошибка у меня, doveadm pw -s CRAM-MD5 это кодирует мой пароль в CRAM-MD5,
а функция doveadm pw -t  {CRAM-MD5}3751ca1e449595d37e64fe320cc234ee430679638d858d180e6281e1cb90c934
Enter password to verify:
{CRAM-MD5}3751ca1e449595d37e64fe320cc234ee430679638d858d180e6281e1cb90c934 (verified)

А авторизация не проходит, чё то я совсем запутался.


"Схема хранения паролей в Dovecot и Postfix"
Отправлено Michail , 19-Сен-17 07:47 
>> Обновил довекот до последней версии
>> Ошибка пропала при таких настройках
>>>, Dovecot 2.2.32 и postfixadmin 3.1 работает:
>>> в postfixadmin config:
>>> $CONF['encrypt'] = 'dovecot:CRAM-MD5';
>>> $CONF['dovecotpw'] = "doveadm pw -s CRAM-MD5";
>>> в /etc/dovecot/dovecot.conf:
>>> auth_mechanisms = PLAIN
>>> в /etc/dovecot/dovecot-mysql.conf:
>>> default_pass_scheme = CRAM-MD5

функция верна doveadm pw -s CRAM-MD5, свой токен получает довекот из базы, это sieve к краху приводит imap, при подключении к папкам, а не серверу.



"Схема хранения паролей в Dovecot и Postfix"
Отправлено billybons2006 , 19-Сен-17 10:02 
> функция верна doveadm pw -s CRAM-MD5, свой токен получает довекот из базы,
> это sieve к краху приводит imap, при подключении к папкам, а
> не серверу.

https://wiki.dovecot.org/Pigeonhole/Sieve/Troubleshooting

Секция "The Sieve plugin is not enabled"

Вывод "if doveconf -f service=lda mail_plugins" должен включать sieve.

Сообщение, что "Plugin is intended to be used only by binaries: lda lmtp" по идее говорит, что lda и/или lmtp должны быть включены. В конфиге dovecot что-то вроде "protocols = imap pop3 lda".

-------
https://wiki2.dovecot.org/Pigeonhole/Sieve/Configuration :

Note that the Dovecot v2.0 LDA does not create mailfolders automatically by default anymore. If your configuration relies on this, you need to enable the lda_mailbox_autocreate setting for LDA or start using the Sieve mailbox extension's :create tag for fileinto commands.

Dovecot v2.0 adds support for LMTP. Much like the Dovecot LDA, it can make use of the Pigeonhole Sieve plugin. Since the LMTP service has its own prototocol lmtp section in the config file, you need to add the Sieve plugin to the mail_plugins setting there too when you decide to use LMTP.

?