安全扫描之 Linux 杀毒软件 Clamav 安装

文章目录

背景

最近在做HVV准备工作,应要求需要在 Linux 服务器上安装杀毒软件,以此文记录下Clamav 安装过程。

Clamav 简介

ClamAV 杀毒是Linux平台最受欢迎的杀毒软件,ClamAV属于免费开源产品,支持多种平台,如:Linux/Unix、MAC OS X、Windows、OpenVMS。ClamAV是基于病毒扫描的命令行工具,但同时也有支持图形界面的ClamTK工具。ClamAV主要用于邮件服 务器扫描邮件。它有多种接口从邮件服务器扫描邮件,支持文件格式有如:ZIP、RAR、TAR、GZIP、BZIP2、HTML、DOC、PDF,、 SIS CHM、RTF等等。ClamAV有自动的数据库更新器,还可以从共享库中运行。命令行的界面让ClamAV运行流畅,你不必以后台进程的方式运行,当你 想扫描时只需输入扫描命令指定文件或目录就行。

​​特点​​:

  • 开源免费,病毒检测引擎覆盖病毒、蠕虫、木马、rootkit 等多种威胁。
  • 支持命令行扫描,兼容多种文件格式(ZIP、PDF、网页等),适合脚本自动化操作。
  • 病毒库更新频繁,社区活跃,适合服务器和日常用户。

​​扩展工具​​:

  • ClamTK:基于 ClamAV 的图形界面工具,适合新手使用

安装使用

操作系统:CentOS Linux release 7.9.2009 (Core)

Clamav 支持 YUM 源安装以及源码安装。以下 以 YUM 源安装举例。

1、安装epel-release

命令:

shell 复制代码
yum install epel-release

实操:

shell 复制代码
root@ragflow ~]# yum install epel-release
已加载插件:fastestmirror
Determining fastest mirrors
epel/x86_64/metalink                                                                                                                                                                               | 5.1 kB  00:00:00     
 * base: mirrors.aliyun.com
 * epel: repo.jing.rocks
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
base                                                                                                                                                                                               | 3.6 kB  00:00:00     
docker-ce-stable                                                                                                                                                                                   | 3.5 kB  00:00:00     
extras                                                                                                                                                                                             | 2.9 kB  00:00:00     
updates                                                                                                                                                                                            | 2.9 kB  00:00:00     
软件包 epel-release-7-14.noarch 已安装并且是最新版本
无须任何处理

2、Clamav安装

命令:

shell 复制代码
yum install clamav

实操:

shell 复制代码
[root@ragflow ~]# yum install clamav
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * epel: repo.jing.rocks
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 clamav.x86_64.0.0.103.11-1.el7 将被 安装
--> 正在处理依赖关系 clamav-filesystem = 0.103.11-1.el7,它被软件包 clamav-0.103.11-1.el7.x86_64 需要
--> 正在处理依赖关系 clamav-lib = 0.103.11-1.el7,它被软件包 clamav-0.103.11-1.el7.x86_64 需要
--> 正在处理依赖关系 data(clamav),它被软件包 clamav-0.103.11-1.el7.x86_64 需要
--> 正在处理依赖关系 libclamav.so.9(CLAMAV_PRIVATE)(64bit),它被软件包 clamav-0.103.11-1.el7.x86_64 需要
--> 正在处理依赖关系 libclamav.so.9(CLAMAV_PUBLIC)(64bit),它被软件包 clamav-0.103.11-1.el7.x86_64 需要
--> 正在处理依赖关系 libclamav.so.9()(64bit),它被软件包 clamav-0.103.11-1.el7.x86_64 需要
--> 正在检查事务
---> 软件包 clamav-filesystem.noarch.0.0.103.11-1.el7 将被 安装
---> 软件包 clamav-lib.x86_64.0.0.103.11-1.el7 将被 安装
--> 正在处理依赖关系 libltdl.so.7()(64bit),它被软件包 clamav-lib-0.103.11-1.el7.x86_64 需要
--> 正在处理依赖关系 libpcre2-8.so.0()(64bit),它被软件包 clamav-lib-0.103.11-1.el7.x86_64 需要
--> 正在处理依赖关系 libprelude.so.28()(64bit),它被软件包 clamav-lib-0.103.11-1.el7.x86_64 需要
---> 软件包 clamav-update.x86_64.0.0.103.11-1.el7 将被 安装
--> 正在检查事务
---> 软件包 libprelude.x86_64.0.5.2.0-2.el7 将被 安装
---> 软件包 libtool-ltdl.x86_64.0.2.4.2-22.el7_3 将被 安装
---> 软件包 pcre2.x86_64.0.10.23-2.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

