编译linux为病毒,Linux杀毒软件ClamAV(转:秦工)

内容纲要ClamAV是一个C语言开发的开源病毒扫描工具用于检测木马/病毒/恶意软件等。可以在线更新病毒库,

Linux系统的病毒较少,但是并不意味着病毒免疫,尤其是对于诸如邮件或者归档文件中夹杂的病毒往往更

加难以防范,而ClamAV则能起到不少作用

1.安装依赖

yum install -y pcre* zlib zlib-devel libssl-devel libssl openssl epel-release

2.yum安装

安装后会自动生成服务文件,启动服务后,可使用clamdsacn命令,扫描速度快。

启动服务后,会实时监控扫描连接,虽然安全性高了,不过可能会对服务器性能有影响。

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

这种方法安装后,病毒库默认地址是/var/lib/clamav

2.1更新病毒库

执行更新命令,下载病毒库

/usr/bin/freshclam

如果下载不了,可以 wget 到本地来。

cd /usr/share/clamav

wget http://database.clamav.net/main.cvd wget http://database.clamav.net/daily.cvd wget http://database.clamav.net/bytecode.cvd chown clamav:clamav *

2.2病毒扫描

clamav 有两个命令:clamdscan、clamscan

clamdscan 命令一般用 yum 安装才能使用,需要启动clamd服务,执行速度快clamscan 命令通用,不依赖服务,命令参数较多,执行速度稍慢clamdscan:

用clamdscan扫描,需要开始服务才能使用。速度快,不用带 -r ,默认会递归扫描子目录

service clamd start clamdscan /usr clamscan:

用clamscan扫描,不需要开始服务就能使用。速度慢,要带-r,才会递归扫描子目录

clamscan -r /usr

这个命令不仅会显示找到的病毒,正常的扫描文件也会显示出来。可以用下面这个命令,只显示找到的病毒信息

clamscan --no-summary -ri /tmp

-r 递归扫描子目录

-i 只显示发现的病毒文件

--no-summary 不显示统计信息

3.编译安装

需要手动编译安装,安装虽然不需要连网,但更新病毒库还是需要联网;

安装后不用启动服务,不能使用clamdsacn命令,可使用clamscan命令,扫描速度相对较慢;

clamav官网:http://www.clamav.net/downloads wget直接下载源码包。

wget http://www.clamav.net/downloads/production/clamav-0.102.2.tar.gz

3.1下载软件包

# 官网地址:

http://www.clamav.net/downloads # Linux中下载地址:

wget http://www.clamav.net/downloads/production/clamav-0.102.2.tar.gz # 参考文档:

https://github.com/vrtadmin/clamav-faq/raw/master/manual/clamdoc.pdf

3.2创建clamav用户和存放病毒库目录

#clamav用户

useradd -s /sbin/nologin -M clamav #日志存放目录

mkdir -p /usr/local/clamav/logs

touch /usr/local/clamav/logs/clamd.log touch /usr/local/clamav/logs/freshclam.log

chown clamav.clamav /usr/local/clamav/logs/clamd.log chown clamav.clamav /usr/local/clamav/logs/freshclam.log

#病毒存放目录

mkdir -p /usr/local/clamav/updata chown -R root.clamav /usr/local/clamav/

chown -R clamav.clamav /usr/local/clamav/updata/

3.3解压安装包

tar xf clamav-0.102.2.tar.gz

3.4编译安装

cd clamav-0.100.0/

./configure --prefix=/usr/local/clamav --with-pcre make && make install

echo $?

# 注: 出现Your libcurl (e.g. libcurl-devel) is too old. Installing ClamAV with clamonacc requires libcurl 7.45 or higher. For a quick fix, run ./configure again with --disable-clamonacc if you do not wish to use on-access scanning features.

For more information on ### 需要升级libcurl

3.5升级libcurl

3.51安装repo

rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/rhel7/x86_64/city-fan.org- release-2-1.rhel7.noarch.rpm

3.52查看该 repo 包含的 curl 版本

yum --showduplicates list curl --disablerepo="*" --enablerepo="city*"

3.53修改该repo的enable为1

vi /etc/yum.repos.d/city-fan.org.repo [city-fan.org]

name=city-fan.org repository for Red Hat Enterprise Linux (and clones)

$releasever ($basearch)

#baseurl=http://mirror.city-fan.org/ftp/contrib/yum- repo/rhel$releasever/$basearch

mirrorlist=http://mirror.city-fan.org/ftp/contrib/yum-repo/mirrorlist- rhel$releasever

enabled=1 gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-city-fan.org

3.54安装最新的curl

yum install curl

3.6配置clamav

cd /usr/local/clamav/etc

cp clamd.conf.sample clamd.conf

cp freshclam.conf.sample freshclam.conf

vim clamd.conf

#Example 注释掉这一行. 添加下面三行:

LogFile /usr/local/clamav/logs/clamd.log PidFile /usr/local/clamav/updata/clamd.pid DatabaseDirectory /usr/local/clamav/updata

6951cf9709f8dcd1d9ba533d8f64c387.png

vim freshclam.conf #Example 注释掉这一行. 添加下面三行

DatabaseDirectory /usr/local/clamav/updata UpdateLogFile /usr/local/clamav/logs/freshclam.log PidFile /usr/local/clamav/updata/freshclam.pid

e20dfb6144e828fc97589a3eba267868.png

3.7启动clamav

chown -R clamav.clamav /usr/local/clamav/

systemctl start clamav-freshclam.service

systemctl enable clamav-freshclam.service

systemctl status clamav-freshclam.service

77155722300e605f552efe4a47024386.png

3.8更新病毒库

#先停止freshclam

systemctl stop clamav-freshclam.service #再更新

/usr/local/clamav/bin/freshclam (根据网络质量确定更新时长)

或者

cd /usr/local/clamav/update

wget http://database.clamav.net/main.cvd wget http://database.clamav.net/daily.cvd wget http://database.clamav.net/bytecode.cvd

76d3d08d70dfe4d794a99dec49f5a12a.png

3.9更新完成启动

systemctl start clamav-freshclam.service

systemctl status clamav-freshclam.service

9eea71d46cfbfa9a7a68d9dc1c85f96a.png

3.10扫描杀毒

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

3.11定时杀毒

vim /etc/crontab # 服务器每天晚上11点半定时更新和12点杀毒,保存杀毒日志

30 23 * * * root /usr/local/clamav/bin/freshclam --quiet &>/dev/null

00 0 * * * root /usr/local/clamav/bin/clamscan -r /home -l /var/log/clamscan.log 00 4 * * * root /usr/local/clamav/bin/clamscan -r /usr /etc -l /var/log/clamscan.log

3.12 查看扫描日志

cat /var/log/clamscan.log

# Infected files: 0 表示被感染的文件数 FOND

# 可以找到感染的文件手动删除

或是/usr/local/clamav/bin/clamscan -r /usr /etc --remove -l

/var/log/clamscan.log 直接将扫描到被感染的文件删除

b627dc1b2a802564ffa0c9c52ac32332.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值