ClamAV是一个在命令行下查毒软件,是免费开源产品,支持多种平台,如:Linux/Unix、MAC OS X、Windows、OpenVMS。ClamAV是基于病毒扫描的命令行工具,但同时也有支持图形界面的ClamTK工具。为什么说是查毒软件呢,因为它不将杀毒作为主要功能,默认只能查出您服务器内的病毒,但是无法清除,至多删除文件。不过这样,已经对我们有很大帮助了。
1、快速安装clamav
clamav的官方网站是http://www.clamav.net, 可以从http://www.clamav.net/downloads 下载最新版本,也可以通过yum在线安装clamav,因为clamav包含在epel源中,所以方便起见,通过yum安装最简单。
[root@server ~]# yum install epel-release[root@server ~]# yum -y install clamav clamav-milter
很简单吧,就这样clamav已经安装好了。
2、更新病毒库
clamav安装好后,不能马上使用,需要先更新一下病毒特征库,不然会有告**信息。更新病毒库方法如下:
[root@server ~]# freshclam ClamAV update process started at Wed Oct 24 12:03:03 2018Downloading main.cvd [100%]main.cvd updated (version: 58, sigs: 4566249, f-level: 60, builder: sigmgr)Downloading daily.cvd [100%]daily.cvd updated (version: 25064, sigs: 2131605, f-level: 63, builder: neo)Downloading bytecode.cvd [100%]bytecode.cvd updated (version: 327, sigs: 91, f-level: 63, builder: neo)Database updated (6697945 signatures) from database.clamav.net (IP: 104.16.186.138)
保证你的服务器能够上网,这样才能下载到病毒库,更新时间可能会长一些。
3、clamav的命令行使用
clamav有两个命令,分别是clamdscan和clamscan,其中,clamdscan命令一般用yum安装才有,需要启动clamd服务才能使用,执行速度较快;而clamscan命令通用,不依赖服务,命令参数较多,执行速度稍慢。推荐使用clamscan。
执行“clamscan -h”可**使用帮助信息,clamscan常用的几个参数含义如下:
-r/--recursive[=yes/no] 表示递归扫描子目录-l FILE/--log=FILE **扫描报告--move [路径] 表示移动病毒文件到指定的路径--remove [路径] 表示扫描到病毒文件后自动删除病毒文件--quiet 表示只输出错误消息-i/--infected 表示只输出感染文件-o/--suppress-ok-results 表示跳过扫描OK的文件--bell 表示扫描到病毒文件发出**报声音--unzip(unrar) 表示解压压缩文件进行扫描
下面看几个例子:
(1)、查杀当前目录并删除感染的文件
[root@server ~]# clamscan -r --remove
(2)、扫描所有文件并且显示有问题的文件的扫描结果
[root@server ~]# clamscan -r --bell -i /
(3)、扫描所有用户的主目录文件
[root@server ~]# clamscan -r /home
(4)、扫描系统中所有文件,发现病毒就删除病毒文件,同时保存杀毒日志
[root@server ~]# clamscan --infected -r / --remove -l /var/log/clamscan.log
4、查杀系统病毒
下面命令是扫描/etc目录下所有文件,仅输出有问题的文件,同时保存查杀日志。
[root@server ~]# clamscan -r /etc --max-recursion=5 -i -l /mnt/a.log----------- SCAN SUMMARY -----------Known viruses: 6691124Engine version: 0.100.2Scanned directories: 760Scanned files: 2630Infected files: 0Data scanned: 186.64 MBData read: 30.45 MB (ratio 6.13:1)Time: 72.531 sec (1 m 12 s)
可以看到,扫描完成后有结果统计。
下面我们从eicar.org下载一个用于模拟病毒的文件,看一下clamav是否能够扫描出来,
[root@server mnt]# wget http://www.eicar.org/download/eicar.com[root@liumiaocn mnt]# lseicar.com
然后,重新扫描看是否能够检测出新下载的病毒测试文件。执行如下命令:
[root@server ~]# clamscan -r / --max-recursion=5 -i -l /mnt/c.log /mnt/eicar.com: Eicar-Test-Signature FOUND----------- SCAN SUMMARY -----------Known viruses: 6691124Engine version: 0.100.2Scanned directories: 10Scanned files: 187Infected files: 1Data scanned: 214.09 MBData read: 498.85 MB (ratio 0.43:1)Time: 80.826 sec (1 m 20 s)
可以看到,病毒文件被检测出来了。eicar.com是一个Eicar-Test-Signature类型病毒文件。缺省的方式下,clamscan只会检测不会自动删除文件,要删除检测出来的病毒文件,使用“--remove”选项即可。
5、设置自动更新病毒库和查杀病毒
病毒库的更新至关重要,要实现自动更新,可在计划任务中添加定时更新病毒库命令,也就是在crontab添加如下内容:
* 1 * * * /usr/bin/freshclam --quiet
表示每天1点更新病毒库。
实际生产**应用,一般使用计划任务,让服务器每天晚上定时杀毒。保存杀毒日志,也就是在crontab添加如下内容:
* 22 * * * clamscan -r / -l /var/log/clamscan.log --remove
此计划任务表示每天22点开始查杀病毒,并将查杀日志写入/var/log/clamscan.log文件中。
病毒是猖獗的,但是只要有防范意识,加上各种查杀工具,完全可以避免牧马或病毒的入 侵。