==========================================================================================================================================================================================================================
 Package                                                    架构                                            版本                                                      源                                             大小
==========================================================================================================================================================================================================================
正在安装:
 clamav                                                     x86_64                                          0.103.11-1.el7                                            epel                                          332 k
为依赖而安装:
 clamav-filesystem                                          noarch                                          0.103.11-1.el7                                            epel                                           45 k
 clamav-lib                                                 x86_64                                          0.103.11-1.el7                                            epel                                          833 k
 clamav-update                                              x86_64                                          0.103.11-1.el7                                            epel                                          128 k
 libprelude                                                 x86_64                                          5.2.0-2.el7                                               epel                                          312 k
 libtool-ltdl                                               x86_64                                          2.4.2-22.el7_3                                            base                                           49 k
 pcre2                                                      x86_64                                          10.23-2.el7                                               base                                          201 k

事务概要
==========================================================================================================================================================================================================================
安装  1 软件包 (+6 依赖软件包)

总下载量:1.9 M
安装大小:169 M
Is this ok [y/d/N]: y
Downloading packages:
(1/7): clamav-filesystem-0.103.11-1.el7.noarch.rpm                                                                                                                                                 |  45 kB  00:00:01     
(2/7): libtool-ltdl-2.4.2-22.el7_3.x86_64.rpm                                                                                                                                                      |  49 kB  00:00:00     
(3/7): pcre2-10.23-2.el7.x86_64.rpm                                                                                                                                                                | 201 kB  00:00:00     
(4/7): libprelude-5.2.0-2.el7.x86_64.rpm                                                                                                                                                           | 312 kB  00:00:02     
(5/7): clamav-update-0.103.11-1.el7.x86_64.rpm                                                                                                                                                     | 128 kB  00:00:03     
(6/7): clamav-0.103.11-1.el7.x86_64.rpm                                                                                                                                                            | 332 kB  00:00:04     
(7/7): clamav-lib-0.103.11-1.el7.x86_64.rpm                                                                                                                                                        | 833 kB  00:00:20     
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
总计                                                                                                                                                                                       94 kB/s | 1.9 MB  00:00:20     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : libtool-ltdl-2.4.2-22.el7_3.x86_64                                                                                                                                                                    1/7 
  正在安装    : libprelude-5.2.0-2.el7.x86_64                                                                                                                                                                         2/7 
  正在安装    : clamav-filesystem-0.103.11-1.el7.noarch                                                                                                                                                               3/7 
  正在安装    : pcre2-10.23-2.el7.x86_64                                                                                                                                                                              4/7 
  正在安装    : clamav-lib-0.103.11-1.el7.x86_64                                                                                                                                                                      5/7 
  正在安装    : clamav-update-0.103.11-1.el7.x86_64                                                                                                                                                                   6/7 
  正在安装    : clamav-0.103.11-1.el7.x86_64                                                                                                                                                                          7/7 
  验证中      : clamav-filesystem-0.103.11-1.el7.noarch                                                                                                                                                               1/7 
  验证中      : clamav-0.103.11-1.el7.x86_64                                                                                                                                                                          2/7 
  验证中      : pcre2-10.23-2.el7.x86_64                                                                                                                                                                              3/7 
  验证中      : clamav-lib-0.103.11-1.el7.x86_64                                                                                                                                                                      4/7 
  验证中      : clamav-update-0.103.11-1.el7.x86_64                                                                                                                                                                   5/7 
  验证中      : libtool-ltdl-2.4.2-22.el7_3.x86_64                                                                                                                                                                    6/7 
  验证中      : libprelude-5.2.0-2.el7.x86_64                                                                                                                                                                         7/7 

