我在 FreeBSD 服务器上安装了 Dovecot v2.0.11,用户查找传入电子邮件地址失败,但查找系统用户成功。
Dovecot 设置为使用系统用户,所以我的 dovecot.conf 有
userdb {
driver = passwd
}
Run Code Online (Sandbox Code Playgroud)
和
passdb {
driver = passwd
}
Run Code Online (Sandbox Code Playgroud)
我启用了身份验证调试。
例如,我有一个名为 webmaster 的用户,使用 doveadm 用户作为“webmaster”的工作方式如下:
#doveadm user webmaster
userdb: webmaster
system_groups_user: webmaster
uid : 1020
gid : 1020
home : /home/webmaster
Run Code Online (Sandbox Code Playgroud)
但是使用 doveadm 用户查找 webmaster@myregisteredname.com 失败如下:
# doveadm user webmaster@myregisteredname.com
userdb lookup: user webmaster@myregisteredname.com doesn't exist
Run Code Online (Sandbox Code Playgroud)
这导致 webmaster@myregisteredname.com 的传入邮件因“未知用户”错误而退回。
这是 /var/log/maillog 中记录的失败:
Apr 16 20:13:35 www dovecot: auth: passwd(webmaster@myregisteredname.com): unknown user
Run Code Online (Sandbox Code Playgroud)
这是 /var/log/debug.log 中记录的失败:
Apr 16 20:13:35 …Run Code Online (Sandbox Code Playgroud)