Привет, коллеги!
Столкнулся с задачей настройки смены паролей для почтовых ящиков в SnappyMail через плагин Change Password PDO на сервере с почтовой связкой Exim + Dovecot, управляемом через BrainyCP. Возникли вопросы по поддержке форматов шифрования паролей.
Исходные данные:
В Dovecot установлен изначально default_pass_scheme = CRAM-MD5 для базы smtp в таблице mailbox, который используется для аутентификации пользователей.
SnappyMail плагин PDO поддерживает несколько типов шифрования паролей, таких как SHA256-CRYPT, SHA512-CRYPT, bcrypt и другие, но CRAM-MD5 в их числе нет.
Проблема: При смене пароля через SnappyMail явно возникнет несовместимость форматов, так как новые пароли сохраняются в формате SHA512-CRYPT (или другом), тогда как Dovecot и, возможно, BrainyCP ожидают CRAM-MD5. Это может привести к невозможности аутентификации после смены пароля, если Dovecot и BrainyCP не распознают новый формат.
Варианты решения, которые я рассмотрел:
1 Полностью перейти на SHA512-CRYPT в Dovecot, чтобы он поддерживал пароли, смененные через SnappyMail. Вопрос: поддерживает ли BrainyCP этот формат? Если да, это могло бы решить проблему.
2 Разработать промежуточный скрипт для обработки смены паролей. Скрипт будет принимать запрос от SnappyMail и обновлять пароль в базе в формате CRAM-MD5, что обеспечит совместимость, но не хочется тратить время, если найдется простое решение.
Вопросы к сообществу:
Поддерживает ли BrainyCP шифрование паролей в формате SHA512-CRYPT или аналогичное, которое возможно указать в Dovecot?
Какие последствия будут, если я укажу SHA512-CRYPT в dovecot-mysql.conf кроме как заново сменить через панель все пароли на все существующие почтовые ящики (благо их не много)?
Есть ли у кого-то опыт работы с аналогичной задачей?
Буду рад услышать мнения и опыт тех, кто уже сталкивался с подобной задачей. Спасибо!