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

Модератор: padonki

Ответить
Аватара пользователя
Padonak
padonki
Сообщения: 3812
Зарегистрирован: 14 авг 2006, 20:43
Контактная информация:

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

Сообщение Padonak »

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

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

установлен roundcube и активирован плагин password. В конфигурационном файле roundcube это выглядит следующим образом:

Код: Выделить всё

$config['plugins'] = ['archive', 'attachment_reminder', 'reconnect', 'redundant_attachments', 'zipdownload', 'markasjunk2', 'password', 'antiBruteForce'];
Если вы просто активируете плагин и не настроите, пользователь будет получать ошибку при попытке изменить пароль. Это и понятно, ведь у 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 интерфейс. Теперь изменение почтового пароля должно корректно работать.
Моя характеристика с детского сада: Хорошо кушает, спит, гуляет! Прошло много лет, ничего не изменилось.
Изображение
Ответить