原文:Linux病毒扫描工具ClamAV(Clam AntiVirus)安装使用 - 知乎 (zhihu.com)
ClamAV(Clam AntiVirus)是Linux平台上的开源病毒扫描程序,主要应用于邮件服务器,采用多线程后台操作,可以自动升级病毒库。
安装epel软件源
# 安装 [root@localhost ~]# yum install -y epel-release # 缓存 [root@localhost ~]# yum clean all && yum makecache
安装clamav程序
[root@localhost ~]# yum -y install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd
SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统
配置ClamAV权限
[root@localhost ~]# setsebool -P antivirus_can_scan_system 1 [root@localhost ~]# setsebool -P clamd_use_jit 1
查看设置结果
[root@localhost ~]# getsebool -a | grep antivirus antivirus_can_scan_system --> on antivirus_use_jit --> on
如果使用命令的时出现以下信息:
[root@VM-0-9-centos ~]# getsebool -a | grep antivirus getsebool: SELinux is disabled
解决办法是修改/etc/selinux/config配置文件:
vim /etc/selinux/config
强制模式SELINUX=enforcing:表示所有违反安全策略的行为都将被禁止。
宽容模式SELINUX=permissive:表示所有违反安全策略的行为不被禁止,但是会在日志中作记录
我们设置SELINUX=permissive即可。
修改config文件后,需要重启实例,但直接重启实例将会出现系统无法启动的错误。因此在重启之前需要在根目录下新建autorelabel文件。
touch /.autorelabel
1.删除示列
[root@localhost ~]# sed -i -e "s/^Example/#Example/" /etc/clamd.d/scan.conf [root@localhost ~]# sed -i -e "s/^Example/#Example/" /etc/freshclam.conf
2.编辑配置文件
[root@localhost ~]# vim /etc/clamd.d/scan.conf
3.找到以下行
#LocalSocket /var/run/clamd.scan/clamd.sock
#
符号并保存您的更改[root@localhost ~]# freshclam
病毒库保存位置:
/var/lib/clamav/daily.cvd /var/lib/clamav/main.cvd
[root@localhost ~]# sudo systemctl start clamd@scan [root@localhost ~]# sudo systemctl enable clamd@scan
clamscan
可用以扫描文件, 用户目录亦或是整个系统:
##扫描文件 [root@localhost ~]# clamscan targetfile ##递归扫描home目录,并且记录日志 [root@localhost ~]# clamscan -r -i /home -l /var/log/clamav.log ##递归扫描home目录,将病毒文件删除,并且记录日志 [root@localhost ~]# clamscan -r -i /home --remove -l /var/log/clamav.log ##扫描指定目录,然后将感染文件移动到指定目录,并记录日志 [root@localhost ~]# clamscan -r -i /home --move=/tmp/clamav -l /var/log/clamav.log
说明:
-r -i
递归扫描目录-l
指定记录日志文件--remove
删除病毒文件--move
移动病毒到指定目录clamscan -r -i /etc --max-dir-recursion=5 -l /var/log/clamav-etc.log clamscan -r -i /bin --max-dir-recursion=5 -l /var/log/clamav-bin.log clamscan -r -i /usr --max-dir-recursion=5 -l /var/log/clamav-usr.log clamscan -r -i /var --max-dir-recursion=5 -l /var/log/clamav-var.log
----------- SCAN SUMMARY ----------- Known viruses: 9141451 #已知病毒 Engine version: 0.102.4 #软件版本 Scanned directories: 498 #扫描目录 Scanned files: 738 #扫描文件 Infected files: 4 #感染文件!!! Data scanned: 530.25 MB #扫描数据 Data read: 14131.60 MB (ratio 0.04:1) #数据读取 Time: 203.805 sec (3 m 23 s) #扫描用时
cat /var/log/clamav-bin.log | grep "FOUND"
# crontab -e 0 0 */10 * * /usr/bin/freshclam --quiet -l /var/log/clamav/clamav.log # 定时升级病毒库,此项对于一些无法联网的服务器可以忽略 30 3 * * * clamscan -r -i / --move=/tmp/clamav -l /var/log/clamav.log # 定时扫描
How to Install ClamAV on CentOS 7: A Step-by-Step Guidewww.hostinger.com/tutorials/how-to-install-clamav-centos7