Postfix-开放中继。怎么配置才不行?

Loc*_*ock 2 smtp postfix spam centos

我已经设置了 Postfix,但在设置时遇到了问题。

每当我过去向服务器发送电子邮件时,它都会拒绝我的邮件,说“拒绝中继”,因此我更改了以下内容main.cf

mynetworks = 0.0.0.0/0
mynetworks_style = subnet
Run Code Online (Sandbox Code Playgroud)

我现在可以发送电子邮件并且它可以工作,但是 MX 测试表明它是一个开放的中继(显然是无意的)。

我该如何解决这个问题?我显然希望任何人都能够通过电子邮件发送我的域,但我不确定配置。

我知道我可以更改mynetworks,但是这不限制谁可以向服务器发送电子邮件吗?

小智 5

mynetworks 必须只包含可以使用服务器将邮件中继到其他域的受信任用户 - 否则,正如您发现的那样,它是一个开放中继。如果在您的内部网络上使用 RFC 1918 地址,您可能希望将其设置为 192.168.0.0/16、10/8 或 172.16.0.0/12。

控制人们是否可以向您的服务器发送邮件的设置包括 mydestination 和 virtual_mailbox_domains - 请在此处此处阅读文档。


Mik*_*ike 5

让你敞开心扉的问题是

mynetworks = 0.0.0.0/0
Run Code Online (Sandbox Code Playgroud)

因为下面的某个地方你可能把它列在了

smtpd_recipient_restrictions = ... permit_mynetworks ...
Run Code Online (Sandbox Code Playgroud)

如果您需要能够从任何 ip 发送电子邮件,那么您只需查看启用的用户/密码即可发送电子邮件,常见的是 sasl