Home » Linux » Изменение почтового пароля пользователем через roundcube

Изменение почтового пароля пользователем через roundcube

Небольшая заметка на тему настройки своего почтового сервера с веб интерфейсом roundcube. У него есть плагин, который позволяет пользователю самостоятельно менять свой почтовый пароль. Проблема в том, что по умолчанию он не заработает, обязательно нужна настройка. При этом она будет сильно зависеть от конкретной ситуации. Я опишу пару таких типовых настроек.

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Курс стоящий, все подробности читайте по ссылке. Есть бесплатные курсы.

Итак, речь идет о почтовом сервере, настроенном примерно так же, как в моей статье - Настройка postfix + dovecot + mysql база + postfixadmin + roundcube + dkim на CentOS 8. У нас установлен roundcube и активирован плагин password. В конфигурационном файле roundcube это выглядит следующим образом:

$config['plugins'] = array('acl', 'managesieve', 'password', 'userinfo');

В веб интерфейсе функционал по смене пароля реализован вот так.

Изменение почтового пароля в roundcube

Если вы просто активируете плагин и не настроите, пользователь будет получать ошибку при попытке изменить пароль. Это и понятно, ведь у roundcube своя база данных и никакого подключения к базе с учетными записями почты у нее по умолчанию нет. Вот это и надо настроить. Для этого идем в директорию плагина - /plugins/password и создаем конфигурационный файл, который будем настраивать.

# cp config.inc.php.dist config.inc.php

Открываем конфиг и добавляем туда следующие параметры.

$config['password_algorithm'] = 'md5-crypt';
$config['password_db_dsn'] = 'mysql://dbuser:dbpassword@localhost/postfix';
$config['password_query'] = 'UPDATE postfix.mailbox SET password = %P, modified = NOW() WHERE username = %u';
md5-crypt метод шифрования паролей в базе mysql
dbuser пользователь базы данных, где хранятся учетки
dbpassword пароль пользователя
postfix база данных mysql

Если у вас пароли в базе не зашифрованы, то настройки будут выглядеть вот так:

$config['password_algorithm'] = 'clear';
$config['password_db_dsn'] = 'mysql://dbuser:dbpassword@localhost/postfix';
$config['password_query'] = 'UPDATE postfix.mailbox SET password = %p, modified = NOW() WHERE username = %u';

Сохраняйте конфигурационный файл и пробуйте изменять пароль через web интерфейс. Теперь изменение почтового пароля должно корректно работать.

Онлайн курс "Нагрузочное тестирование"

Обучение, которое сделает вас востребованным на рынке автоматизатором в тестировании и перевернёт ваше представление о том, что тестирование - это скучно и является только шагом перед работой разработчиком. Чему вы научитесь на курсе:
  • Написание скриптов/ сценариев в Performance center, Jmeter, Gatling, k6.io
  • Мониторинг различных метрик во время тестирования с помощью Grafana и других инструментов
  • Планирование нагрузочного тестирования для разных случаев и целей
  • Методики и отчетность — какие разделы важны и для чего
  • Оценка точности и качества тестирования, чтобы улучшать процессы и повышать достоверность результатов
    • Проверьте себя на вступительном тесте и смотрите программу детальнее по .

Автор Zerox

Zerox
Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

3 комментария

  1. Аватар

    Привет.
    У PastFixAdmin есть механизм восстановления пароля с отправкой ссылки на ящик, привязанный к пользователю. Если перенести эту часть кода в Rouncube, то пользователь сможет сам восстановить пароль к своей почте.

  2. Аватар
    Галымжан

    Добрый день!
    Пользователи сможет простые пароли использовать? Или можно где то настроить чтобы пользователем не установили простые пароля.

    • Zerox

      Точно настраивается в postfixadmin. По идее и тут должно, настройка напрашивается, но я не проверил.

Добавить комментарий

Ваш адрес email не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.