Смена пароля — важная процедура для обеспечения безопасности почтового ящика. В Roundcube, популярном веб-клиенте электронной почты, пользователи могут изменить свой пароль прямо через интерфейс, если администратор настроил соответствующий модуль. В этой статье мы подробно рассмотрим процесс смены пароля пользователем в Roundcube, а также необходимые условия для активации этой функции.
Данный функционал в Roundcube обычно выглядит так:

Веб интерфейс Roundcube позволяет пользователям менять свои пароли с помощью плагина password. Данный плагин идет в стандартной поставке, но по умолчанию обычно он не включен в конфигурации.
Давайте проверим это используя команду ниже:
nano /var/www/mailweb/config/config.inc.php
Внимание!
В вашем случае путь до конфигурационного файла может быть совершенно другим.
Проверяем, что плагин password у нас включен, в противном случае добавляем его. Должно получиться примерно как на картинке ниже:

Сохраняем изменения и выходим из nano.
Просто активировать плагин не достаточно. Если вы сейчас попробуете сменить пароль, то получите ошибку, т.к. у roundcube своя база данных и никакого подключения к базе с учетными записями почты у нее по умолчанию нет.
Давайте это исправим.
Переходим в каталог с плагином. Он находится в папке куда установлен Roundcube:
cd /var/www/mailweb/plugins/password
Внимание!
В вашем случае путь до папки с плагином может быть совершенно другим.
Далее используем шаблон конфигурационного файла, при этом сохранив оригинал:
mv config.inc.php.orig config.inc.php
После чего открываем его для внесения изменений:
nano config.inc.php
И добавляем, либо изменяем там следующие параметры:
$config['password_minimum_length'] = 8;
$config['password_minimum_score'] = 5;
$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';
Внимание!
Значения для опций очень сильно зависят от вашей почтовой инфраструктуры. Тут приведен пример для моей конфигурации почты. Возможно вам придется более подробно изучить данный вопрос, чтобы настроить корректную работу плагина.
Пояснения по некоторым параметрам:
password_minimum_length — задает минимальную длину пароля (в данном случае 8 символов)
password_minimum_score — задает уровень сложности пароля (в данном случае уровень максимальный, где потребуются разные регистры символов, цифры и знаки)
password_algorithm — задан метод шифрования паролей в базе mysql (укажите свой)
password_db_dsn — dbuser — имя пользователя базы данных, где хранятся учетные записи пользователей, dbpassword — пароль пользователя базы данных, postfix — название базы данных.
После этого сохраняем конфигурационный файл и выходим из nano.
Теперь изменение пароля должно работать корректно.
Помогла статья? Подписывайся на Telegram канал автора.
Анонсы всех статей, много другой полезной и интересной информации, которая не попадает на сайт.
Если у вас имеются вопросы, задавайте их в комментариях.