我正在尝试配置 postfix 和 dovecot 以连接到同一个 LDAP,我成功了。但现在,我遇到了一些差异。
复现如下:
- 我使用 thunderbird 连接到 IMAP 中的 dovecot
- 我自己创建一封电子邮件发送给我自己
- 我使用来自同一服务器的后缀和同一用户
- 我发送电子邮件
结果是:
- 已发送的电子邮件放在已发送文件夹中。
- 但我的收件箱里没有收到任何电子邮件。
检查服务器:
- 已发送的电子邮件位于
/var/mail/<username>/.Sent/cur/
目录中 - 收到的电子邮件在
/var/mail/<domain>/<username>/new/
目录中
我以为我以相同的方式配置了 maildir 目录(如/var/mail/%d/%n
),但肯定存在问题。
我的配置(外部,抱歉,无法在问题中提出。在那些该死的配置文件上花了 30 小时(仍在计算)之后,我真的不确定哪个部分可能会影响什么……)
答案1
不要通过 postfix 传递消息。而是将它们传递给 dovecot deliver
。
答案2
保持home_mailbox =
main.cf 为空,并且
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
在 dovecot conf 中
mail_home = /var/mail/%d/%n
mail_location = maildir:~
另外,在 dovecot conf 中你需要添加或更改以下内容:
service auth {
unix_listener /var/spool/postfix/private/auth {
mode = 0666
#Change to the user and group of your postfix
user = postfix
group = postfix
}
unix_listener auth-userdb {
mode = 0666
#Change to the user and group of your postfix
user = postfix
group = postfix
}
#dovecot user
user = dovecot
}
service auth-worker {
# Auth worker process is run as root by default, so that it can access
# /etc/shadow. If this isn't necessary, the user should be changed to
# $default_internal_user.
user = root
}