NOQUEUE:拒绝:中继访问被拒绝

NOQUEUE:拒绝:中继访问被拒绝

我最近按照 linode.com 上的说明设置了一个邮件服务器(https://library.linode.com/email/postfix/postfix2.9.6-dovecot2.0.19-mysql),只不过我使用的是postgreSQL而不是mySQL。

除了我无法从邮件客户端(Mac Mail)向外部地址发送电子邮件外,服务器的所有功能均正常运行。当我尝试向外部地址发送消息时,postfix 出现以下错误:

NOQUEUE: reject: RCPT from comcast.net[174.51.xxx.xx]: 554 5.7.1 <[email protected]>: Relay access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<[10.0.0.15]>

(请注意,我删除了发件人的 IP 地址)

我已将其配置为使用 dovecot 作为身份验证机制。在 dovecot 日志中我得到:

Oct 23 16:44:31 auth: Debug: client in: AUTH    2   PLAIN   service=smtp    nologin lip=50.116.xx.xx    rip=174.51.xxx.xx   secured resp=<hidden>
Oct 23 16:44:31 auth: Debug: sql([email protected],174.51.xxx.xx): query: SELECT email as user, password FROM virtual_users WHERE email='[email protected]';
Oct 23 16:44:31 auth: Debug: client out: OK 2   [email protected]

因此,看起来 dovecot 批准了用户名和密码,但 postfix 仍将其视为已被拒绝。有人知道发生了什么吗?或者我可以进一步调试吗?

谢谢!

答案1

我可以通过将 postfix main.cf 配置更改为以下内容来解决我的问题:

smtpd_relay_restrictions = 
    permit_mynetworks 
    permit_sasl_authenticated 
    defer_unauth_destination

而不是使用smtpd_recipient_resrictions

事实证明,在 postfix 2.10.0 之后,smtpd_relay_restrictions应该使用 而不是smtpd_recipient_restrictions. (smtpd_recipient_restrictions现在应该仅用于垃圾邮件限制)。

更多信息: http://de.postfix.org/ftpmirror/official/postfix-2.10.0.RELEASE_NOTES

相关内容