已安装:
  clamav.x86_64 0:0.103.11-1.el7                                                                                                                                                                                          

作为依赖被安装:
  clamav-filesystem.noarch 0:0.103.11-1.el7  clamav-lib.x86_64 0:0.103.11-1.el7  clamav-update.x86_64 0:0.103.11-1.el7  libprelude.x86_64 0:5.2.0-2.el7  libtool-ltdl.x86_64 0:2.4.2-22.el7_3  pcre2.x86_64 0:10.23-2.el7 

完毕!

3、成功安装

命令:

shell 复制代码
clamscan --version

实操:

shell 复制代码
[root@ragflow ~]# clamscan --version
ClamAV 0.103.11

4、更新病毒库

命令:

shell 复制代码
# 手动更新(首次安装后必须执行)
freshclam

实操:

shell 复制代码
[root@ragflow ~]# freshclam
ClamAV update process started at Wed May 14 14:46:27 2025
WARNING: Can't query current.cvd.clamav.net
WARNING: Invalid DNS reply. Falling back to HTTP mode.
Trying to retrieve CVD header from https://database.clamav.net/daily.cvd
Time:    1.7s, ETA:    0.0s [========================>]       512B/512B
OK
daily database available for download (remote version: 27636)
Time:   17.3s, ETA:    0.0s [========================>]   61.65MiB/61.65MiB
Testing database: '/var/lib/clamav/tmp.a1ccb8dbce/clamav-8cfdca1b57b71601a232d6947c610329.tmp-daily.cvd' ...

Message from syslogd@ragflow at May 14 14:48:08 ...
 kernel:NMI watchdog: BUG: soft lockup - CPU#2 stuck for 22s! [wrk:worker_4:19323]

Message from syslogd@ragflow at May 14 14:48:41 ...
 kernel:NMI watchdog: BUG: soft lockup - CPU#2 stuck for 22s! [wrk:worker_4:19323]
Database test passed.
daily.cvd updated (version: 27636, sigs: 2074833, f-level: 90, builder: raynman)
Trying to retrieve CVD header from https://database.clamav.net/main.cvd
Time:    1.0s, ETA:    0.0s [========================>]       512B/512B
OK
main database available for download (remote version: 62)
Time:   54.5s, ETA:    0.0s [========================>]  162.58MiB/162.58MiB
Testing database: '/var/lib/clamav/tmp.a1ccb8dbce/clamav-1d9b6781622639d188b0149c4cee0c9a.tmp-main.cvd' ...
Database test passed.
main.cvd updated (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr)
Trying to retrieve CVD header from https://database.clamav.net/bytecode.cvd
Time:    1.5s, ETA:    0.0s [========================>]       512B/512B
OK
bytecode database available for download (remote version: 336)
Time:    2.2s, ETA:    0.0s [========================>]  277.52KiB/277.52KiB
Testing database: '/var/lib/clamav/tmp.a1ccb8dbce/clamav-95309efd5027461ef5a2eaba068e54dd.tmp-bytecode.cvd' ...
Database test passed.
bytecode.cvd updated (version: 336, sigs: 83, f-level: 90, builder: nrandolp)

5、执行扫描

命令:

shell 复制代码
clamscan -r
  1. 常用命令参数
参数 功能 示例
-r 递归扫描目录 clamscan -r /home
-i 仅显示感染文件 clamscan -ri /tmp
--remove 删除感染文件 clamscan --remove -r /downloads
-l 日志记录 clamscan -r /var -l /var/log/clamscan.log
--move 隔离文件到指定目录 clamscan --move=/opt/quarantine
  1. 典型场景
    • 扫描系统关键目录:
