我用hmailServer+roundcube+mysql来搭建邮箱服务器。由于roundcube修改密码需要插件,我就用了roundcube系统目录\plugins\中自带的插件。
我做了如下配置:
$rcmail_config['password_db_dsn'] = 'mysql://root:password@localhost/hmail';
// The SQL query used to change the password.
// The query can contain the following macros that will be expanded as follows:
// %p is replaced with the plaintext new password
// %c is replaced with the crypt version of the new password, MD5 if available
// otherwise DES.
// %o is replaced with the password before the change
// %n is replaced with the hashed version of the new password
// %q is replaced with the hashed password before the change
// %h is replaced with the imap host (from the session info)
// %u is replaced with the username (from the session info)
// %l is replaced with the local part of the username
// (in case the username is an email address)
// %d is replaced with the domain part of the username
// (in case the username is an email address)
// Escaping of macros is handled by this module.
// Default: "SELECT update_passwd(%c, %u)"
$rcmail_config['password_query'] = 'UPDATE hm_accounts SET accountpassword = %c WHERE accountaddress = %u LIMIT 1';
配置好后,在webmail里可以修改密码。例如,原始密码明文为111111,密文是,
fe616b6c2a134dd9e21c82a5fc2ca5658d057d2e470648a99638b5c310bc90eb4006c5
.但修改后的密文为$1$VOn5ogQ[QSPHr83HKPUS1o3IjTsF231.所以即使修改成功也无法登陆。
其间,我分别更换了md5(%p)等,变着花的更换,还是不行。不知道hmailServer和roundcube加密方式,百思不得其解啊。哪位大哥能帮帮小弟?