最近我们收到很多日本垃圾邮件,邮件头很奇怪。至少,这些邮件看起来像是远程发送的,但邮件的处理方式就像是内部发送的,这样就可以绕过内容过滤器。
Received: by mail.mydomain.tld (Postfix, from userid 5001)
id 6B03E49E06C; Fri, 20 Jul 2018 16:11:41 +0200 (CEST)
Received: from mail.mydomain.tld (mail.mydomain.tld [127.0.0.1])
by mail.mydomain.tld (Postfix) with ESMTP id 9D42049E05D
for <[email protected]>; Fri, 20 Jul 2018 16:11:41 +0200 (CEST)
Received: from uc.cn (unknown (80.223.20.65])
by uc.cn with SMTP id 9b2d56fa-9aab-41fd-bf0b-dc1fcc4d8b6b;
for <[email protected]>;Fri, 20 Jul 2018 22:11:52 +08:00
Received: from uc.cn (unknown [222.185.22.12])
by mail.mydomain.tld (Postfix) with SMTP id 910DF49E05D
for <[email protected]>; Fri, 20 Jul 2018 16:11:39 +0200 (CEST)
Received: by mail.mydomain.tld (Postfix)
id B312049E05F; Fri, 20 Jul 2018 16:11:41 +0200 (CEST)
Return-Path: <[email protected]>
From: =?utf-8?B?6aG+5YWx?= <[email protected]>
To: <[email protected]>
Subject: =?utf-8?B?54aK546rfumdouivleaIkOWKn37opoHpgIHkvaAxODjntrXph5Eg5Yqg?=
=?utf-8?B?5oiR5LyB6bmFMjgxMzMzOTc3MSDpooYg6L+e5o6lIDU1NDYzOEMwTSAgICA=?=
=?utf-8?B?ICAgIA0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQo=?=
=?utf-8?B?DQogICAgICAgICAgICAgICAgICA=?=
Date: Fri, 20 Jul 2018 16:11:52 +0200
Message-ID: <[email protected]>
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="----=_NextPart_000_0E6A_01D42046.4A45B970"
X-Mailer: Microsoft Outlook 15.0
Thread-Index: AQLZY/ijut0x7cMD09Bp+ejCSgrNhw==
Disposition-Notification-To: <[email protected]>
我们使用的是 Postfix 2.9.6 和 SpamAssassin 3.3.2。使用 链接-o content_filter
到 smtp 进程。我们还运行 Postfix 的 smtps 进程,也使用 链接到 SA-o content-filter=
我根本不知道消息是如何以这种方式提交的,以及为什么内容过滤器会被绕过。
答案1
我很惊讶您让这封邮件到达了 SpamAssassin。Postfix 的几项内置限制早在这封垃圾邮件到达那里之前就将其拒之门外。
从我的实时邮件服务器:
smtpd_helo_required = yes
有些垃圾邮件发送者并不在乎 HELO。这个垃圾邮件发送者却在乎,但启用此功能可使其他基于 HELO 的检查正常工作,而不会因为不发送 HELO 而被轻易绕过。
smtpd_helo_restrictions =
# other items ...
reject_invalid_helo_hostname,
reject_unknown_helo_hostname,
# other items ...
此服务器发送的 HELO 主机名无效。他们声称是,uc.cn
但查找其 IP 地址时给出的是 NXDOMAIN,查找后uc.cn
给出的 IP 地址又不同。reject_invalid_helo_hostname
并reject_unknown_helo_hostname
拒绝来自声称不是 EHLO/HELO 消息中的某个人的远程主机的消息。
smtpd_recipient_restrictions =
# other items ...
reject_rbl_client bl.spamcop.net,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client b.barracudacentral.org,
reject_rbl_client dnsbl-1.uceprotect.net,
check_policy_service unix:private/policy-spf,
# other items ...
向您发送邮件的 IP 地址已列入多个垃圾邮件黑名单。请考虑将一些黑名单添加到您的配置中,以在最严重的垃圾邮件到达您的服务器之前将其拒之门外。
检查 SPF 记录也会导致此邮件被拒绝。安装 SPF 服务,例如pypolicyd-spf(这里使用)。
您还可以找到Postfix 文档有趣的读物。