重置用户密码

对于 MySQL 或者 PostgreSQL 后端,可以使用 openssldoveadm 命令来生成 密码,然后用它替换掉旧密码。

例如:使用 doveadm 命令生成一个 SSHA512 密码:

$ doveadm pw -s 'ssha512' -p '123456'
{SSHA512}jOcGSlKEz95VeuLGecbL0MwJKy0yWY9foj6UlUVfZ2O2SNkEExU3n42YJLXDbLnu3ghnIRBkwDMsM31q7OI0jY5B/5E=
sql> USE vmail;
sql> UPDATE mailbox SET password='{SSHA512}jOcGSlKEz95VeuLGecbL0MwJKy0yWY9foj6UlUVfZ2O2SNkEExU3n42YJLXDbLnu3ghnIRBkwDMsM31q7OI0jY5B/5E=' WHERE username='user@domain.ltd';

OpenLDAP 后端用户可以使用 phpLDAPadmin 或其它 LDAP 客户端工具。如果有其它 程序需要通过 LDAP 做验证,建议使用 SSHA 密码以保证通用性,不是所有程序都支持 SSHA512。

作为一种临时方案,可以重置为明文密码,然后立即登录 Roundcube webmail 或 启用了自助服务 (self-service) 功能的 iRedAdmin-Pro 修改密码。 例如:

sql> UPDATE mailbox SET password='{PLAIN}123456' WHERE username='user@domain.ltd';

参考资料

Document published under a CC BY-ND 3.0 license. If you found something wrong, please do contact us to fix it.