你想保护你的VPS免受危险的恶意软件和病毒的侵害吗?你可以通过安装一个杀毒软件来轻松做到这一点。有很多选择但我们建议在您的私人服务器上安装ClamAV。它是一个伟大的开源防病毒解决方案可以对抗木马、恶意软件和其他安全威胁。

在这篇文章中,你将学习如何在CentOS 7上安装ClamAV以获得更好的服务器保护!

一、为什么在Linux服务器上需要反病毒软件?

虽然众所周知,Linux是比较安全的操作系统之一,但这并不意味着它对病毒攻击无懈可击。一项研究显示2017年第一季度36% 的顶级恶意软件案件是在Linux系统上报告的。更糟糕的是这些数字并没有下降。

它还指出 82% 的攻击针对网络服务器。这足以提醒任何人注意他们的VPS和服务器安全。因此你需要一个杀毒软件来给你的系统提供更好的在线保护。

值得庆幸的是,我们有ClamAV,这是最好的Linux安全解决方案之一,可以摆脱众多恶意软件的威胁。它很可靠,易于设置,而且免费。请记住,本指南将告诉你如何在CentOS 7发行版上安装ClamAV。

在我们开始之前,请确保你对你的CentOS 7服务器或VPS有root权限。

此外,你需要知道如何使用Putty(Windows)或终端(macOS、Linux)来建立SSH连接。

二、如何在CentOS 7上安装 ClamAV


我们将把本教程分为三个步骤--在CentOS 7上安装ClamAV,配置SELinux,以及配置ClamAV。那么,让我们开始吧!

