1 ClamAV介绍

ClamAV是Linux操作系统一款免费的杀毒工具,通过命令执行病毒库升级查找病毒和删除病毒。

官方参考文档Installing – ClamAV Documentation

官方下载地址https://www.clamav.net/downloads

2 安装ClamAV

在CentOS操作系统安装ClamAV,请分别执行以下命令

[root@icoolkj ~]# yum install epelrelease -y
[root@icoolkj ~]# yum install clamav clamavd clamavupdate -y

 在Ubuntu操作系统安装ClamAV,请分别执行以下命令

[root@icoolkj ~]# apt update

[root@icoolkj ~]# apt install clamav clamavdaemon -y

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 ~]# 

参数介绍

-r 扫描目录

/tmp 设置扫描路径为“/tmp” ,可改成其他路径比如根目录“/”

–i 只显示被感染的文件

-l 保存日志文件位置

上述命令即对/tmp路径扫描一次病毒。

 注意:上述命令扫描病毒,不会对病毒文件进行删除,需手动删除。

 如果扫到病毒,“Infected files: 0”的值就标识病毒文件个数,并在上方列出了病毒文件位置和病毒名称

4 创建日志保存路径

请执行命令创建日志保存路径

[root@icoolkj ~]# mkdir /var/log/clamav/

 后续脚本将病毒扫描结果保存到/var/log/clamav文件夹下。

5 配置邮件功能

5.1 安装mail邮件工具

首先安装mail,mail是linux邮件工具。

在CentOS操作系统上安装mail,请执行

[root@icoolkj ~]# yum install mailx -y

 在Ubuntu操作系统上安装mail,请执行:

[root@icoolkj ~]# apt update

[root@icoolkj ~]# apt install mailutils -y

5.2 配置邮箱登录发件信息

添加邮箱登录发件信息,以qq邮箱为例:

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

qq邮箱需要手动开启SMTP服务,并获取授权码,

 请运行下方命令测试邮件是否正常。

[root@icoolkj ~]# echo测试邮件” | mail -s “测试标题”  10588@qq.com

 其中“10588@qq.com”请修改为您自己的邮箱,回车执行后,请登录邮箱查看是否收到测试邮件

5.3 发送QQ邮件提示:Error in certificate证书不被信任

1、修改配置/etc/mail.rc 

把  set ssl-verify=ignore  改为 set  ssl-verify=strict   ##忽略证书警告 改成 严格按照证书要求

2、获取邮件服务器证书

echo   -n ” ” |  openssl s_clientconnect smtp.qq.com:465 | sed -ne  ‘/-BEGIN CERTIFICATE-/,/-END CERTIFIICATE-/p’  >  /etc/pki/nssdb/qq.crt

 3、把证书添加到受信任表

certutil    -A    -n   ‘qq’    -t    “P,P,P”    -d    /etc/pki/nssdb    -i    /etc/pki/nssdb/qq.crt

6 配置定时扫描和邮件告警

6.1 编辑脚本

新建脚本文件 scan.sh 并编辑,内容如下 : 

#!/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添加以下内容:

上述内容表示每天8点,以用户root身份定时执行脚本

添加完成后,请执行下方命令,启动cron,并设置开机自动启动cron。 

[root@icoolkj ~]#  service crond start

[root@icoolkj ~]#  chkconfig crond on

 到此,杀毒软件ClamAV的安装及邮件告警功能配置完成。

原文地址:https://blog.csdn.net/qq_29768197/article/details/129814622

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_9405.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注