Centos 7.x离线安装ClamAV

项目上有等保需要,又没有预算,查了一圈,linux下的免费杀毒软件大概有ClamAV、Chkrootkit、Comodo、Sophos、Rootkit Hunter、F-PROT。其中以ClamAV(https://www.clamav.net/) 名气最大,使用最广泛,在服务上进行离线安装该软件试试。

安装ClamAV

下载对应的rpm安装包,上传到服务器/usr/local/src目录下

1
https://www.clamav.net/downloads/production/clamav-0.104.2.linux.x86_64.rpm

安装软件并修改配置文件

1
2
3
4
5
6
7
8
cd /usr/local/src/
#安装clamav
rpm -ivh clamav-0.104.2.linux.x86_64.rpm
cd /usr/local/etc/
#复制配置文件
cp clamd.conf.sample clamd.conf
cp freshclam.conf.sample freshclam.conf
#配置文件中需注释掉Example,其他的大多是一些路径相关的设置,我们使用默认的就好,不需要做过多的修改

下载病毒库

1
2
3
4
5
freshclam
#由于未联网无法下载,但我们可以看到病毒库地址,找一台有网络机器下载后上传到/usr/local/share/clamav/目录即可
http://database.clamav.net/main.cvd
http://database.clamav.net/daily.cvd
http://database.clamav.net/bytecode.cvd

使用ClamAV

1
2
3
4
5
6
7
clamscan
参数:
-r 递归扫描子目录
-i 只显示发现的病毒文件
–no-summary 不显示统计信息
--bell 发现病毒报警声提醒
-h 显示帮助信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
--默认扫描当前目录下的文件,并显示扫描结果统计信息
/usr/local/bin/clamscan
--扫描data目录下的所有目录和文件,并显示结果统计信息 
/usr/local/bin/clamscan -r /data 
--扫描data目录下的所有目录和文件,只显示有问题的扫描结果
/usr/local/bin/clamscan -r --bell -i /data
--扫描data目录下的所有目录和文件,不显示统计信息
/usr/local/bin/clamscan --no-summary -ri /data
--扫描/data,删除扫描过程中的发现的病毒文件
/usr/local/bin/clamscan -r /data --remove
--扫描/data并将发现的病毒文件移动至对应的路径下(/tmp/clamav_tmp)
/usr/local/bin/clamscan -r /data --move /tmp/clamav_tmp
--扫描显示发现的病毒文件,一般文件后面会显示FOUND
/usr/local/bin/clamscan -r --infected -i

设置计划任务

1
2
3
4
#每天凌晨2点更新病毒库(无网络可以忽略)
0 2 * * * /usr/local/clamav/bin/freshclam --quiet
#每天凌晨2:30分执行扫描杀毒,将有问题程序移动到/tmp/clamav_tmp目录下
30 2 * * * /usr/local/bin/clamscan -r / --remove -l /tmp/clamav_tmp