最近阿里云服务器在半年内中了两次挖矿病毒,于是想着安装个杀毒软件试试,网上查了一下决定试一下ClamAV,结果最后发现该杀毒软件对挖矿病毒无效,因为杀毒软件是针对文件的,但是挖矿病毒的最大特点就是挖矿脚本执行后会自我删除,然后通过另一个脚本跟定时任务去下载挖矿脚本,所以挖矿脚本并不存在与服务器:
所以ClamAV是扫不到挖矿病毒的,也无从得知能否真的扫描识别挖矿脚本病毒。
虽然没有达到最初目的,但是还是安装过程整理一下,ClamAV的安装可以分为yum安装跟二进制包安装,其中yum安装比较简单,不做过多描述。
一、yum安装
1、安装epel源
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ihv epel-release-latest-7.noarch.rpm
2、安装杀毒软件
yum -y install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd
3、修改配置文件
修改/etc/freshclam.conf 和 /etc/clamd.d/scan.conf ,将 文中“Example” 注释掉,如“#Example”,一般在第8行,下图是修改后的配置:
4、升级病毒库
freshclam
5、查杀病毒
##扫描文件
clamscan targetfile
##递归扫描home目录,并且记录日志
clamscan -r -i /home -l /var/log/clamscan.log
##递归扫描home目录,将病毒文件删除,并且记录日志
clamscan -r -i /home --remove -l /var/log/clamscan.log
##建议##扫描指定目录,然后将感染文件移动到指定目录,并记录日志
clamscan -r -i /home --move=/opt/infected -l /var/log/clamscan.log
二、二进制包安装
1、下载
打开官网地址https://www.clamav.net/
2、准备工作
然后上传到服务器,解压
创建用户组跟用户
groupadd clamav
useradd -g clamav clamav
然后安装依赖包gcc、g++、check、libxml2、pcre2、bzip2、openssh、openssl、libcurl等等,虽然官网上有提示说有哪些包是必须的依赖包,有哪些是推荐的包,实际上都是要看编译的报错,根据报错来安装依赖包,然后需要注意的是,上面提到的libxml2、pcre2、bzip2、openssh、libcurl等安装包都是需要安装带devel的安装包,如libxml2-devel、pcre2-devel这样,具体的分辨方法就是先安装libxml2,再次进行编译,如果还是报错提示少了libxml2的类,那就需要安装libxml2-devel了。还有就是因为编译的时候需要用到gcc跟g++,安装的时候应该安装gcc-c++,因为没有单独的g++安装包。
3、编译安装
进入解压得到的文件夹执行编译命令
./configure --prefix=/opt/clamav
--prefix=/opt/clamav指定安装目录,需要注意的是,编译时会校验clamav用户跟用户组是否存在,如果没有操作第2步中的创建用户跟用户组操作,则需要增加参数--disable-clamav,完整命令如下:
./configure --prefix=/opt/clamav --disable-clamav
编译成功后,执行make
然后再执行make install
至此安装完毕,但是还不能启动,需要先修改配置文件
4、修改配置文件
cp /opt/clamav/etc/clamd.conf.sample /opt/clamav/etc/clamd.conf
cp /opt/clamav/etc/freshclam.conf.sample /opt/clamav/etc/freshclam.conf
vim /opt/clamav/etc/clam.conf
注释掉“Example”行,一般在第8行
增加以下内容
LogFile /opt/clamav/logs/clamd.log
PidFile /opt/clamav/updata/clamd.pid
DatabaseDirectory /opt/clamav/updata
vim /opt/clamav/etc/freshclam.conf
注释掉“Example”行,一般在第8行
增加以下内容(此配置是病毒库存放路径配置,配置的路径必须存在且拥有这个拥有者组是clamav:clamav,如果不配置,更新病毒库时就会使用默认路径,会报错提示路径不存在,可以补充配置或者直接创建默认路径文件夹,并把拥有者跟拥有者组改成clamav:clamav即可) DatabaseDirectory /opt/clamav/updata
mkdie /opt/clamav/updata
chown -R clamav:clamav /opt/clamav/updata
5、更新病毒库
cd /opt/clamav/bin
./freshclam
6、查杀病毒
##扫描文件 clamscan targetfile ##递归扫描home目录,并且记录日志 clamscan -r -i /home -l /var/log/clamscan.log ##递归扫描home目录,将病毒文件删除,并且记录日志 clamscan -r -i /home --remove -l /var/log/clamscan.log ##建议##扫描指定目录,然后将感染文件移动到指定目录,并记录日志 clamscan -r -i /home --move=/opt/infected -l /var/log/clamscan.log
需要注意的是,二进制包安装的clamav并没有配置PATH环境变量,需要手工配置或者进入到clamav的安装目录下的bin目录来使用