bash 复制代码
clamscan -r /etc /var /home --log=/var/log/system_scan.log

• 扫描压缩文件:

bash 复制代码
clamscan --multiscan --infected /path/to/archive.zip
  1. 实操:
shell 复制代码
[root@ragflow ~]# clamscan -r

/root/.bash_logout: OK
/root/.bash_profile: OK
/root/.cshrc: OK
/root/.tcshrc: OK
/root/anaconda-ks.cfg: OK
/root/.bash_history: OK
/root/.docker/buildx/.lock: Empty file
......
/root/install.sh: OK
/root/log: OK
/root/.viminfo: OK
: OKt/log

----------- SCAN SUMMARY -----------
Known viruses: 8706329
Engine version: 0.103.11
Scanned directories: 1848
Scanned files: 7129
Infected files: 0
Data scanned: 754.83 MB
Data read: 484.95 MB (ratio 1.56:1)
Time: 437.200 sec (7 m 17 s)
Start Date: 2025:05:14 16:36:54
End Date:   2025:05:14 16:44:11

6、结果分析

shell 复制代码
----------- SCAN SUMMARY -----------
Known viruses: 8706329   # 病毒库覆盖范围(较新)
Engine version: 0.103.11  
Scanned directories: 1848  # 扫描目录深度
Scanned files: 7129   # 文件总量(可能包含临时文件)
Infected files: 0   # 未发现感染文件(重要)
Data scanned: 754.83 MB     # 实际扫描数据量
Data read: 484.95 MB (ratio 1.56:1)    # 总读取数据量(压缩文件占比高时差异明显),扫描效率(理想值 >2:1)
Time: 437.200 sec (7 m 17 s)  # 耗时较长(需优化,建议启用多线程)
Start Date: 2025:05:14 16:36:54
End Date:   2025:05:14 16:44:11

7、常见问题

  1. 扫描速度慢

    • 启用多线程扫描:clamdscan -r /path --multithread=4 (#根据 CPU 核心数调整(如 8 线程))

    • 检查病毒库完整性:clamscan --multiscan --verify

  2. 误删文件恢复

    • 若使用 --remove 参数导致误删,需从备份恢复或使用数据恢复工具(如 extundelete)。

  3. freshclam 更新失败

    • 检查网络:ping database.clamav.net

    • 手动配置镜像:编辑 /etc/freshclam.conf,添加 DatabaseMirror cn.clamav.net(国内镜像)

  4. ​​病毒库与引擎验证​​

    • ​​​​确认病毒库时效性​​:freshclam --quiet --version ,检查是否为最新(当前 8,706,329 为 2025 年 5 月更新)

    • ​​​​引擎版本检查​​:clamscan --version | grep "ClamAV" ,确认是否为 0.103.11(最新稳定版)

相关推荐
lsnm17 小时前
【LINUX网络】IP——网络层
linux·服务器·网络·c++·网络协议·tcp/ip
全糖去冰吃不了苦17 小时前
ELK 集群部署实战
运维·jenkins
Hello.Reader17 小时前
Kafka在多环境中安全管理敏感
分布式·安全·kafka
不掰手腕17 小时前
在UnionTech OS Server 20 (统信UOS服务器版) 上离线安装PostgreSQL (pgsql) 数据库
linux·数据库·postgresql
Lynnxiaowen18 小时前
今天继续昨天的正则表达式进行学习
linux·运维·学习·正则表达式·云计算·bash
努力学习的小廉18 小时前
深入了解linux系统—— POSIX信号量
linux·运维·服务器
刘一说18 小时前
CentOS部署ELK Stack完整指南
linux·elk·centos
从零开始的ops生活18 小时前
【Day 50 】Linux-nginx反向代理与负载均衡
linux·nginx
IT成长日记18 小时前
【Linux基础】Linux系统配置IP详解:从入门到精通
linux·运维·tcp/ip·ip地址配置
夜无霄19 小时前
安卓逆向(一)Ubuntu环境配置
linux·运维·爬虫·ubuntu