是否可以要求某些域名来自 Postfix 中的某些 IP?

是否可以要求某些域名来自 Postfix 中的某些 IP?

我正在运行 postfix 3.1,我刚刚收到来自 183.8.202.206 的一些电子邮件,它来自 gmail。快速查找后发现,除非 Google 已出售给 ChinaNet,否则这很可能是谎言。

我收到的大部分垃圾邮件都来自不匹配的 IP 和域名 - 有没有办法配置 postfix 来显示类似“仅接受来自 gmail/yahoo/outlook/hotmail 地址的电子邮件(如果来自这些 IP 地址)”?

我已经多次阅读过 Postfix 文档,但我不记得看到过这种可能性。

答案1

这是 SPF 解决的问题,你可以将其集成到 Postfix 中Postfix 的两个 SPF 验证守护进程之一。 这Python 版本或许是最好的选择。

安装将根据你的 Linux 发行版而有所不同,但一般来说,你将按照 Ubuntu 教程中的内容进行操作:

在 /etc/postfix/main.cf 中,您需要添加以下行(添加在哪里并不重要,通常添加到末尾)。

policy-spf_time_limit = 3600s

这改变了策略的时间限制,因此在消息仍在处理时策略服务器不会超时。

将此部分添加到 Python 脚本的 /etc/postfix/master.cf 中

policy-spf  unix  -       n       n       -       -       spawn
     user=nobody argv=/usr/bin/policyd-spf

或者对于 Perl 脚本 policy-spf unix - nn - - spawn user=nobody argv=/usr/sbin/postfix-policyd-spf-perl

最后,您需要将策略服务添加到文件 /etc/postfix/main.cf 中的 smtpd_recipient_restrictions 中:

smtpd_recipient_restrictions =
     ...
     permit_sasl_authenticated
     permit_mynetworks
     reject_unauth_destination
     check_policy_service unix:private/policy-spf
     ...

注意:将策略服务放在reject_unauth_destination之后,以防止策略服务的意外响应使您的系统成为开放中继(建议所有策略服务都这样做)。此外,将策略服务放在允许本地发件人之后。您只希望SPF检查来自互联网的入站邮件,而不是来自用户的出站邮件。

答案2

编辑 main.cf 并找到部分

smtp_sender_restrictions

添加

拒绝未知主机名

实际上这一部分有很多选项

如果你的 postfix 配置正确,你可以阅读这篇文章

http://www.postfix.org/ADDRESS_VERIFICATION_README.html

此致!

相关内容