重要的是! CentOS Linux 8已经在2021-12-31达到了它的生命周期结束(EOL)。虽然CentOS Linux 7仍然被支持,但它将在2024-06-30达到EOL。我们建议在选择这个操作系统时要记住这一点。你可以在他们的[官方网站](https://www.centos.org/centos-linux-eol/)上阅读更多的信息。

1. 在CentOS 7上安装 ClamAV

1、默认情况下 ClamAV 并没有预装在CentOS的软件仓库中。我们必须通过陆续运行yum命令来添加额外的软件库。

sudo yum -y install epel-release
sudo yum clean all

2、现在,是时候在CentOS 7上安装 ClamAV 了。只需运行以下命令。

sudo yum -y install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd

你已经安装了 ClamAV 但我们仍然需要进行一些额外的配置,以使其正常工作。

2. 配置 SELinux

SELinux是一种安全措施,旨在保护对某些文件的更改。如果你想在启用SELinux内核模块的情况下使用ClamAV则需要额外的配置。否则ClamAV将无法读取你的文件的某些部分。

只有当你的服务器启用了SELinux,配置SELinux才是必要的。在Hostinger VPS计划中,它默认是禁用的。

为了检查你的服务器是否启用了 SELinux 请使用命令sestatus。

1、要配置SELinux请逐一执行以下命令:

sudo setsebool -P antivirus_can_scan_system 1
sudo setsebool -P clamd_use_jit 1

2、接下来,你必须验证这些变化。

sudo getsebool -a | grep antivirus

你应该得到这个结果。

antivirus_can_scan_system --> on
antivirus_use_jit --> on

一旦ClamAV准备好与SELinux一起运行就是配置杀毒软件的时候了。

3、配置 ClamAV

1、在你启用ClamAV配置之前,你需要从配置文件中删除Example字符串:

sed -i -e "s/^Example/#Example/" /etc/clamd.d/scan.conf

2、接下来,你将不得不指定服务器的类型。用你喜欢的文本编辑器打开配置文件。

接下来,打开配置文件:

vi /etc/clamd.d/scan.conf

找到以下一行:

#LocalSocket /var/run/clamd.scan/clamd.sock

删除#符号,并保存你的修改。

3、现在从ClamAV的freshclam更新引擎配置文件中删除Example字符串:

sed -i -e "s/^Example/#Example/" /etc/freshclam.conf

4、一旦完成,你可以运行病毒定义数据库更新:

freshclam

你应该得到一个类似的输出:

[root@localhost clamd.d]# freshclam
ClamAV update process started at Tue Mar  7 00:42:54 2023
daily database available for update (local version: 26818, remote version: 26833)
Current database is 15 versions behind.
Downloading database patch # 26819...
Time:    0.9s, ETA:    0.0s [========================>]    2.22KiB/2.22KiB
Downloading database patch # 26820...
Time:    0.8s, ETA:    0.0s [========================>]    1.36KiB/1.36KiB
Downloading database patch # 26821...
Time:    0.7s, ETA:    0.0s [========================>]   28.10KiB/28.10KiB
Downloading database patch # 26822...
Time:    0.8s, ETA:    0.0s [========================>]    5.44KiB/5.44KiB
Downloading database patch # 26823...
Time:    0.7s, ETA:    0.0s [========================>]    2.97KiB/2.97KiB
Downloading database patch # 26824...
Time:    0.7s, ETA:    0.0s [========================>]    2.35KiB/2.35KiB
Downloading database patch # 26825...
Time:    0.8s, ETA:    0.0s [========================>]    5.42KiB/5.42KiB
Downloading database patch # 26826...
Time:    0.7s, ETA:    0.0s [========================>]    1.68KiB/1.68KiB
Downloading database patch # 26827...
Time:    0.8s, ETA:    0.0s [========================>]   31.33KiB/31.33KiB
Downloading database patch # 26828...
Time:    0.8s, ETA:    0.0s [========================>]   35.31KiB/35.31KiB
Downloading database patch # 26829...
Time:    0.7s, ETA:    0.0s [========================>]    1.26KiB/1.26KiB
Downloading database patch # 26830...
Time:    0.7s, ETA:    0.0s [========================>]   11.21KiB/11.21KiB
Downloading database patch # 26831...
Time:    0.7s, ETA:    0.0s [========================>]    6.36KiB/6.36KiB
Downloading database patch # 26832...
Time:    0.7s, ETA:    0.0s [========================>]    4.34KiB/4.34KiB
Downloading database patch # 26833...
Time:    0.8s, ETA:    0.0s [========================>]   19.05KiB/19.05KiB
Testing database: '/var/lib/clamav/tmp.af3454eb0f/clamav-02faa38e843fa343be8d79bfb4479f4a.tmp-daily.cld' ...
Database test passed.
daily.cld updated (version: 26833, sigs: 2023710, f-level: 90, builder: raynman)
main.cvd database is up-to-date (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr)
bytecode database available for update (local version: 333, remote version: 334)
Current database is 1 version behind.
Downloading database patch # 334...
Empty script bytecode-334.cdiff, need to download entire database
Time:    1.4s, ETA:    0.0s [========================>]  285.12KiB/285.12KiB
Testing database: '/var/lib/clamav/tmp.af3454eb0f/clamav-6cdb1d16ed44cda4f165ea5a44afe1f2.tmp-bytecode.cvd' ...
Database test passed.
bytecode.cvd updated (version: 334, sigs: 91, f-level: 90, builder: anvilleg)
[root@localhost clamd.d]#

5、最后,启动Clamd服务并在启动时运行它:

systemctl start clamd@scan	#启动
systemctl enable clamd@scan	#设置开机启动

三、扫描杀毒

clamdscan:

一般用yum安装才能使用,需要启动clamd服务,执行速度快;
用clamdscan扫描,需要开始服务才能使用。速度快,不用带-r,默认会递归扫描子目录;

clamdscan /usr

clamscan:

通用,不依赖服务,命令参数较多,执行速度稍慢;
用clamscan扫描,不需要开始服务就能使用;
-r 递归扫描子目录
-i 只显示发现的病毒文件
--no-summary 不显示统计信息

扫描参数:

-r/--recursive[=yes/no]             所有文件
--log=FILE/-l FILE        增加扫描报告
--move [路径]          移动病毒文件至..
--remove [路径]              删除病毒文件
--quiet                  只输出错误消息
--infected/-i                       只输出感染文件
--suppress-ok-results/-o                   跳过扫描OK的文件
--bell                         扫描到病毒文件发出警报声音
--unzip(unrar)                 解压压缩文件扫描
#扫描所有文件并且显示有问题的文件的扫描结果
clamscan -r --bell -i /

#只显示找到的病毒信息
clamscan --no-summary -ri /tmp

#扫描home
clamscan --infected --remove --recursive /home

定时杀毒

1、编辑cron定时任务
crontab -e

2、让服务器每天晚上定时更新和杀毒,保存杀毒日志,crontab文件如下:

1  3  * * *  /usr/bin/freshclam –quiet  #更新病毒库
20 3  * * *  /usr/bin/clamscan  -r /home --remove -l /var/log/clamscan.log #扫描病毒

参考:https://news.sangniao.com/p/3887988235

(367条消息) Centos7下杀毒软件clamav的安装和使用_clamdsacn_weixin_44162346的博客-CSDN博客

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