服务器 频道

为Linux各种应用服务器配置Clamav防毒工具

  【IT168 专稿】很少的病毒能够在linux的运行和繁衍。而且,由于目前客户端计算机都使用的是Windows,所以病毒制造者们更愿意去写Windows下的病毒。但是还有很多的原因能致使您使用一些病毒扫描程序的,比如:

  " 扫描在您计算机上的Windows设备

  " 扫描在本地网络中的Windows计算机

  " 扫描您即将要传送给别人的文件

  " 扫描您将要发送给别人的电子邮件

  Clamav是一个UNIX下开源(GPL)杀毒软件包,这个软件最主要目的是集成在邮件服务器里,查杀邮件附件中的病毒。软件中包含主要一个灵活可升级的多线程后台程序,一个命令行扫描程序,一个自动升级程序,软件运行基于随Clam Anti使用编辑器修改rus软件包同时发布的共享库文件。你也可以在你的软件中使用这些共享库文件,最重要的是,病毒库升级的很快很及时。 主要特征:

  命令行扫描程序

  高效,多线程后台运行

  支持sendmail的milter接口

  支持数字签名的病毒库升级程序

  支持病毒扫描C语言库

  支持按访问扫描(Linux FreeBSD Solaris)

  病毒库每天多次升级(可以查杀的总病毒数量见主页)

  内置支持RAR(2.0),Zip,Gzip,Bzip2,Tar,MS OLE2,MS Cabinet files,MS CHM(压缩的HTML),MS SZDD压缩格式

  内置支持mbox,Maildir和原始邮件文件格式

  内置支持UPX,FSG,和Petite压缩的PE可执行文件

  一、 Clamav 基本安装

  1 首先检查Zlib库

  Clamav需要zlib库 1.22 以上,zlib是个支持gzip文件格式的函数库,它使得gz文件的存取就犹如开档关档一样地容易,您可以很容易地为您的程序加入gz档的支持。使用#rpm -qa|grep zlib 命令查看。

  2 建立用户和用户组的命令:

  # groupadd clamav

  # useradd -g clamav -s /bin/false -c "Clam Antivirus" clamav

  3 下载安装软件

  #wget http://www.hacker-soft.net/tools/Assessment/clamav-0.91.2.tar.gz

  # tar -zxvf clamav-0.91.2.tar.gz

  # cd clamav-0.91.2

  # ./configure --sysconfdir=/etc

  # make

  # su -c "make install"

  完成安装。Clamav配置文件如表-1 。

  4 修改配置文件

  使用编辑器修改 /etc/clamd.conf

  在 Example 前面加 #

  使用编辑器修改 /etc/freshclam.conf

  在 Example 前面加 #

  把 Checks 从 "24" 改为 "4"

  这样是每4小时更新一次病毒码。

  在 DatabaseMirror database.clamav.net 行下面在加入几个地址,更多镜像地址请参考文档 clamav.pdf

  DatabaseMirror clamav.inet6.fr

  DatabaseMirror clamav.netopia.pt

  DatabaseMirror clamav.sonic.net

  5 设置clamav随服务器开机自动启动

  使用编辑器修改 /etc/rc.d/rc.local

  加入下面二行:

  /usr/local/bin/freshclam

  /usr/local/bin/clamd

  6 测试

  clamdscan -文件及目录的扫毒

  #  clamdscan -v /usr/share/doc/clamav*

  #  clamdscan -v /home/<user>

  说明:ClamAV只会去扫描对于ClamAV可以读取的文件。如果您想扫描所有文件,在命令前加上 sudo参数。

  其他具体参数详解:

  -n 在扫描邮件时不加入 clamav的版本号

  -N 当用户发送带病毒的邮件时不警告他,而是立刻丢弃。但收件人会得到提示。

  -q 安静方式, 不发出任何信息 (包括在日志中也不做过多提示,遇到病毒时也只有 Milter : discard 一句话)

  -o 对从系统向外发的邮件做过滤

  -l 对发到系统的邮件做过滤

  这里是一些clamav些例子

  " 扫描所有用户的主目录就使用 clamscan -r /home

  " 扫描您计算机上的所有文件并且显示所有的文件的扫描结果,就使用 clamscan -r /

  " 扫描您计算机上的所有文件并且显示有问题的文件的扫描结果, 就使用 clamscan -r -bell -i /

  使用clamav删除病毒文件

  在扫描的时候,您可以添加'--remove'参数,图 1是工作界面。

  图 1使用clamav删除病毒文件

  7升级clamav的病毒库

  自动定时更新病毒码,防毒程序最重要的工作之一就是更新病毒码,否则防毒软件功能无法防止最新的病毒。根据一般的建议企业最好每四个小时至六个小时更新一次,

  以一般命令启动 freshclam -l /var/log/clamav/freshclam.log

  以守护进程的方式(以下设定每天更新6次)

  freshclam -d -c 6 -l /var/log/clamav.freshclam.log 6

  8 定时运行clamav

  at 命令可计划在特定的时间执行某项任务,且仅执行一次。可采用两种方法使用 at 命令。第一个是直接键入 at 和希望命令运行的时间(可以选择指定日期)。例如:

  $ at 17:20

  echo It's 17:20!

  job 1 at Tue Apr 11 17:20:00 2006

  输入了 at 命令后,它将等待您输入要在指定时间运行的命令。可以输入任意多的命令,这些命令将作为 Shellscript 执行。要终止输入,请使用 end-of-file 命令(通常为 Control-D)。 您所键入的命令将在调用 at 命令的环境副本中执行。这意味着,将记录您的活动 PATH、库和其他环境设置,并用于执行您生成的脚本。通常会在命令完成时将结果通过电子邮件发送给您。指定时间时,可以使用标准时间格式(如前面的示例中所示),也可以使用其他各种缩写技术。如果指定了时间,则将使用该时间的下一个匹配项。例如,如果当前时间是 17:00,而您指定的时间是 17:20,命令将在 20 分钟后执行。如果指定 09:00,则命令将在第二天的上午 9 点执行。

  通常可以使用以下特殊的替换项:

  midnight--12:00 a.m./00:00

  noon--12:00 p.m.

  now--立即执行

  还可以使用 today 和 tomorrow。一些环境(BSD 和 Linux)还可能支持通过加上表示分、时、天、周、月和年的数值来增加指定值的时间的选项。例如,可以使用以下命令来指定某个作业在一周后的当前时间运行:

  $ at now + 1 week

  如果您希望重新计划作业在上次执行之后的一段时间执行,则可以使用这种指定方式。例如,您可能在运行一个运行时间长达数小时的报告,但又希望在一周后再次运行次报告。

  本文使用后者运行'at'命令来使clamscan和freshclam定时运行,比如

  at 6:30 tomorrow

  at>clamscan -i /home/user > mail goodcjh@example.com

  at> <CTRL-D>

  job 3 at 2008-04-28 03:30

0
相关文章