我有一个postfix安装和配置的邮件服务器,如
http://flurdy.com/docs/postfix/index.html所示.
我使用MysqL数据库maildb与表用户有两个文件ID =’user@domain.com’和crypt =’salted_md5_hash’.使用如下查询更新密码:
我使用MysqL数据库maildb与表用户有两个文件ID =’user@domain.com’和crypt =’salted_md5_hash’.使用如下查询更新密码:
- UPDATE users SET crypt = ENCRYPT('apassword',CONCAT('$5$',MD5(RAND()))) WHERE id = 'user@domain.tld';
Roundcube 1.0-RC根据http://trac.roundcube.net/wiki/Howto_Install安装
如何设置roundcube密码插件以使用上述安装?
解决方法
编辑roundcube main config.inc.PHP并将插件名称’password’添加到plugins array(),如下所示,以激活插件:
- // List of active plugins (in plugins/ directory)
- $config['plugins'] = array('password');
您还可以记下圆形立方体使用的DSN连接到’roundcube’MysqL数据库$config [‘db_dsnw’] =’MysqL:// user:pass @ localhost / roundcube’
cd into … / roundcube_www_root / plugins / password /并创建config.inc.PHP
- <?PHP
- $config['password_driver'] = 'sql';
- $config['password_confirm_current'] = true;
- $config['password_minimum_length'] = 8;
- $config['password_require_nonalpha'] = false;
- $config['password_log'] = false;
- $config['password_login_exceptions'] = null;
- // If the server is accessed via fqdn,replace localhost by the fqdn:
- $config['password_hosts'] = array('localhost');
- $config['password_force_save'] = true;
- // sql Driver options
- $config['password_db_dsn'] = 'MysqL://user:pass@localhost/maildb';
- // sql Update Query with encrypted password using random 8 character salt
- $config['password_query'] = 'UPDATE users SET crypt=ENCRYPT(%p,CONCAT(_utf8\'$5$\',RIGHT(MD5(RAND()),8),_utf8\'$\')) WHERE id=%u LIMIT 1';
- ...
更新:在某些情况下,localhost似乎无法工作,需要由Terry报告的127.0.0.1替换
更新:我最近不得不将圆形主机主配置(config / config.inc.PHP)中的参数$config [‘default_host’]更改为fqdn而不是localhost.因此我不得不将插件配置(plugins / password / config.inc.PHP)中的参数$config [‘password_hosts’]更改为服务器fqdn.
有关详细信息,请参阅… / plugins / password / README和… / plugins / password / config.inc.PHP.dist.
假设您将使用相同的MysqL用户作为密码插件来更新密码,您必须将’maildb’中的’users’表的GRANT SELECT和UPDATE权限授予’roundcube’MysqL用户:
- # tail -f ../../logs/error