平时我们使用杀毒软件几乎都会在win系统上安装杀毒软件但是一般也没有见过linux的杀毒软件是什么样子的,那么我今天就给大家介绍一下这个Linux杀毒软件。
ClamAV 【Clam AntiVirus】是免费而且开放源代码的杀毒软件,软件与病毒码的更新皆由社群免费发布。目前 ClamAV 主要是使用在由Linux、FreeBSD等Unix-like系统架设的邮件服务器上,提供邮箱的病毒扫描服务。今天怪先生就给大家分享一下 ClamAV 在CentOS上的安装和使用方法。
明月推荐用epel源进行安装,虽然需要系统能访问外网才行。但是比较适合我们 VPS 使用。安装后会自动生成服务文件,启动服务后,会实时监控扫描连接,虽然安全性高了,不过可能会对服务器性能有影响,这个大家根据自己服务器性能自由取舍即可,一般建议是使用clamdsacn
命令手动扫描系统,扫描速度快,不占用系统资源,需要的时候用就可以了!
安装
根据自己的系统版本下载相应的epel安装文件
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
或者
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
安装epel:
rpm -ivh epel-release-latest-6.noarch.rpm
或者:
rpm -ivh epel-release-latest-7.noarch.rpm
安装ClamAV:
注:CentOS 6系统会提示找不到一些组件,不用管
yum install clamav clamav-server clamav-data clamav-update clamav-filesystem clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd
这种方法安装后,病毒库默认地址是/var/lib/clamav
CentOS 7系统下yum 直接安装
yum install -y epel-release
yum install -y clamav
yum install -y clamd
配置文件(yum安装的话这些步骤大部分可以省略,会自动创建)
注释掉/etc/clamd.d/scan.conf
和/etc/freshclam.conf
中的
# Example 注释掉这一行. 第8 行
创建用户,创建存放病毒库目录
useradd clamav -s /sbin/nologin
chown clamav:clamav /var/lib/clamav
更新病毒库
执行更新命令,下载病毒库
/usr/bin/freshclam
有可能一直下载不了,我们可以不使用更新命令,直接下载病毒库到本地
cd /var/lib/clamav
wget http://database.clamav.net/main.cvd
wget http://database.clamav.net/daily.cvd
wget http://database.clamav.net/bytecode.cvd
chown clamav:clamav *
命令扫描
注意:ClamAV有两个命令:clamdscan
、clamscan
clamdscan
命令是用yum安装方法才能使用,需要启动clamd服务,执行速度快clamscan
命令通用,如果是源码安装的就使用这个命令。不依赖服务,命令参数较多,执行速度稍慢
clamdscan:
service clamd start
用clamdscan扫描,需要开始服务才能使用。速度快,不用带-r
,默认会递归扫描子目录
clamdscan /usr
clamscan:
用clamscan
扫描,不需要开始服务就能使用。速度慢,要带-r
,才会递归扫描子目录
clamscan -r /usr
这个命令不仅会显示找到的病毒,正常的扫描文件也会显示出来。
可以用下面这个命令,只显示找到的病毒信息
clamscan --no-summary -ri /tmp
-r
递归扫描子目录-i
只显示发现的病毒文件--no-summary
不显示统计信息--quiet
使用安静模式,仅仅打印出错误信息-d<文件>
以指定的文件作为病毒库,一代替默认的/var/clamav目录下的病毒库文件-l <文件>
指定日志文件,以代替默认的/var/log/clamav/freshclam.log文件--move=<目录>
把感染病毒的文件移动到指定目录--remove
删除感染病毒的文件
示例:
clamscan /bin/uame #扫描指定的单个文件
calmscan #扫描当前目录下的所有文件
clamscan -r /home #扫描/home目录下的所有文件和子目录
#以/tmp/newclamdb文件或/tmp/newclamdb目录中的所有.cvd文件为病毒库,扫描/tmp目录下的所有文件和子目录
clamscan -d /tmp/newclamdb -r /tmp
cat testfile | clamscan - #扫描一个数据流
clamscan -r /var/spool/mail #扫描邮箱目录,以查找包含病毒的邮件
----------- SCAN SUMMARY -----------
Known viruses: 6293114 #病毒库中包含的病毒种类数
Engine version: 0.99.2 #引擎版本
Scanned directories: 1 #扫描目录数
Scanned files: 24 #扫描文件数
Infected files: 0 #被感染文件数
Data scanned: 0.40 MB #总的扫描字节数
Data read: 0.21 MB (ratio 1.87:1) #数据读取
Time: 7.917 sec (0 m 7 s) #花费的总时间
可以写个脚本,用这句命令定期扫描,有返回值即触发告警。