[转]免费邮件服务器hMailServer搭配SpamAssassin过滤垃圾邮件:安装和设置
[转]免费邮件服务器hMailServer搭配SpamAssassin过滤垃圾邮件:安装和设置
(转自http://dagai.net/archives/838)
为了解决垃圾信泛滥的状况,这两天「跨界」测试了运行在Windows上的免费Mail server:hMailServer,它内建了与垃圾邮件过滤软件SpamAssassin的连结,也能透过ClamWin来 进行病毒扫描。这些软件全部是自由使用的,不花一毛钱就能在Windows平台上建立电子邮件环境。不过,在SpamAssassin的使用上却遭遇许多 困难,网络上的数据泰半都是Linux的操作方法,教导Windows版本的数据非常稀少,或许本篇测试能为大家提供一些参考。
为了避免文件夹名称问题造成状况,建议将这些软件都安装在不含空格符的文件夹里,如c:\hMailServer、c:\SpamAssassin等。
下载并安装
下载路径如下,自行下载并依指示安装。
- hMailServer:下载网址
- SpamAssassin:Win32的版本叫做SAwin32—SpamAssassin for Win32,下载下列3个档案:
- SpamAssassin for Win32 command-line tools
- SA-learn
- SA-update
- ClamWin:下载网址
设定hMailServer
hMailServer需要使用数据库,默认是使用SQL Server Compact 3.5,若安装的主机没有安装的话,hMailServer的安装程序会自动下载并安装。 简述其他设定的几个重点:
- 新增Domain,记得防火墙要开启
- 新增Domain后,由其内的Accounts新增账号,用其右键菜单的Add AD account就能汇入Windows AD账号进来
- 点击【Utilities→Diagnostics】并选择Domain后测试,全部绿灯表示一切正常
- 为了方便观察与除错,将【Settings→Logging】里的各式讯息等级都勾选,尔后就能在c:\hMailServer\Logs里检视Log檔
- 【Settings→Anti-spam】待SAwin32设置后再来设定
执行SAwin32的spamd
SAwin32里我们主要用来处理过滤功能的是spamd.exe(Spam Daemon),spamd的参数不少,完整的指令可以参考spamassassin.apache.org上的说明。我们只使用两参数:
- –syslog:将执行过程输出到指定的Log檔
- -D:产生除错讯息
c:\SpamAssassin\spamd --syslog="c:\SpamAssassin\spamd.log" -D
spamd.exe以背景方式执行,可透过任务管理器来终结它。执行的过程只能经由观察spamd.log来确认。
设定hMailServer与SAwin32的连结
只要勾选【Settings→Anti-spam→SpamAssassin页签→Use SpamAssassin】就可以了,勾选后每个hMailServer收到的mail就会丢给spamd做运算与处理,当spamd计算某信件的分数超 过5时,就判定为垃圾邮件,接着spamd在mail主旨开头插入[SPAM]或**SPAM**等字符串,再给你使用的mail client收信,我们只要再建立邮件规则来过滤主旨含有SPAM字符串的信件,自动做删除即可。当正确率到达较高的程度时,就可以考虑在Mail server上直接把垃圾邮件删掉。
最后记得将【Settings→Anti-spam】里的DNS blacklist与SURLBL Servers都Enable,这样应该能过滤一大半的垃圾邮件。
如何让SpamAssassin自动学习
SpamAssassin是使用贝氏运算来逐步增加垃圾邮件的判断正确率,SA-learn.exe就是能用来学习的指令,我们以下列几个步骤来达成自动学习的处理:
- 新增一个专门存放垃圾邮件的账号,如spam@你的domain
- 变更mail client处理SPAM字符串的规则,增加转寄到 spam@你的domain 的处理,亦即当主旨带有[SPAM]或**SPAM**时,除了删除mail client收信匣里的该信件外,同时转寄给 spam 账号
- hMailServer spam账号的收件文件夹是c:\hMailServer\Data\你的Domain\spam\,每封存入的信件会产生成一组十六进制数字组成的文件名,并以数字开头两码为子数据名,例如下图是在08文件夹里有两个以{08开头的垃圾邮件:
目录: C:\hMailServer\Data\你的Domain\spam\082010/04/23 11:23p . 2010/04/23 11:23p .. 2010/04/23 03:27p 7,382 {086300AB-29A4-45EF-B0DA-CD1CAE7016A5}.eml 2010/04/23 05:07p 7,748 {08D474C0-F05C-491C-8CC9-1ECB5EFCEA33}.eml 3 个档案 15,130 字节 2 个目录 17,234,300,928 字节可用
- 将所有c:\hMailServer\Data\你的Domain\spam\里的文件夹写入c:\SpamAssassin\spam-dir.lst,例如:
c:\hMailServer\Data\你的Domain\spam\08 c:\hMailServer\Data\你的Domain\spam\2A c:\hMailServer\Data\你的Domain\spam\2C ... c:\hMailServer\Data\你的Domain\spam\FE c:\hMailServer\spam-dir
spam-dir.lst的最后一行c:\hMailServer\spam-dir是存放垃圾邮件档案(*.eml)的文件夹,系统管理人员也可以把垃圾信存成.eml放入这个文件夹让SA-learn.exe来读取。
将以下指令存成learn-spam.bat:
@echo off
echo start %DATE% %TIME% > learn-spam.log
c:\SpamAssassin\sa-learn.exe –spam –folders=”c:\SpamAssassin\spam-dir.lst” >> learn-spam.log
echo end %DATE% %TIME% >> learn-spam.log
执行sa-learn.exe时会读取列在spam-dir.lst里的每个文件夹里的每封信件,解析、记录这些垃圾邮件的特征。
- 另外也新增 nospam@你的Domain 账号,用来存放误放到 spam 的信件,也建立nospam-dir.lst与nospam-dir文件夹,最后同样建立批处理文件learn-nospam.bat,让sa-learn.exe学习这些是非垃圾信:
@echo off
echo start %DATE% %TIME% > learn-nospam.log
c:\SpamAssassin\sa-learn.exe –ham –folders=”c:\SpamAssassin\nospam-dir.lst” >> learn-ham.log
echo end %DATE% %TIME% >> learn-ham.log
将上述的learn-spam.bat与learn-nospam.bat加到「控制台→排定的工作」里,设定排程以自动执行,例如可以设定每两个小时分别执行学习一次。
转载于:https://blog.51cto.com/avensky/794995
[转]免费邮件服务器hMailServer搭配SpamAssassin过滤垃圾邮件:安装和设置相关推荐
- amd 邮件 服务器,[转]免费邮件服务器hMailServer搭配SpamAssassin过滤垃圾邮件:安装和设置...
为了解决垃圾信泛滥的状况,这两天「跨界」测试了运行在Windows上的免费Mail server:hMailServer,它内建了与垃圾邮件过滤软件SpamAssassin的连结,也能透过ClamWi ...
- 邮件服务器hMailServer管理工具hMailServer Administrator汉化
//实现:邮件服务器hMailServer管理工具hMailServer Administrator的汉化 //环境: Windows Server 2008 R2 hMaelServer Admin ...
- TurboMail邮件服务器腾云驾务云化邮件办公
2019独角兽企业重金招聘Python工程师标准>>> 诚然从整个大的市场环境来讲,基于云的应用越来越多,像google眼镜这样的东西,它的背后如果没有云计算去支撑它的话,恐怕人类科 ...
- 如何让gmail不过滤垃圾邮件
有个用户报怨他的好多国外邮件收不到, 跑去后台一看都到垃圾邮件里去了. 因为用的是google的免费企业邮件, 应该是google的垃圾过滤系统给过掉了. 在我的印象中gmail的垃圾过滤还是值得 ...
- 贝叶斯推断及其互联网应用(二):过滤垃圾邮件
上一次,我介绍了贝叶斯推断的原理,今天讲如何将它用于垃圾邮件过滤. ======================================== 贝叶斯推断及其互联网应用 作者:阮一峰 (接上文) ...
- 贝叶斯算法 — 朴素贝叶斯分类器— 过滤垃圾邮件 — 流失用户 — 用户画像
目录 应用 1. 胃疼胃癌 2. 过滤垃圾邮件 朴素贝叶斯分类器 概念介绍 朴素贝叶斯分类器原理 贝叶斯分类器的应用 公式 求得是后验概率,等式右侧为先验概率 贝叶斯定理本质:通过 先验概率 求 后验 ...
- 邮件服务器WinWebMail 3.7.1.1 企业版安装/注册机使用方法
首页 推荐日志 留言 框架转换 登陆 « 强行关闭进程 人无横心,难成大事... » 分类: 技术文章 邮件服务器WinWebMail 3.7.1.1 企业版安装/注册机使用方法 [ 2006-08- ...
- 鸡尾酒疗法过滤垃圾邮件
鸡尾酒"疗法过滤垃圾邮件--金笛邮件系统 · 多种方式"狙击"垃圾邮件 不管是个人用户还是企业用户,每天信箱中涌进来大量的垃圾邮件都给我们带来很多烦恼.金笛在对付垃圾邮件 ...
- python垃圾邮件识别_【Python】垃圾邮件识别
下载W3Cschool手机App,0基础随时随地学编程 导语 利用简单的机器学习算法实现垃圾邮件识别. 让我们愉快地开始吧~ 相关文件 密码: qa49 数据集源于网络,侵歉删. 开发工具 Pytho ...
最新文章
- winform生命周期(备忘)
- 微服务2017年度报告出炉:4大客户画像,15%传统企业已领跑
- AChartEngine绘制图形
- Visual Studio 2008 每日提示(三十一)
- 200804C阶段一变量生存期和结构体
- mybaits中resultMap实现多对多查询映射
- 十二省联考2019游记
- Silverlight 2.5D RPG游戏技巧与特效处理:(七)动画特写
- python3安装教程配置配置阿里云
- [原创]将本地代码共享到github的操作步骤
- java B2B2C Springboot多租户电子商城系统-Eureka源码解析...
- 【C/C++】变量的内存分配
- 使用CounterDownTimer实现时分秒倒计时
- 实现了某一个接口的匿名类的例子_“全栈2019”Java多线程第三章:创建多线程之实现Runnable接口...
- v8声卡调音软件_V8声卡调试:软件音效、变声效果及消除电流降噪教程
- Windows 下安装 MySQL 及使用可视化工具执行 SQL 脚本过程记录
- python arp 网关_python arp欺骗伪造网关代码详解
- python双星号什么运算_Python中的*(星号)和**(双星号)完全详解
- Detail-revealing Deep Video Super-resolution 论文笔记
- ResNet网络 残差块的作用