快速架设mail过滤系统

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

作者: 我本善良

我们大概都知道目前virus大多是经过e-mail来传播的。而且很多公司的使用计算机的人员对

于附档名是exe,vbs,这类的大多不会有戒心,反正有的看东西就照看。谁知道一点,就变

成了传播vires的人了,而且因此计算机当机了还会装出一个无辜的脸请MIS的人来看,所以呢

我就来说一些免钱的解决方法,

一:

请到这个网站下载程序。

http://batemail.sourceforge.net/

batemail-0.6.1.tgz

二:

cp /etc/sendmail.cf /etc/sendmail.cf.old

chmod 600 sendmail.cf.old

三:

Mlocal, P=/usr/bin/procmail, F=lsDFMAw5:/|@qShP, S=10/30, R=20/40,

T=DNS/RFC822/X-Unix,

A=procmail -a $h -d $u

把sendmail.cf上头的东西改成底下

Mlocal, P=/usr/local/bin/batemail, F=lsDFMAw5/|@qShP, S=10/30, R=20/40,

T=DNS/RFC822/X-Unix,

A=batemail -a $h -d $u

请注意/usr/local/bin/batemail 这个是指您把程序放在哪里。不想放这里您就自已改之。

四:把batemail-0.6.1.tgz里头的notice?放在/usr/local/etc/ 当然这个档是可以改成中

文的。想改什么自已动。

五:重新激活 sendmail ,现在您的 mail server 已可过滤 exe.com.vbs.scr等扩展名为

此的附加?。如果您连mpg . mp3 也想过滤,去看看batemail的程序自已改吧,很容易的。

嗯…下课

*******************************

第二课:自动拷贝信件给某人

作者: 我本善良 (211.75.137.---)

日期: 01/05/29 22:08

一:

在程序加上这个变量

$USER="/var/spool/mail/asako";

这里指的是所有的信件都会转寄给这个人,那为什么要放这里,因为这样才可以用pop3 的

client 来收信,我想您该不会叫老板用pine来看信吧。

二:修改 batemail档案

system($execstr);

exec("/bin/cat $tempname $USER");

unlink($tempname);

程序修改完成,您不用重新激活sendmail,试着寄封信看看是不是ok呢…

请自行搭配.forward 的功能,这样大概公司所有的信件都跑不掉了。

嗯…第二节说到这里,下课…

PS...请网管人员勿作坯事,毕竟偷看别人的信件不是很好…如果你作了,请不要说是我教

的^^。

**********************

只警告不杀档的作法

作者: 我本善良 (211.75.137.---)

日期: 01/05/31 23:44

最后一课了,也请网友不要再写信来问我有关这个程序的一些奇怪的问题,谢谢合作。

一:

设个变量

$NOTICEFILE1="/usr/local/etc/notice1";

这里的 notice1 表示您要提示的内容

二:

sub IsBoundary() 里有个

return -1; 改为 return -2;

三:新加一个 function

sub PrintEx

{

my $result;

$result = open (NOTICE1, $NOTICEFILE1);

if ($result)

{

while ()

{

print;

}

close (NOTICE1);

}

else

# A default notice, in case there isn't a valid notice file

{

print "This message has been altered to remove potentially ";

print "malicious content.\n\n";

print "Please contact your network administrator for ";

print "more information.\n";

LogIt("Warning: No notice file present");

}

return 0;

}

四:

找到以下的程序

$match=IsBoundary($line);

if ($match -1)

{

PrintEx();

print $line;

五:

LogIt("Blocking attachment");

# Tell the poor sod why we mangled his email

加上 # 号 # PrintExplanation();

$banning=$match;

收工下课

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有