后缀检查用户数据库以防止伪造地址

Posted

技术标签:

【中文标题】后缀检查用户数据库以防止伪造地址【英文标题】:postfix check user database to prevent forged address 【发布时间】:2015-08-21 20:10:19 【问题描述】:

我们的邮件服务器遇到问题。我们有两台用于邮件系统的服务器,一台仅 POP(安装了 Dovecot),另一台是 SMTP(安装了 postfix、amavis、pyzor、razor 并仅发送)。两台服务器都安装了 iredmail 实例。 SMTP 中的 MX 记录之一。我们在两台服务器上都有一个共享的用户数据库,并在 SMTP 服务器中配置 SASL 身份验证。我们已经通过实施 Header Check PCRE 来停止反向散射。

现在我们面临用户 id 为something@mydomain.com 的伪造地址垃圾邮件发送,我们的系统可以通过此邮件。请帮助我,以便我可以配置用户名列表(即hash:/etc/postfix/clean_sender)或指向 mysql 数据库,如果任何带有用户名的邮件与此列表不匹配,它将立即丢弃。

问题的一个例子是shown in this extract from our logs:

*** ENVELOPE RECORDS active/XXXXX ***
message_size:    49356      785           1         0           49356
message_arrival_time: XXXXX
create_time: XXXXX
content_filter: smtp-amavis:[127.0.0.1]:10024
named_attribute: log_ident= XXXXX
named_attribute: rewrite_context=remote
sender: u@ XXXXX.com
named_attribute: log_client_name= XXXXX
named_attribute: log_client_address= XXXXX
named_attribute: log_client_port=51472
named_attribute: log_message_origin= XXXXX
named_attribute: log_helo_name= XXXXX
named_attribute: log_protocol_name=ESMTP
named_attribute: client_name= XXXXX
named_attribute: reverse_client_name= XXXXX
named_attribute: client_address= XXXXX
named_attribute: client_port=51472
named_attribute: helo_name= XXXXX
named_attribute: protocol_name=ESMTP
named_attribute: client_address_type=2
named_attribute: dsn_orig_rcpt=rfc822;bob.baxter@charles-stanley.co.uk
original_recipient: 
recipient: bob.baxter@charles-stanley.co.uk

*** MESSAGE CONTENTS active/75C6734077E ***
Received: from ip245c164.banglalionwimax.com (XXXXX)
        by smtp. XXXXX.com (Postfix) with ESMTP id XXXXX
        for <bob.baxter@charles-stanley.co.uk>; XXXXX
Message-ID: <7521347.20150606135549@barretthead.com
Date: XXXXX
Subject: Wesley, use you personal coupon - nayfeith
From: "Harris" <fgbagrlidak@e-sil.com>
To: <bob.baxter@charles-stanley.co.uk>
MIME-Version: 1.0
X-Priority: 3
Precedence: bulk
Content-Type: multipart/mixed;
 boundary="O74xv3RG7hejSBa3"

【问题讨论】:

欢迎来到 ***。最好将所有信息都放在问题中,以便专家更轻松地给您答案。我已重新格式化您的问题,以便更容易回答。您可能会发现 serverfault.com 网站更适合您的问题 - 甚至可能已经有类似问题的答案。 @BrianTompsett 这个邮件服务器配置问题公然跑题了。只需将此类问题标记为立即关闭 - 不要通过编辑它们让它们免费出现在首页上。 【参考方案1】:

您正在寻找reject_unlisted_recipient 限制或smtpd_reject_unlisted_recipient 选项。

【讨论】:

以上是关于后缀检查用户数据库以防止伪造地址的主要内容,如果未能解决你的问题,请参考以下文章

Firestore限制每小时或每天读写一次,以防止用户在检查器中设置计时器

Firestore 限制每小时或每天的读写次数,以防止用户在检查器中设置计时器

跨站点请求伪造

检查输入的值是不是存在 IF 是 防止保存 否则

php列出多次使用相同IP地址注册的用户

PHP获取IP地址的方法,防止伪造IP地址注入攻击