chaihongjun.me

centos安装恶意软件检测工具MalDet

centos安装恶意软件检测工具MalDet

2018.12.27更新

lmd结合clamav保护linux主机,之前曾经介绍过lmd可以设置监控,今天通过参数--monitor设置了一下,需要注意的是首先需要安装一个软件,很简单 yum install inotify-tools 其他平台可以参考 https://github.com/rvoicilas/inotify-tools/wiki,然后在使用--monitor监控即开启了。

QQ截图20181227173049.png

11.png

当然,想关闭监控也简单使用参数 -k 即可。

以下是之前写的内容。

    服务器有恶意软件,是一件非常恶心的事情,虽然按照之前的文章《centos服务器安装clamav杀毒软件实录》,安装了杀毒软件也每天做定时扫描,但结果是,并没有病毒软件,所以,恶心的恶意软件每天去阿里云后台处理就显得很不爽,当购买的阿里云安全服务到期之后怎么办,除了续费服务那就只剩自己手动检查了,从网上舶来几篇文章凑成下面的内容。

    1.首先是下载MalDet

# 官网 https://www.rfxn.com/projects/linux-malware-detect/
wget http://www.rfxn.com/downloads/maldetect-current.tar.gz
tar xfz maldetect-current.tar.gz

    2.安装

# {$version}是你当前下载之后解压的版本号
cd maldetect-{$version}
./install.sh

    安装过程后面会自动升级一下扫描规则和库的前面文件(好生硬的翻译)。然后,会提示相应的文件所在的路径:

installation completed to /usr/local/maldetect
config file: /usr/local/maldetect/conf.maldet
exec file: /usr/local/maldetect/maldet
exec link: /usr/local/sbin/maldet
exec link: /usr/local/sbin/lmd
cron.daily: /etc/cron.daily/maldet

    3.修改配置文件,这里需要注意的是参考资料提到的几个配置项,名称都发生了变化

#vi /usr/local/maldetect/conf.maldet
# [ General Options ]
#以下三项都是关于邮件通知相关的,不做修改(不想接收邮件通知)
email_alert="0"
email_addr="you@domain.com"
email_ignore_clean="1"
#自动升级数字签名
autoupdate_signatures="1"
#自动更新版本
autoupdate_version="1"
#自动更新版本号哈希值
autoupdate_version_hashed="1"
#隔离区内文件的保留期限,单位是天,保留最近N天的隔离文件
cron_prune_days="7"
...
[ SCAN OPTIONS ]
#最大扫描深度,推荐10-15层目录,太深了影响扫描的速度
scan_max_depth="15"
#最小被扫描的文件大小(byte)
scan_min_filesize="24"
#最大扫描文件大小(b,k,M单位都可以,当使用clam扫描的时候不受这个配置项限制)
scan_max_filesize="2048k"
#使用clam扫描
scan_clamscan="1"
...
[ QUARANTINE OPTIONS ]
#被扫描到的恶意软件会警告并移动到隔离区
quarantine_hits="1"
#尝试清理被感染文件
quarantine_clean="1"
#用户帐户若被感染,延缓使用它?
"quarantine_suspend_user=1"
...

    4.扫描

maldet -参数
#可选的参数有:
-b ,--background 在后台扫描,这个通常用来扫描大文件的时候使用
e.g: maldet -b /alidata1
-u , --update 更新数字签名
-d , --update-ver 更新软件版本
-m , --monitor USERS|PATHS|FILE   创建监控
e.g: maldet --monitor users 监控用户
e.g: maldet --monitor /root/monitor_paths   监控路径
e.g: maldet --monitor /home/mike,/home/ashton 监控多个路径
-k , --kill 关闭监控
-r , --scan-recent PATH DAYS 扫描最近几天PATH(默认是7天)里创建或者被修改的文件
e.g: maldet -r /root 2    扫描最近2天root下被创建修改的文件
-a , --scan-all PATH  扫描PATH里面全部文件
e.g: maldet -a /root   扫描root下面全部的文件
-c, --checkout FILE    将被感染文件上传到rfxn.com做再次确认
-l , --log 看扫描日志
-e , --report SCANID email 查看扫描简报
e.g: maldet --report
e.g: maldet --report list
e.g: maldet --report 050910-1534.21135
-s ,--restore FILE|SCANID 恢复扫描出来受感染的文件到原来的目录下
e.g: maldet --restore /usr/local/maldetect/quarantine/config.php.23754
e.g: maldet --restore 050910-1534.21135     #通过扫描简报的ID也可以还原 
-q, --quarantine SCANID  根据扫描事件ID隔离所有扫描出来的文件
e.g: maldet --quarantine 050910-1534.21135
...
其他参数可以参考:
https://www.rfxn.com/appdocs/README.maldetect

    所以手动扫描清理可以这样:

maldet -a /path

    5.设定定时扫描清理任务

#由于默认每天执行的扫描任务不太适合我们实际情况
#所以配合crontab做了一个自定义的任务

#sanc web files everyday
30 1 * * * /usr/local/sbin/maldet -b -a /alidata/www

    参考:

    https://www.howtoing.com/installing-linux-malware-detect-in-centos-rhel/
 

知识共享许可协议本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。作者:柴宏俊»

相关推荐