中继访问被拒绝 - Postfix/Dovecot

中继访问被拒绝 - Postfix/Dovecot

编辑:请在阅读整个内容之前阅读答案,因为它会为您节省大量时间。回答我的问题就像使用 Outlook 更改设置一样简单,对您来说可能也是如此。它与任何配置或日志文件都无关,只是错误。

好吧……

事情是这样的。

我可以使用 Outlook 登录到我的邮件服务器,但当我发送电子邮件时,我收到错误。使用 SquirrelMail,我没有收到任何错误,发送工作正常。但是出于显而易见的原因,我不会使用 SquirrelMail。

一些可能感兴趣的文件是:

邮件日志:

Mar 22 22:33:23 mail postfix/smtpd[18385]: connect from ool-45793236.dyn.optonline.net[69.121.50.54]
Mar 22 22:33:23 mail postfix/smtpd[18385]: NOQUEUE: reject: RCPT from ool-45793236.dyn.optonline.net[69.121.50.54]: 554 5.7.1 <[email protected]>: Relay access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<Ebear>
Mar 22 22:33:26 mail postfix/smtpd[18385]: disconnect from ool-45793236.dyn.optonline.net[69.121.50.54]

主配置文件

resolv.conf:

nameserver 2001:4860:4860::8844
nameserver 2001:4860:4860::8888
nameserver 8.8.8.8
nameserver 8.8.4.4

是的,我不知道哪里出了问题。顺便说一句,我尝试发送邮件的服务器是 mail.ebear.us,MX 记录配置正确。运行 Ubuntu 14.10

先谢谢您的帮助!

(这是另一个问题的延续,另一个用户请求了一个新问题,因为主要问题已经得到解答,但出现了一个新问题)

答案1

您的 Postfix 配置在 中指定了 localhost (127.0.0.1) mynetworks,因此在 中允许该配置smtpd_relay_restrictions。这就是 SquirrelMail 可以中继的原因:它从 localhost 发送。由于您还在permit_sasl_authenticated中继限制中指定了,因此 Outlook 似乎未使用 SASL (SMTP Auth) 进行身份验证。

答案2

查看您的配置和 mail.log,似乎您正在尝试从该服务器发送电子邮件到[电子邮件保护]并且 optonline 出于某种原因拒绝了您的尝试。在日志中,我看到“helo=< Ebear>”,我认为应该是“helo=< ebear.us>”。您可能需要使用 tcpdump 进行数据包捕获,以查看实际发生的情况,看看是否确实如此,或者这只是日志的产物。否则,您需要联系 optonline.net,了解他们为什么阻止您的发送尝试。这可能是因为您没有反向 ptr 记录、SPF 记录有问题或没有正确识别自己,而且他们有一些相当严格的垃圾邮件预防政策。因此,如果您无法通过查看数据包捕获来直观地了解问题,则需要联系收件人询问他们。他们是唯一可以告诉您阻止您的政策依据的人,因为您不可能知道他们服务器上的配置。

相关内容