iredmail-doc/zh_CN/howto/reset.user.password.md

1.6 KiB
Raw Blame History

重置用户密码

  • SQL 后台推荐使用 SSHA512 编译的密码,没有特别的原因不要使用 MD5 值作为密码。
  • BSD 系统的 SQL 后端推荐使用 BCRYPT 编译密码。

对于 MySQL 或者 PostgreSQL 后端,可以使用 openssldoveadm 命令来生成一个密码哈希值,然后用它来替换旧的密码。

例如:

  • openssl 生成一个 MD5 哈希密码(本例中使用一个非常简单的密码 123456
$ openssl passwd -1 123456
$1$2dQ48hyz$.mCLeDSdPkP3fxVmARsB.0

或者,使用 doveadm 命令来生成:

$ doveadm pw -s 'ssha512' -p '123456'
{SSHA512}jOcGSlKEz95VeuLGecbL0MwJKy0yWY9foj6UlUVfZ2O2SNkEExU3n42YJLXDbLnu3ghnIRBkwDMsM31q7OI0jY5B/5E=
  • 为用户 user@domain.ltdanother-user@domain.ltd 重置密码:
sql> USE vmail;
sql> UPDATE mailbox SET password='$1$2dQ48hyz$.mCLeDSdPkP3fxVmARsB.0' WHERE username='user@domain.ltd';
sql> UPDATE mailbox SET password='{SSHA512}jOcGSlKEz95VeuLGecbL0MwJKy0yWY...' WHERE username='another-user@domain.ltd';

OpenLDAP 后端用户可以使用 phpLDAPadmin 重置密码,或者使用其他的 LDAP 客户端工具。 SSHA is preferred if you have other applications to authenticate users against OpenLDAP.

使用一组简单的临时密码用来登录 Roundcube 网页邮箱或者 iRedMail-Pro已启用自助服务功能后台是没有问题的但登录后应立即更改密码。 例如:

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

另请参阅