王朝网络
分享
 
 
 

Qmail加装自动杀毒

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

第一章

Qmail-scan+Mcafee VirusScan Command Line

qmail-scan的网站 http://qmail-scanner.sourceforge.net/,最新版本1.22

需要依赖的程序

reformime (来自 Maildrop 1.3.8+ )

Perl 5.6.1

Perl module Time::HiRes

Perl module DB_File (可能不需要或者系统已经存在)

Perl module Sys::Syslog (可能不需要或者系统已经存在)

TNEF unpacker

这里介绍手动安装,主要是不想重新编译Qmail加入QMAILQUEUE

安装Mcafee VirusScan Command Line,并且将uvscan ln到/usr/local/bin 和 .so文件ln到/usr/local/lib

tar zxf qmail-scanner-1.22.gz

cd qmail-scanner-1.22

配置qmail-scanner,路径自定义,yourdomain替换为你的域名,详细的参看./configure --help

./configure --spooldir /mail/qmailscan --qmaildir /mail/qmail --bindir /mail/qmail/bin --qmail-queue-binary /mail/qmail/bin/qmail-queue.real --admin root --domain yourdomain --notify recips --local-domains yourdomain --silent-viruses auto --lang en_GB --debug no --unzip 1 --add-dscr-hdrs 0 --archive 0 --redundant no --log-details 0 --log-crypto 0 --fix-mime 2 --scanners "uvscan" --ignore-eol-check 0 --no-QQ-check

添加用户和组

pw groupadd qscand -g 65530

pw useradd qscand -g qscand -d /mail/qmailscan -s /nonexistent -u 65530

创建目录

mkdir -p /mail/qmailscan

mkdir -p /mail/qmailscan/quarantine/tmp /mail/qmailscan/quarantine/cur /mail/qmailscan/quarantine/new

mkdir -p /mail/qmailscan/working/tmp /mail/qmailscan/working/cur /mail/qmailscan/working/new

mkdir -p /mail/qmailscan/archive/tmp /mail/qmailscan/archive/cur /mail/qmailscan/archive/new

复制文件,设置权限

cp quarantine-attachments.txt /mail/qmailscan/

chown -R qscand.qscand /mail/qmailscan/

cp qmail-scanner-queue.pl /mail/qmail/bin/qmail-scanner-queue.pl

chown qscand.qscand /mail/qmail/bin/qmail-scanner-queue.pl

chmod 4755 /mail/qmail/bin/qmail-scanner-queue.pl

初始化qmail-scan,代替qmail-queue先调用

/mail/qmail/bin/qmail-scanner-queue.pl -h

/mail/qmail/bin/qmail-scanner-queue.pl -z

/mail/qmail/bin/qmail-scanner-queue.pl -g

mv /mail/qmail/bin/qmail-queue /mail/qmail/bin/qmail-queue.real

ln -s /mail/qmail/bin/qmail-scanner-queue.pl /mail/qmail/bin/qmail-queue

mcafee病毒库自动更新脚本update.sh, 放在uvscan目录下面

#!/bin/sh

install_directory=`dirname $0`

mkdir /tmp/dat-updates

cd /tmp/dat-updates

current_version=`$install_directory/uvscan --version | grep "Virus data file" | awk '{ print substr($4,2,4) }'`

ftp "ftp://ftp.nai.com/pub/datfiles/english/dat-*.tar"

new_version=`echo dat-*.tar | awk '{ print substr($1,5,4) }'`

if [ "$current_version" -ge "$new_version" ]

then

echo "No new .DATs available at this time"

echo "Currently installed version: $current_version"

echo "Version on FTP site: $new_version"

else

tar -xf dat-*.tar

for file in `tar -tf dat-*.tar`

do

newfile=`echo $file | tr [A-Z] [a-z]`

mv -f ./$file "$install_directory/$newfile"

done

current_version=`$install_directory/uvscan --version | grep "Virus data file" | awk '{ print substr($4,2,4) }'`

if [ ! "$current_version" -eq "$new_version" ]

then

echo "DAT file updates did not work correctly."

echo "Please try manually."

else

echo "DAT file updates successful"

echo "Currently installed version: $current_version"

fi

fi

cd /

rm -rf /tmp/dat-updates

chmod +x update.sh

做个crond每6小时更新一次

0 */6 * * * /uvscan-path/update.sh

如果邮件系统负荷很大,可以考虑使用sophie+sophos来做

sophie能够作为一个daemon,将病毒引擎和病毒库装载在内存中,然后创建一个socket供其他程序调用

以下简略说明一下

1.安装好sophos,默认路径为 /usr/local/sav

ln -s /usr/local/sav/libsavi.so /usr/local/sav/libsavi.so.3

ln -s /usr/local/sav/libsavi.so /usr/local/lib/libsavi.so.3

运行./sweep能够正常给出参数信息

2.下载sophie,编译,安装

./configure --prefix=/usr/local/sav/sophie --with-savilib=/usr/local/sav

make

mkdir /usr/local/sav/sophie

mkdir /usr/local/sav/sophie/bin

mkdir /usr/local/sav/sophie/etc

mkdir /usr/local/sav/sophie/var

cp sophie /usr/local/sav/sophie/bin

ln -s /usr/local/sav/sophie/bin/sophie /usr/local/bin/

cp etc/sophie.cfg etc/sophie.savi /usr/local/sav/sophie/etc

ln -s /usr/local/sav/sophie/etc/sophie.cfg /etc/

手动设置好/usr/local/sav/sophie/etc 下面的sophie.cfg和sophie.savi

注意sophie.cfg里面的设置sophie运行的用户用root,组用qscand

sophie.savi可以将所有类型的检查都打开,例如zip/rar之类的

先直接启动sophie, /usr/local/bin/sophie

3.重新配置qmail-scanner

./configure --spooldir /mail/qmailscan --qmaildir /mail/qmail --bindir /mail/qmail/bin --qmail-queue-binary /mail/qmail/bin/qmail-queue.real --admin root --domain yourdomain --notify recips --local-domains yourdomain --silent-viruses auto --lang en_GB --debug no --unzip 1 --add-dscr-hdrs 0 --archive 0 --redundant no --log-details 0 --log-crypto 0 --fix-mime 1 --scanners "sophie" --ignore-eol-check 0 --no-QQ-check

....

因为sophie能够直接检查zip等,可以将qmail-scanner里面关于zip/tnef这些的变量值设为空

例如my $unzip_binary='';

............

4.一切工作正常,就可以将sophie放入后台运行

sophie -D

5.关于病毒库更新

在 http://www.sophos.com/downloads/ide

找到对应你的sophos的版本的ide的更新下载URL,我的是3.80为

http://www.sophos.com/downloads/ide/380_ides.zip

写个script自动更新

cd /usr/local/sav

rm 380_ides.zip

fetch -q "http://www.sophos.com/downloads/ide/380_ides.zip"

unzip -o -qq 380_ides.zip

kill -HUP `cat /usr/local/sav/sophie/var/sophie.pid`

有关sophie,参见

http://www.vanja.com/tools/sophie/

并且阅读qmail-scanner的FAQ

另外,qmail-scanner建议使用daemontools来运行sophie

用于限制sophie的资源使用和检查sophie daemon是否还活着

另外,发现必须用perl 5.6才能跑起来 qmail-scanner 不知道是不是RPWT

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有