在Exchange 2013、2015上配置反垃圾邮件保护–RBL提供商

时间:2020-01-09 10:46:16  来源:igfitidea点击:

在本文中,我们将介绍如何在 Exchange2015和2013上配置 RBL过滤器。让我们记住RBL是什么。 RBL(Realtime Blackhole List)是一种存储数据库的服务,其中包含标记为垃圾邮件发送者的邮件服务器的IP地址列表。RBL是最常通过DNS协议访问的服务,因此这些服务也被称为DNSBL(DNS阻止列表)。

当收到来自未知发件人的电子邮件时,电子邮件服务器可以自动检查这些列表,并阻止来自RBL服务数据库中列出的IP地址的电子邮件。如果发件人的地址与某个RBL列表中的值匹配,则Exchange服务器将返回一条SMTP错误消息 550 5.x.x,作为对RCPT to命令的响应,发件人将收到未送达报告(NDR)。

在Exchange 2013和2015中,连接筛选代理负责根据IP地址列表阻止连接。 连接过滤代理包括:

IP阻止列表——一个IP地址的黑名单,不能从中接收电子邮件(阻止发件人);

IP允许列表–IP地址白名单(允许的发送者);

RBL提供商–RBL提供商列表。

前两个列表是静态的,由Exchange管理员手动配置。RBL提供程序列表包含接收电子邮件时要检查的第三方RBL服务的列表。

在Exchange 2013/2010中,可以使用 安装启用反垃圾邮件筛选-防破坏剂.ps1)剧本。两个筛选代理(连接筛选和内容筛选)安装在具有集线器传输角色的同一服务器上。在Exchange 2013中,传输角色分为两部分: 前端传输后端传输,反垃圾邮件过滤功能分为两部分。前端服务器执行连接过滤,后端服务器进行内容过滤(包括IMF过滤器-交换智能邮件过滤器和病毒检测代理-恶意软件代理)。

在Exchange 2013中,如果CAS和邮箱角色安装在同一台服务器上,则-防破坏剂.ps1脚本只安装内容筛选代理。这意味着RBL过滤将不可用。

若要安装连接筛选代理,请使用[安装传输代理]cmdlet:

Install-TransportAgent -Name "Connection Filtering Agent" -TransportService FrontEnd -TransportAgentFactory "Microsoft.Exchange.Transport.Agent.ConnectionFiltering.ConnectionFilteringAgentFactory" -AssemblyPath "C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\agents\Hygiene\Microsoft.Exchange.Transport.Agent.Hygiene.dll"

所有角色(边缘传输除外)都在Exchange 2015中合并,因此,如果我们没有具有边缘传输角色的专用服务器,则必须使用安装来安装反垃圾邮件代理-防破坏剂.ps1在所有服务器上编写脚本。然后,对于Exchange传输服务,需要指定内部SMTP服务器的地址,在检查垃圾邮件时应忽略这些地址:

Set-TransportConfig -InternalSMTPServers @{Add="192.168.1.25","192.168.101.25"}

安装代理后,需要启用它并重新启动前端传输服务:

Enable-TransportAgent -TransportService FrontEnd -Identity "Connection Filtering Agent"
Restart-Service MSExchangeFrontEndTransport

要确保已安装并运行连接筛选代理,请执行以下操作:

Get-TransportAgent -TransportService FrontEnd

接下来需要指定要使用的RBL提供程序的列表。

。现在最流行的RBL提供商是Spamhaus和SpamCop。

Add-IPBlockListProvider -Name zen.spamhaus.org -LookupDomain zen.spamhaus.org -AnyMatch $true -Enabled $True

要更改返回给发件人的NDR邮件的文本,请执行以下命令:

Set-IPBlockListProvider zen.spamhaus.org -RejectionResponse "Your IP address is listed by Spamhaus Zen. You can delete it on page http://www.spamhaus.org/lookup/"

我们可以一次添加多个RBL提供者,研究了它们的特性和商业使用策略。

我们可以显示当前使用的RBL列表,如下所示:

Get-IPBlockListProvider

我们可以使用以下命令检查RBL列表中是否有某个IP地址:

Test-IPBlockListProvider -Identity zen.spamhaus.org -IPAddress x.x.x.x

默认情况下,连接筛选器代理日志保存到文件夹中

C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\AgentLog

我们可以通过搜索此目录中的*.log文件来获取有关哪个RBL提供程序拒绝了电子邮件的信息。要查找具有指定电子邮件地址的日志文件,请打开提升的cmd并运行以下命令:

Cd "C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\AgentLog"
find /c "[email protected]" *.log | find ":" | find /v ": 0"

然后在任何文本编辑器中打开找到的*.log文件。搜索被拒绝的电子邮件地址以检测阻止电子邮件的RBL提供商和阻止时间。

此示例显示来自[email protected]邮箱在Exchange服务器上被RBL提供程序拒绝zen.spamhaus.org网站.

[email protected],,[email protected],1,Connection Filtering Agent,OnRcptCommand,RejectCommand,"550 5.7.1 Recipient not authorized, your IP has been found on a block list",BlockLictProvider,zen.spamhaus.org,,,

在收集到初始信息后(这取决于SMTP流量的大小,通常需要2-3天),可以使用getant显示RBL过滤统计信息ispamTopRBLProviders.ps1cmdlet:

.\get-AntispamTopRBLProviders.ps1 -location "C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\AgentLog"

第一次开始使用RBL过滤时,我们需要仔细检查筛选日志中是否存在误报,以免阻止合作伙伴的电子邮件。我们可以将此类受信任的电子邮件地址或者域名添加到Exchange白名单中,以绕过垃圾邮件筛选:

Set-ContentFilterConfig -BypassedSenderDomains contoso1.com, contoso2.net,contoso3.co.uk

或者将特定SMTP服务器的IP地址添加到受信任的服务器:

IPAllowListEntry -IPAddress x.x.x.x

此外,以下预安装的PowerShell脚本可用于获取连接筛选代理的电子邮件筛选统计信息: