邮件安全防护之反垃圾邮件开源软件ASSP

一 、概述

Assp 全称 anti-spam smtp proxy (反垃圾邮件 smtp 代理),是用 perl 语言开发的一款发垃圾邮件的 smtp 网关,并可结合开源的 clamav( 邮件防病毒软件 ) 使用。目前其开源项目都存放在开源平台 sourceforge 上面,并持续更新。 Assp 目前主要分 1.x 和 2.x 版本。使用较多的是 1.x 版本, 2.x 是作者推荐的,目前使用教程比较少,不过如果熟悉了 1.x 版本那么对2.x 也会很容易上手的, 1.x 和 2.x 的区别主要是参数配置上的调整,但核心功能区别不大。

Assp 是支持 window 和 Linux 跨平台的。本文主要讲述的 linux 下的安装使用。相信不会有几个人将其部署到 window 上做服务器使用的。

1.1 英语名词解释:

1 SPF & SRS:

SPF 是为了防范垃圾邮件而提出来的一种 DNS 记录类型,它是一种 TXT 类型的记录,它用于登记某个域名拥有的用来外发邮件的所有 IP 地址。 SPF 的作用主要是 反垃圾邮件,主要针对那些发信人伪造域名的垃圾邮件。

SRS ( Sender Rewriting Scheme 维基可查)是发件人重写方案, SRS 是转发 MTA 以重写发件人地址的简单方法。

2 Ham or Spam:

非垃圾邮件 或 垃圾邮件

3 DKIM:

电子邮件验证标准 —— 域名密钥识别邮件标准 , 发送方会在电子邮件的标头插入 DKIM-Signature 及 电子签名资讯。而接收方则透过 DNS 查询得到公开金钥後进行验证。

4 DMARC:

[DMARC] 协议基于现有的 [DKIM] 和 [SPF] 两大主流电子邮件安全协议,由 Mail Sender 方(域名拥有者 Domain Owner )在 [DNS] 里声明自己采用该协议。当 Mail Receiver 方(其 MTA 需支持 DMARC 协议)收到该域发送过来的邮件时,则进行 DMARC 校验,若校验失败还需发送一封 report 到指定 [URI] (常是一个邮箱地址)。

二、 安装教程

2.1 环境安装

2.1.1 下载安装编译 perl

perl 版本: >=5.2.0 版本 ( 建议 )

安装步骤:略 .....

2.1.2 下载安装 assp 依赖的 perl 库

Assp 使用了 Perl 的几个特殊的库,在安装 perl 后还需安装其一些依赖库,总之在运行 assp 时提示缺什么你就下什么即可,assp 运行起来后,在其最后一个配置项“ perl model setup ”中列出了那些功能使用了那些模块,如果要开启 assp 对应的功能,一定要看下该配置项的说明是否提示需要提前安装对应的 perl 模块,目前我的 lfs 系统缺失的库如下所示:

libnet-dns-perl

libhtml-parser-perl

Perl 库的安装方法:(区分大小写)

tar -zxvf XXX.tar.gz   ; 解压下载的库

cd   ./xxx         ; 进入目录

perl MakeFile.PL     ; 文件夹下一定有这个文件,如果没有说明库安装包类型不同,                                               ; 请自行查找其安装方式

make && make install; 编译安装

2.1.3 下载安装 assp

1. 去 sourceforge 官网搜索 anti-spam smtp proxy 可直接下载源程序

略 ...

2. 解压源程序并进入 assp 文件下

3. 找到 assp.pl 文件

注意: assp.cfg 文件是没有的此时,这时 assp 的配置文件

4. 执行 perl assp.pl ,等待几秒钟后直接 ctrl+c 停止(第一次执行会可能会提示你却对应的 perl 模块,下载安装

即可)。

该步骤执行后会产生 assp.cfg 文件

5. 打开 assp.cfg 文件 进行简单的配置。

allowAdminConnectionsFrom 配置:

找到 allowAdminConnectionsFrom 配置项,这个配置项是 assp 后台管理界面的 IP 访问控制,将自己主机的 IP 地址配置进去,本机就可以通过浏览器访问到 assp 的后台管理页面。可进行多 IP 项配置,不配置则全部允许。

多项配置示例: 127.0.0.1|192.168.X.X|X.X.X.X

webAdminPort 配置:

webAdminPort 参数是后台管理界面的服务端口。默认是 55555, 可自行修改。

4. 打开浏览器输入 http: assp 服务 IP :55555

第一次登陆会提示输入用户名密码:

用户名: root

密码: nospam4me

上面的是初始账户密码,进入系统后可自行修改。

下图是成功进入到系统后的界面,参数非常之多,功能非常之强。

三 、 assp 介绍说明

3.1 特别说明

3.1.1. ASSP 的配置包含四种类型

a) 第一种是 checkbox 型,勾选则激活,取消则 disable ;

b) 第二种是设置 、 1 开关型; 表示 disable , 1 则 enable ;

c) 第三种是列表型,在一个输入框内输入匹配规则,规则遵循 perl 的正则表达式,如以 "|"  表示 " 逻辑或 " ;

d) 第四种为带 "*" 的选项,除了支持第二种配置方法外,还可以以 "file:FILENAME" 的方式指    定配置文件,文件内每行一个规则,同样支持 perl 正则表达式。定义为 file:FILENAME          形式的输入框后面会有一个 "Edit File" 按钮,单击可以编辑指定的文件;

3.2 名词介绍

3.2.1Greylist :灰名单

为独立于黑白名单而命名,内容为 IP 地址,这类名单不一定就是垃圾邮件的发送者,但服务器在第一次接受到从该 IP 发送过来的邮件时,会产生一个 451 错误: Resources_temporarily_unavailable._Please_try_again_later ,一般的垃圾邮件发送软件就会放弃重试,但正常的邮件服务器却因为队列时间的原因,会在一定的时间内重试,这在一定程度上可以减少垃圾邮件进入服务器的几率。

3.2.2 Redlist :红名单

Redlist 是针对某些特殊帐号而引入的,可能也是 ASSP 特有的吧;因为 ASSP 可以让用户参与添加、删除黑白名单,但不可避免的也存在部分帐号,管理员不允许(或不希望)对黑白名单有添加删除权限;将这类帐号添加到 Redlist 中后,他们对黑白名单的添加删除操作将会被忽略。

3.2.3 RBL :实时黑名单

通过查询发件 IP 是否存在于 rbl 服务商提供的列表,以确定邮件是否是垃圾邮件;国外最知名的是 spamhaus.org ,还有njabl.org , dsbl.org , sorbs.net 等。都提供免费的 RBL 服务。

3.2.4 White/Black list :黑、白名单

通过查询发件人 IP 、域、 email 地址是否存在于自定义的白 / 黑名单,来确定该邮件是否为垃圾邮件。

3.2.5 Bayes :

基于 Thomas Bayes 的伟大理论: " 某件事情发生的概率大致可以由它过去发生的频率近似地估计出来 " ,(他的另外一个理论也同样让人震撼: " 上帝的存在可以通过方程式证明 " )通过对已经存在的垃圾邮件 (./spam) 和非垃圾邮件(./notspam) 进行统计分析,可以推断新收到的这封邮件是否是垃圾邮件的概率; ASSP 通过对邮件中的现有词汇进行分析并给出一个评分值保存在一个库中,在收到一封新邮件时通过对现有库中词汇的匹配程度进行相应的评分,超过某个分值则认为是垃圾邮件。所以进行 Bayes 分析需要大量的已知条件 --ASSP 要求超过 400 封垃圾邮件和非垃圾邮件 -- 条件满足时,你就可以通过重建 spamdb ,让 ASSP 学习你所处的环境中那些是垃圾邮件,那些不是垃圾邮件了。

3.3 工作模式

3.3.1 使用方法 1

进来的邮件 Internet==== 〉 ASSP===== 〉 Mailserver====== 〉 Local user ;

出去的邮件: Local user===== 〉 ASSP====== 〉 Mailserver==== 〉 Internet ;

这也是 ASSP 推荐的架构方法;而且 ASSP 可以识别 User 到 Mailserver 之间认证成功与否的状态。这样认证成功的用户也拥有和 localuser 同样的权限。

3.3.2 使用方法 2

进来的邮件: Inernet==== 〉 ASSP===== 〉 Mailserver====== 〉 Local user ;

出去的邮件: Local user===== 〉 Mailserver======= 〉 Internet ;

报告垃圾邮件和添加黑白名单: Local user=== 〉 Mailserver===== 〉 ASSP ;

以上就是开源的反垃圾邮件软件ASSP的简单介绍,其实现在“ 邮件内容安全” 已经是邮件安全的重心了,反垃圾、反病毒已经是很成熟了,目前对用户邮件内容信息的保护很多邮件厂商只能提供基础的安全手段,要不然各种邮件泄密事件也不会频频发生。针对这一块,国内的" 隐密邮”就是以 邮件加密网关 的形式处理加解密邮件的,而且是“ 邮件透明加密 ”处理,是以单纯的 MTA 形式转发处理的,既不在客户端也不在服务器,是实时传输加解密的,这样邮件就不会被其落地 ( 反垃圾防病毒都需要先全部收取邮件后再处理转发的 ) ,安全性上也很好,加密后的邮件会在邮件服务器上以密文形式存在,这样就算服务器被攻破也不用怕,现在也有免费的试用平台可以测试试用,关键是不像ASSP这样拥有复杂的配置手段,下一篇我将讲解下关于 隐密邮的文章。

原文地址:https://www.cnblogs.com/mail-safe/p/10647866.html

时间: 2024-08-07 23:20:08

邮件安全防护之反垃圾邮件开源软件ASSP的相关文章

国际反垃圾邮件组织有哪些?

提起国际反垃圾邮件组织,恐怕大部分人还是从一度闹的沸沸扬扬的封杀我国电子邮件时间开始注意它们的.从2001年开始,由于出现大量来自我国的垃圾邮件,一些国际反垃圾邮件组织将一些中国著名邮件运营商列入垃圾邮件服务器黑名单,造成了巨大的损失和影响.这件事引起了各界对我国垃圾邮件问题的重视,也在某种程度上促使我国开始进行反垃圾邮件行动. 这里向大家介绍世界上最著名的四个反垃圾邮件组织. Spanhause 组织主页:http://www.spamhause.org Spanhause是一个致力于消灭垃圾

使用Exchange反垃圾邮件组件解决内部仿冒邮件

最近一个朋友遇到一个很有意思的问题,在生产环境中我们装好Exchange之后,肯定需要配置外部邮件的收发.按照我们对邮件系统的理解,我们必须在default 接收连接器上的权限设置,允许匿名连接,才能实现外部邮件的接收.如果我们不配置匿名权限,那么外部邮箱在往我们的邮件系统域发送邮件时就会遇到类似以下的错误: 但在没有反垃圾邮件措施的情况下,我们可以使用telnet工具,实现匿名的邮件发送,并可以任意的冒名发送: 在上图中,我们用telnet工具非常轻松的就冒名邮件系统域的Postmaster邮

在java中使用RBL服务器(中国反垃圾邮件联盟的CBL+使用)

