postfix-dovecot 电子邮件发送功能可以与 Squirrel Mail 配合使用,但是不能与 Thunderbird 配合使用?

postfix-dovecot 电子邮件发送功能可以与 Squirrel Mail 配合使用,但是不能与 Thunderbird 配合使用?

我已经使用 postfix、dovecot 和 squirrel mail 设置了一个内部网电子邮件系统,该系统运行良好,我可以向系统上的所有用户发送和接收邮件。我推测问题出在 postfix 配置中,因为当我配置 Thunderbird 发送邮件时,我收到以下错误:

An error occurred while sending mail. The mail server responded:  4.1.8 <[email protected]>: Sender address rejected: Domain not found. Please check the message recipient [email protected] and try again.

以下还有相关的系统日志条目:

NOQUEUE: reject: RCPT from host1.intranetdomain.com [More Information] [192.168.11.1 [More Information] ]: 450 4.1.8 <[email protected]>: Sender address rejected: Domain not found; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<[127.0.0.1 [More Information] ]> 

我在 DNS 服务器上配置了 MX 记录,当我向它们查询这些 MX 记录时,它们会做出适当的响应,因此我认为这不是问题所在。我认为我的问题是由以下默认配置引起的:

smtpd_recipient_restrictions = reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination 
smtpd_sender_restrictions = reject_unknown_sender_domain

由于这是在内部网络上,并且不会暴露给整个互联网,我可以安全地删除哪些选项?

答案1

smtpd_sender_restrictions = reject_unknown_sender_domain

不要接受来自不存在的域的邮件。(来源)


reject_unknown_recipient_domain

当 Postfix 不是收件人域的最终目的地时拒绝请求,并且 RCPT TO 域具有 1) 没有 DNS A 或 MX 记录或 2) 格式错误的 MX 记录(例如长度为零的 MX 主机名的记录)(Postfix 版本 2.3 及更高版本)(来源)


如果您需要更改两者才能使其正常工作,您是否必须在本地 DNS 中伪造发件人域或将其添加到/etc/hosts服务器上的文件中。根据解释,如果 postfix 无法查找域,它将拒绝它。

对于第二个问题,您是否应该在服务器 /etc/hosts 文件中添加接收方域。解释:Dovecot 使用虚拟传输,因此据我所知,Postfix 不被视为最终目的地,您需要有正确的“路径”才能到达目的地。如何操作?将 DNS A 记录(添加到服务器主机文件)或正确的 MX 记录添加到您的本地 DNS。


对于您的问题:是的,您可以安全地删除,但这会关闭上面提到的过滤器。

答案2

您必须添加以下行:

my_destination = intranetdomain.com, host1.intranetdomain.com, localhost

它会告诉 postfix 这台机器负责处理发送到这个域/主机的电子邮件。

如果这是您发送/接收内部电子邮件的唯一入口/出口点,那么这就是您所需要的。另一方面,正确设置 DNS 服务器、为您的域添加 MX 记录并将其指向您的 MTA 始终是明智之举。

建议保留localhost上面的行,以便它可以处理由其他守护进程发送到/来自 root 的内部电子邮件。

相关内容