一. 前言:
随着email在企业里广泛使用,它已经成为传播病毒的最主要的手段,保护企业用户免受可能带病毒的邮件附件的感染,尤其是可执行文件的邮件附件,我们需要过滤那些可能带有病毒的附件的邮件,当前主要的做法是在sendmail把 邮件送到用户信箱前由procmail进行过滤,但是更好的方法是在smtp传送期间由sendmail本身进行过滤,本文就是重点在于讲述如何使用sendmail在smtp传输期间进行过滤。
二. 基于sendmail的过滤器的优点
较之于传统的procmail的邮件过滤器,基于sendmail的有如下优点:
1) 对每封邮件过滤一次,而不是对每个接收者过滤一次(传统的基于procmail的做法)。
2) 如果安装在企业的主邮件服务器上,可以在第一道入口拒绝进来的带有可执行附件的邮件。
3) 可以利用inte.net上有经验的程序员写的过滤程序,而不是自己写的procmail过滤程序。
4) 可以防止企业内部用户发出可执行的附件的邮件给外部用户,成为好的inte.net公民。
三. 所需软件
我们选用开放源的基于sendmail和perl语言的mimedefang 过滤系统,它利用最新版本sendmail提供的mail filter api且使用perl语言写的程序和过滤规则。
其主页在:http://www.roaringpenguin.com/mimedefang/
四. 步骤
a. 下载所需的相关软件
一台正在工作的linux服务器 (这里我用的是redhat 7.2)
perl 5.001或者更高 (redhat 7.2已经带有)
四个所需的perl附加模块
mime-tools-5.410.tar.gz
io-stringy-1.212.tar.gz
mime-base64-2.11.tar.gz
mailtools-1.1401.tar.gz
sendmail 8.12.1
mimedefang 2.1
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器