1 ClamAV介绍
ClamAV是Linux操作系统一款免费的杀毒工具,通过命令执行病毒库升级、查找病毒和删除病毒。
官方参考文档:Installing – ClamAV Documentation
官方下载地址:https://www.clamav.net/downloads
2 安装ClamAV
在CentOS操作系统上安装ClamAV,请分别执行以下命令:
[root@icoolkj ~]# yum install epel–release -y
[root@icoolkj ~]# yum install clamav clamavd clamav–update -y
在Ubuntu操作系统上安装ClamAV,请分别执行以下命令:
3 运行ClamAV
安装完成后,我们可以立即扫描一次病毒,首先运行以下命令更新病毒库:
[root@icoolkj ~]# freshclam
ClamAV update process started at Tue Mar 28 13:56:35 2023
daily database available for download (remote version: 26856)
Time: 17.5s, ETA: 0.0s [========================>] 58.15MiB/58.15MiB
Testing database: '/var/lib/clamav/tmp.d2ef527363/clamav-931039071b1f61662b25cfe128d1dc73.tmp-daily.cvd' ...
Database test passed.
daily.cvd updated (version: 26856, sigs: 2027501, f-level: 90, builder: raynman)
main database available for download (remote version: 62)
Time: 1m 01s, ETA: 0.0s [========================>] 162.58MiB/162.58MiBB
Testing database: '/var/lib/clamav/tmp.d2ef527363/clamav-40f50edda97b99acd0ef989bc173c978.tmp-main.cvd' ...
Database test passed.
main.cvd updated (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr)
bytecode database available for download (remote version: 334)
Time: 5.7s, ETA: 0.0s [========================>] 285.12KiB/285.12KiB
Testing database: '/var/lib/clamav/tmp.d2ef527363/clamav-f855815232c8934d374c0f3f6f463a53.tmp-bytecode.cvd' ...
Database test passed.
bytecode.cvd updated (version: 334, sigs: 91, f-level: 90, builder: anvilleg)
[root@icoolkj ~]#
[root@icoolkj ~]# clamscan -r -i /tmp -l /var/log/clamav.log
----------- SCAN SUMMARY -----------
Known viruses: 8659426
Engine version: 0.103.8
Scanned directories: 9
Scanned files: 0
Infected files: 0
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 23.018 sec (0 m 23 s)
Start Date: 2023:03:28 14:00:02
End Date: 2023:03:28 14:00:25
[root@icoolkj ~]#
/tmp 设置扫描路径为“/tmp” ,可改成其他路径比如根目录“/”
–i 只显示被感染的文件
注意:上述命令仅扫描病毒,不会对病毒文件进行删除,需手动删除。
如果扫到病毒,“Infected files: 0”的值就标识病毒文件个数,并在上方列出了病毒文件的位置和病毒名称。
4 创建日志保存路径
后续脚本将病毒扫描结果保存到/var/log/clamav/ 文件夹下。
5 配置发邮件功能
5.1 安装mail邮件工具
5.2 配置邮箱登录发件信息
cat >>/etc/mail.rc <<EOF
set smtp=smtps://smtp.qq.com:465 #配置使用qq邮箱发送邮件
set smtp-auth=login #认证形式
set smtp-auth-user=10588@qq.com #邮箱名
set from=10588@qq.com #配置发件人
set smtp-auth-password=eeeeeeeeeeeeeee #授权码
set nss-config-dir=/etc/pki/nssdb/ #加密方式配置
set smtp-user-starttls #加密方式配置
set ssl-verify=ignore #加密方式配置
EOF
其中“10588@qq.com”请修改为您自己的邮箱,回车执行后,请登录邮箱查看是否收到测试邮件。
5.3 发送QQ邮件报提示:Error in certificate证书不被信任
把 set ssl-verify=ignore 改为 set ssl-verify=strict ##忽略证书警告 改成 严格按照证书要求
echo -n ” ” | openssl s_client –connect smtp.qq.com:465 | sed -ne ‘/-BEGIN CERTIFICATE-/,/-END CERTIFIICATE-/p’ > /etc/pki/nssdb/qq.crt
certutil -A -n ‘qq’ -t “P,P,P” -d /etc/pki/nssdb -i /etc/pki/nssdb/qq.crt
6 配置定时扫描和邮件告警
6.1 编辑脚本
#!/bin/bash
freshclam
date=`date +%Y%m%d_%H%M%S`
clamscan -r -i / -l /home/clamav/log/clamav.$date.log
:<<!
clamscan -r -i /tmp -l /home/chamav/log/clamav.$date.log
参数介绍:
-r 扫描目录;
/tmp 设置扫描路径为“/tmp”,可改成其他路径比如根目录“/”;
–i 只显示被感染的文件;
-l 保存日志文件的位置;
上述命令即对/tmp路径扫描一次病毒。
注意:上述命令仅扫描病毒,不会对病毒文件进行删除,需手动删除。
!
ip=$(ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)/(.*)/,"\1", "g", $2)}')
data_log=""
while read line
do
data_log+=$line"<br>"
done < /home/clamav/log/clamav.$date.log
infected_files=`echo $data_log | sed 's/.*(Infected files:(.*)<br>Data scanned.*?)/2/'`
scan_time=`echo $data_log | sed 's/.*(Start Date:(.*)<br>End Date.*?)/2/'`
if [ $infected_files -gt 0 ]
then
data_log=${data_log/SCAN SUMMARY/扫描结果}
data_log=${data_log/Known viruses/病毒库数量}
data_log=${data_log/Engine version/引警版本}
data_log=${data_log/Scanned directories/已扫描目录}
data_log=${data_log/Scanned files/已扫描文件}
data_log=${data_log/Infected files/已发现病毒文件}
data_log=${data_log/Data scanned/已扫描数据}
data_log=${data_log/Data read/读取数据}
data_log=${data_log/Time/扫描时长}
data_log=${data_log/start Date/开始时间}
data_log=${data_log/End Date/结束时间}
body="杀毒软件ClamAV于 $scan_time 对您的服务器 $ip 进行了扫描,发现有 $infected_files 个高危病毒:$data_log<br>请立即登录服务器处理。"
echo $body | mail -s "$(echo -e "$ip 服务器病毒处理通知-$datenContent-Type: text/html; charset=utf-8")" 10588@qq.com
fi
脚本末尾的“10588@qq.com”请修改为您自己的邮箱。
脚本的内容为更新病毒库、扫描病毒,如果扫到病毒,给您发送邮件。
6.2 配置定时计划
cron是linux用来定时执行任务的工具,配置文件路径etc/crontab,添加以下内容:
添加完成后,请执行下方命令,启动cron,并设置开机自动启动cron。
原文地址:https://blog.csdn.net/qq_29768197/article/details/129814622
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_9405.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!