阅读了许多关于配置 Postfix 将邮件传递到 Dovecot-LMTP 的教程后,我仍然感到很困惑,因为它们经常相互矛盾。
主配置文件
有些教程说必须添加以下内容:
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1
其他人则说:
virtual_transport = lmtp:unix:private/dovecot-lmtp
还有一些人说:
virtual_transport = lmtp:unix:private/lmtp
主配置文件
一些教程暗示不需要在配置文件中添加任何其他内容以便 Postfix 将邮件传递给 Dovecot-LMTP,但其他教程指导您添加以下内容:
dovecot unix - n n - - pipe
flags=DRhu user=vmail:mail argv=/usr/lib/dovecot/dovecot-lda -d $(recipient)
我如何验证 Dovecot-LMTP 确实正在接收邮件并且 Postfix 没有自行将其递送到邮箱?
答案1
virtual_transport = dovecot
master.cf
您提到的修改仅适用于非低密度聚乙烯postfix 的配置
virtual_transport = lmtp:unix:...
其余两个后缀配置仅使用略有不同的低密度聚乙烯套接字名称。它们需要修改 dovecot 的配置。
Dovecot 应该在日志文件(Debian => /var/log/mail.info
)上记录已通过 LMTP 提交和接受的消息。
文档:
Dovecot Wiki2:Postfix 和 Dovecot LMTP
通过 LMTP 进行集成的基本 Postfix 和 Dovecot 配置+RCPT TO:
通过 postfix回复拒绝向不存在的虚拟用户发送电子邮件
Dovecot Wiki2:Postfix 和 Dovecot SASL
让 possfix 使用 dovecot 的密码进行 SMTP AUTH
答案2
这取决于您如何配置它们以使其协同工作。我的设置与 workaround.org 上显示的设置类似,这是一条消息从“外面”到达并由 postfix 和 dovecot 使用 lmtp 处理以传递时在 mail.log 中的样子。您可以看到 lmtp 传递的日志条目。
Jul 6 04:24:40 node3 postfix/smtpd[22238]: connect from sendinghostname[sendingip]
Jul 6 04:24:40 node3 postfix/smtpd[22238]: Anonymous TLS connection established from sendinghostname[sendingip]: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)
Jul 6 04:24:40 node3 postfix/smtpd[22238]: DF2FE1EF3C: client=sendinghostname[sendingip]
Jul 6 04:24:40 node3 postfix/cleanup[22241]: DF2FE1EF3C: message-id=<e0f21d60-ea5d-4563-53d5-6e9450540655@sendingdomainname>
Jul 6 04:24:40 node3 spamd[8704]: spamd: connection from localhost [127.0.0.1]:44362 to port 783, fd 5
Jul 6 04:24:40 node3 spamd[8704]: spamd: processing message <e0f21d60-ea5d-4563-53d5-6e9450540655@sendingdomainname> for username:5000
Jul 6 04:24:41 node3 spamd[8704]: spamd: clean message (-0.0/5.0) for username:5000 in 0.3 seconds, 1576 bytes.
Jul 6 04:24:41 node3 spamd[8704]: spamd: result: . 0 - SPF_PASS scantime=0.3,size=1576,user=username,uid=5000,required_score=5.0,rhost=localhost,raddr=127.0.0.1,rport=44362,mid=<e0f21d60-ea5d-4563-53d5-6e9450540655@sendingdomainname>,autolearn=ham autolearn_force=no
Jul 6 04:24:41 node3 postfix/qmgr[3741]: DF2FE1EF3C: from=<username@sendingdomainname>, size=1789, nrcpt=1 (queue active)
Jul 6 04:24:41 node3 postfix/smtpd[22238]: disconnect from sendinghostname[sendingip] ehlo=2 starttls=1 mail=1 rcpt=1 data=1 quit=1 commands=7
Jul 6 04:24:41 node3 dovecot: lmtp(22244): Connect from local
Jul 6 04:24:41 node3 dovecot: lmtp(username@recipientdomain): qpVLDom7XVnkVgAAD1k5Pg: sieve: msgid=<e0f21d60-ea5d-4563-53d5-6e9450540655@sendingdomainname>: stored mail into mailbox 'INBOX'
Jul 6 04:24:41 node3 dovecot: lmtp(22244): Disconnect from local: Successful quit
Jul 6 04:24:41 node3 postfix/lmtp[22243]: DF2FE1EF3C: to=<username@recipientdomain>, relay=receivingservername[private/dovecot-lmtp], delay=0.35, delays=0.3/0.02/0.01/0.01, dsn=2.0.0, status=sent (250 2.0.0 <username@recipientdomain> qpVLDom7XVnkVgAAD1k5Pg Saved)
Jul 6 04:24:41 node3 postfix/qmgr[3741]: DF2FE1EF3C: removed
Jul 6 04:24:41 node3 spamd[8703]: prefork: child states: II