这是06年写的,不知道现在RBL改了没,不过恢复过来做记录,以后可能需要. 实时黑名单(RBL)实际上是一个可供查询的IP地址列表,通过DNS的查询方式来查找一个IP地址的A记录是否存在来判断其是否被列入了该实时黑名单中.基于这条原理,那么要写客户端就比较容易了. 使用JNDI查询 DirContext ictx = new InitialDirContext();Attributes a = ictx.getAttributes("dns://cblplus.anti-spam.org.cn/

exchange 2013启用反垃圾邮件禁止发件人为空

今天遇到一个客户经常收到发件人为空的邮件.要阻止发件人为空的邮件需要使用exchange里面的反垃圾邮件功能. 客户使用的邮件环境是两个exchange 2013的服务器. 默认exchange 2013是没有启用反垃圾邮件的功能的所以要实现这个功能需要以下的步骤 1 启用反垃圾邮件功能 2 重启传输服务 3 指定SMTP服务器即是启用了反垃圾邮件功能的exchange服务器 4 启用发件人筛选 5 禁用发件人为空的邮件. 这里不上图了>>>>>>> 1 首先以管

国内和国际反垃圾邮件组织

如果你公司是自建邮箱,经常会被国内或者国际反垃圾邮件组织列入黑名单. 请第一时间在这些网站查看自己邮箱的IP地址是否被列入黑名单. http://mt.icoremail.net/ym/在这个网站查询会跳转到  http://mxtoolbox.com/  http://www.spamhaus.org/sbl/index.lasso  https://www.spamcop.net/bl.shtmlhttp://www.senderbase.org/search?page=sendershtt

反垃圾邮件智能网关之梭子鱼

梭子鱼网络 (Barracuda Networks , Inc.,以下简称"梭子鱼") 2003年成立于美国加州坎贝尔,拥有目前比较流行的反垃圾邮件的智能网关设备.梭子鱼为大量的企业级Exchange邮件系统起到了保驾护航的决定性作用,过滤和拦截目前公网上的绝大部分垃圾邮件和病毒邮件,使得企业用户能够更好更安全的使用Exchange邮件系统.今天我们就来讲讲微软Exchange Server和梭子鱼反垃圾邮件网关的结合. 1. 原理概述 梭子鱼反垃圾邮件及病毒邮件防火墙是一款专业过滤垃

9.2 配置反垃圾邮件功能

在 Microsoft Exchange Server 2013 中,可在邮箱服务器上的传输服务中使用以下反垃圾邮件代理,但是默认情况下不会安装这些代理: 内容筛选器代理 发件人 ID 代理 发件人筛选器代理 收件人筛选器代理 发件人信誉的协议分析代理 但是,可以通过在 Exchange 命令行管理程序中使用脚本,在邮箱服务器上安装这些反垃圾邮件代理. 通常,仅当组织接受所有传入邮件而之前未进行任何反垃圾邮件筛选时,才会在邮箱服务器上安装反垃圾邮件代理. 在MBX上,打开EMS CD "C:\P

在exchange2010中安装反垃圾邮件功能

安装反垃圾邮件功能 1.exchange 管理员身份登录,打开exchange management shell 2.进入脚本文件夹"C:\Program Files\Microsoft\Exchange Server\V14\Scripts",执行.\instatll-antispamagent.ps1"命令安装反垃圾组件 3.重启Microsoft exchange transport 4.重新打开exchange 管理控制台窗口,点击"组织配置----集线器传

Exchange 2010 预防被恶意中继及配置反垃圾邮件功能

近期 ,本公司Exchange 2010邮箱服务器发送邮件到QQ邮箱,邮箱服务器经过一天反馈:邮件未送达 .经排查发现Exchange服务器无法访问QQ邮箱服务器25端口且传输队列垃圾现象严重,判断Exchange邮箱服务器被中继. Exchange 环境为一台服务器,安装了邮箱.客户端访问.集线器传输3中角色,未安装边缘传输 ,未安装邮件防火墙. 传输队列现象如图: 邮件日志记录,如图: 解决思路及步骤 测试确认邮箱服务器能够访问到QQ 邮箱服务器的25 端口  若弹出"220 newmx.q