Roundcube开启用户自助更改密码功能

时间:2024-11-13 10:18:56

公司前段时间使用postfix+dovecot+postfixadmin+roundcube 这套方案搭建了一个邮箱系统,关于如何搭建网上资料较多,这里单说下 Roundcube中开启用户更改密码功能。

1.开启password插件。

      Roundcube原生插件password,在Roundcube安装页面插件选择界面,勾选password。

2.修改password插件配置文件。

        插件位置在roundcube目录/plugin/password/  ,配置文件复制一份  到 

[root@node1 password]# pwd
/data/wwwroot/roundcubemail/plugins/password
[root@node1 password]# ls
    drivers  helpers  localization        README
[root@node1 password]# cp  
[root@node1 password]# ls
      drivers  helpers  localization        README

        编辑password插件的的文件,编辑之前需要确认邮箱的用户密码加密方式,我的邮箱是采用的 dovecot:CRAM-MD5 ,加密方式可以在postfixadmin 中的配置文件中查看。

$CONF['encrypt'] = 'dovecot:CRAM-MD5';

        配置文件需要修改的项目:

//更改密码需要输入旧密码
$config['password_confirm_current'] = true;

//可以用which找到doveadm的路径
 $config['password_dovecotpw'] = '/usr/bin/doveadm pw'; // for 

// 加密方法,需要和postfixadmin中配置的一致
$config['password_dovecotpw_method'] = 'CRAM-MD5';

// 开启密码前缀。
$config['password_dovecotpw_with_method'] = true;

//数据库连接方法,mysql://用户名:密码@数据库地址/库名
$config['password_db_dsn'] = 'mysql://dbuser_xxx:user_password@localhost/db_name';

//更新密码sql语句。
$config['password_query'] = 'UPDATE mailbox SET password=%P  WHERE username=%u';

      完成后用户登陆web页面后就可以更改密码了。