环境说明
系统安全需求,批量安装免费杀毒软件;
操作系统统一为CentOS 7 x64,在此选择免费开源杀毒软件ClamAV;
两种安装方式
1.yum 安装;
2.源码包编译安装;
安装参考网址:
https://www.clamav.net/documents/upgrading-clamav
https://github.com/vrtadmin/clamav-faq/raw/master/manual/clamdoc.pdf
方案1:yum安装
安装后自动生成服务文件,启动服务后,可使用clamdscan命令扫描,速度快;
启动服务后,会实时监控扫描链接,安全性高,但是对服务器性能有一定影响;
安装命令
yum install -y clamav clamav-server clamav-data clamav-update clamav-filesystem clamav-scanner-systemd \
clamav-devel clamav-lib clamav-server-systemd pcre* gcc zlib zlib-devel libssl-devel libssl openssl
安装完成后,病毒库默认地址是/var/lib/clamav;
#此方式相对简单,在此不做过多介绍,详细操作见源码包安装以及后续使用操作;
方案2:源码包编译安装
1)下载安装包;
2)创建clamav用户和存放病毒库路径;
3)解压安装包;
4)安装依赖;
5)编译安装;
6)配置clamav;
7)启动clamav;
8)更新病毒库;
9)扫描杀毒;
10)定时杀毒;
安装包下载地址
cd /usr/local/ https://www.clamav.net/downloads #或者直接下载 wget https://www.clamav.net/downloads/production/clamav-0.101.4.tar.gz
安装依赖
yum install gcc* openssl openssl-devel -y
clamav 用户和用户组
useradd -s /sbin/nologin -M clamav clamav && id clamav
日志存放目录
mkdir -p /usr/local/clamav/logs touch /usr/local/clamav/logs/clamd.log touch /usr/local/clamav/logs/freshclam.log chown clamav:clamav /usr/local/clamav/logs/clamd.log chown clamav:clamav /usr/local/clamav/logs/freshclam.log
病毒存放目录
mkdir -p /usr/local/clamav/update chown -R root:clamav /usr/local/clamav/ chown -R clamav:clamav /usr/local/clamav/update
解压安装
tar zxf clamav-0.101.4.tar.gz cd clamav-0.101.4 cd /usr/local/clamav-0.101.4 ./configure --prefix=/usr/local/clamav --with-pcre make && make install
配置clamav
cd /usr/local/clamav/etc cp clamd.conf.sample clamd.conf cp freshclam.conf.sample freshclam.conf vim clamd.conf #注销Example 一行 #Example #添加配置项 LogFile /usr/local/clamav/logs/clamd.log PidFile /usr/local/clamav/update/clamd.pid DatabaseDirectory /usr/local/clamav/update cd /usr/local/clamav/etc vim freshclam.conf #注销Example 一行 #Example #添加配置项 DatabaseDirectory /usr/local/clamav/update UpdateLogFile /usr/local/clamav/logs/freshclam.log PidFile /usr/local/clamav/update/clamd.pid
启动clamav
chown -R clamav:clamav /usr/local/clamav systemctl start clamav-freshclam.service systemctl enable clamav-freshclam.service systemctl status clamav-freshclam.service
停止freshclam
systemctl stop clamav-freshclam.service
更新病毒库,耗时根据网络质量而定
/usr/local/clamav/bin/freshclam
下载病毒库到存储目录,更新
cd /usr/local/clamav/update/ wget http://database.clamav.net/main.cvd wget http://database.clamav.net/daily.cvd wget http://database.clamav.net/bytecode.cvd
更新完成后,病毒库存放路径下生成四个病毒库文件
cd /usr/local/clamav/update/ bytecode.cvd daily.cvd main.cvd mirrors.dat
为扫描操作可执行文件创建软连接
ln -s /usr/local/clamav/bin/clamscan /usr/local/sbin/clamscan
注意:
若手动更新病毒库报错,需要进入病毒库存放路径,删除旧的镜像地址文件,重新手动更新;
rm -f /usr/local/clamav/update/mirrors.dat
或者删除所有病毒库文件,重新更新
rm -rf /usr/local/clamav/update/*
扫描杀毒-命令参数
1)clamdscan 通常使用yum安装才能使用此扫描操作,需要启动clamd服务,扫描速度快; 若不使用-r 参数指定路径,默认递归扫描子目录; clamdscan /usr 2)clamscan 通用命令,不依赖其他服务(例如clamd),命令参数多,执行速度慢; -r/--recursive[=yes/no] 递归扫描子目录,所有文件; -i 只显示发现的病毒文件; --no-summary 不显示统计信息; --log=FILE/ -l FILE 增加扫描报告,即输出扫描日志到指定文件; --move [路径] 移动病毒文件到指定路径; --remove [路径] 删除指定路径下的病毒文件; --quiet 只输出错误信息; --infected/-i 只输出被感染文件; --suppress-ok-results/-o 跳过扫描OK的文件; --bell 扫描到病毒文件发出警报声音; --unzip(unrar) 解压压缩文件执行扫描;
示例:
#从根目录下开始,扫描所有文件并且只显示有问题的文件,发现病毒文件发出警报声音 clamscan -r --bell -i / #不显示统计信息,只显示找到的病毒文件,且将病毒文件移动到/tmp路径下; clamscan --no-summary -ri /tmp #扫描home路径以及其路径下所有子目录,只输出被感染文件,且将病毒文件、被感染文件直接删除; clamscan --infected --remove --recursive /home 定时杀毒 #定制任务计划,凌晨3:00开始更新病毒库,3:30开始杀毒,扫描/home目录以及子目录文件,将扫描出来的病毒文件直接删除,并保存杀毒日志 crontab -e 0 3 /usr/local/clamav/bin/freshclam --quiet 30 3 /usr/local/clamav/bin/clamscan -r /home/ --remove -l /var/log/clamscan.log clamscan -ri --log=/var/log/clamav/clamav.log
注意:安装版本如果是0.102.2需要注意如下事项
要求 On-Access仅在Linux系统上可用。在Linux上,On-Access需要一个kernel version >= 3.8。这是因为它利用称为fanotify的内核api 来阻止进程尝试访问恶意文件。这种预防措施发生在内核空间中,因此比纯用户空间解决方案提供了更强大的保护。 对于版本> = 0.102.0 它还需要Curl version >= 7.45 确保支持clamonacc使用的所有卷曲选项。打包了较旧版本的libcurl的Linux操作系统上的用户有许多选择: • 等待您的软件包维护者提供更高版本的libcurl。 • 从源安装更高版本的libcurl 。 • 禁用clamonacc带有./configure标志的安装和读写扫描功能--disable-clamonacc。
至此部署完成