centos 如何确保ClamAV数据库是最新的?

9avjhtql  于 2022-11-07  发布在  其他
关注(0)|答案(5)|浏览(615)

我目前在Centos 6.9上遇到了ClamAV和Freshclam的问题。
我有最新的Clam引擎0.99.2,并且有一个正常的互联网连接。即使我在# clamscan之前运行# freshclam -v命令(它只返回一个关于freshclam.conf的不安全权限的安全警告),clamAV也会返回这个警告:
LibClamAV Warning:**************************************************LibClamAV Warning:***The virus database is older than 7 days.***LibClamAV Warning:***Please update it IMMEDIATELY!***LibClamAV Warning:**************************************************
所以我的问题是:如何知道上次更新的时间?或者如何确保病毒数据库是最新的?
PS:我已经用eicar测试文件测试了clamscan,它检测到了。

yduiuuwa

yduiuuwa1#

clamscan --version显示签名的版本和日期,例如

$ clamscan --version
ClamAV 0.101.4/25613/Fri Oct 25 11:00:25 2019

其中,25613是签名版本,后跟签名日期

snvhrwxg

snvhrwxg2#

您有两个问题:
1.如何知道上次更新是何时完成的?
/var/log/clamav/freshclam.log
这将告诉你clamav何时提供了最后一次更新。
1.确定病毒数据库是最新的?
首先,您需要了解为什么会收到安全警告。如果您在此处发布警告,我们可能会有更好的机会来帮助您。
那么我建议您查看日志中的/var/log/clamav/freshclam.log
另外,如果您启用了selinux,则必须运行以下命令:setsebool -P antivirus_can_scan_system 1。如果错误是During database load : LibClamAV Warning: RWX mapping denied: Can't allocate RWX Memory: Permission denied,那么很明显,您的解决方案就是上面提到的命令。

r9f1avp5

r9f1avp53#

这是我对你问题的第二部分所做的:确定病毒数据库是最新的?
我的系统是离线的,所以不能查询clamav网站的最新病毒定义数据库,但我可以很容易地检查我的当前cvd文件的日期与此linux命令。

strings /var/lib/clamav/daily.cvd|head -1|cut -c1-28
ClamAV-VDB:31 Jul 2019 04-17

编辑:正如Jonathon非常友好地提到的,sigtool是检查clamav dat文件签名的一个很好的方法:

sigtool --info daily.cvd
File: daily.cvd
Build time: 28 Aug 2019 04:24 -0400
Version: 25555
Signatures: 1739106
Functionality level: 63
Builder: raynman
...
wz1wpwve

wz1wpwve4#

您不能信任TXT记录的日期。但是,您可以信任TXT记录的数据库版本。
因此,正确的答案是使用@bogdan和@falko-menge两个答案的一部分:
首先,“我的计算机上的clamav数据库是什么版本?”(在本例中为25904):

$ clamscan --version
ClamAV 0.102.4/25904/Mon Aug 17 08:02:24 2020

现在,“www.example.com上提供的最新版本是什么clamav.net?“(在本例中,也是25904):

@ ✓ $ host -t txt current.cvd.clamav.net; perl -e 'printf "%d\n", time;'
current.cvd.clamav.net descriptive text "0.102.4:59:25904:1597879740:1:63:49191:331"

但是,该TXT记录显示的25904实际创建时间是错误的:-(

@ ✓ $ epoch_to_rfc_3339 1597879740
2020-08-19T18:29:00
eoigrqb6

eoigrqb65#


# !/bin/bash

check_clamav_version=`freshclam -V`
check_clamav_site=`host -t txt current.cvd.clamav.net`

# echo $check_clamav_version

# echo $check_clamav_site

clamav_version=`echo $check_clamav_version |awk -F '/' '{ print $2}'`
clamav_site=`echo $check_clamav_site |awk -F ":" '{ print $3}'`

echo $clamav_version
echo $clamav_site
let "result=clamav_site-clamav_version" ; echo $result

case $result in
0) echo "ClamAV is up to date, versies zijn gelijk"
;;

* ) echo "ClamAV is niet up to date, lokale database is versie $clamav_version, op de site is versie $clamav_site beschibaar."

;;
esac

相关问题