Postfix 限制来自 IP 范围的域的邮件

Postfix 限制来自 IP 范围的域的邮件

我的 postfix 服务器上有多个域名和电子邮件帐户。尽管我尽了一切努力控制垃圾邮件,但它们还是被垃圾邮件淹没,我崩溃了,开始花钱购买外部垃圾邮件过滤服务。这帮了我大忙。

但是,一个域名仍然受到垃圾邮件的攻击。在调查时,我注意到垃圾邮件直接进入我们的服务器,而不是通过垃圾邮件过滤服务。因此,我想要做的是修改我的 Postfix 配置,以便该域名的电子邮件(并且只有该域名的电子邮件)可以从垃圾邮件过滤服务 IP 地址发送。

我之所以希望通过域名方法进行操作,是因为服务器上的几个域名没有垃圾邮件问题(更多的是聪明的互联网用户的问题)。所以我从未为它们注册垃圾邮件服务器。这排除了仅设置 ip 表以允许仅来自垃圾邮件过滤服务的 IP 地址的 smtp 流量的能力。

有人有办法我可以做到这一点吗?

编辑: 需要澄清的是,服务器上的所有邮件(1 或 2 个域除外)首先会发送到外部垃圾邮件服务。然后垃圾邮件服务会施展魔法,将其发送给我们。因此,对于使用此服务的域,如果 SMTP 流量不是来自垃圾邮件服务的 IP 地址。我只想让邮件被拒绝或发送到黑洞。因为 DNS 更改是在几周前进行的。因此,对于使用该垃圾邮件服务的域,直接连接到服务器将是垃圾邮件。

答案1

根据您的描述,我将您的问题翻译为:如何设置 postfix

如果 Postfix 收到一封电子邮件,内容如下收件人域名是 example.netIP 地址不是垃圾邮件过滤的 IP 地址然后将电子邮件发送到垃圾邮件过滤服务。

可能的解决方案是使用Postfix 每个客户端/用户/等的访问控制,又称 Postfix 限制类

首先,您需要check_recipient_access在限制堆栈中定义,例如在中。同时在 main.cf 中smtpd_recipient_restriction定义smtpd_restriction_classes

smtpd_restriction_classes = spamfiltering
smtpd_recipient_restriction = 
    check_recipient_access hash:/etc/postfix/spammydomain
    ...other restriction...

然后在 中main.cf,我们定义垃圾域,例如:example.net

example.net    spamfiltering

然后main.cf为除垃圾邮件过滤 IP 地址之外的所有 IP 地址定义自定义过滤(例如 192.168.1.168)

spamfiltering = check_client_access cidr:/etc/postfix/spamfilter, permit

对于文件/etc/postfix/spamfilter,请输入此行

192.168.1.168/32   PERMIT
0.0.0.0/0          REJECT

它将拒绝所有电子邮件旨在example.net 域,除非它来自 192.168.1.168

相关内容