数据完整性监测 Tripwire是UNIX平台上著名的文件系统完整性检查工具,它能够帮助判断系统的一些重要文件是否被入侵者修改过。工作原理是,使用数字签名对文件进行比较;对每个要监控的文件,都生成一个数字签名并存档(放在数据库中),在检查时,如果发现数字签名于存档不一致,就说明文件被改动过。
安装Tripwire
安装过程弹出对话框,全部选择Yes,最后两项输入site密码和local密码
配置Tripwire
ripwire的配置文件位于/etc/tripwire/目录下,主配置文件为twcfg.txt,策略文件为twpol.txt,而tw.cfg和tw.pol分别为配置文件盒策略文件被编译后的二进制文件
Tripwire在运行过程中调用的是编译后的二进制文件,所以,每次修改配置后,都必须将文件编译。
1)配置twcfg.txt
主配文件基本不需要修改,只有SMTP服务器地址已经E-mail报告级别等设置可能需要根据实际进行调整:
cat twcfg.txt
ROOT=/usr/sbin
POLFILE=/etc/tripwire/tw.pol
DBFILE=/var/lib/tripwire/$(HOSTNAME).twd
REPORTFILE=/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twr
SITEKEYFILE=/etc/tripwire/site.key
LOCALKEYFILE=/etc/tripwire/$(HOSTNAME)-local.key
EDITOR=/usr/bin/editor
LATEPROMPTING=false
LOOSEDIRECTORYCHECKING=false
MAILNOVIOLATIONS=true
EMAILREPORTLEVEL=3
REPORTLEVEL=3
SYSLOGREPORTING=true
MAILMETHOD=SMTP
SMTPHOST=localhost
SMTPPORT=25
TEMPDIRECTORY=/tmp
文件修改好后,需要重新编译:
cd /etc/tripwite
sudo twadmin -m F -S site.key twcfg.txt
完成之后可以把twcfg.txt删除,如果删除后可以重新导出:
sudo twadmin -print -cfgfile
sudo tee /etc/tripwire/twcfg.txt
2) 配置twpol.txt
策略文件基本不需要修改,里面定义了各种Tripwire策略,包括要监控的目录和文件等。
不过在Ubuntu的默认配置文件中,将整个/proc目录都监控了,这会导致每次做完检查时都出现一堆不必要的错误(旧进程结束,新进程开始)。所以这类可以修改一下该策略,仅监控/proc下面重要的进程。
vi /etc/tripwire/twpol.txt
修改完成,重新编译
sudo twadmin -m P -S site.key twpol.txt
策略文件删除后可以重新导出
sudo twadmin -print-polfile
sudo tee /etc/tripwire/twpol.txt
测试邮件报告功能:
sudo tripwire -test -email vfeelit@qq.com
初始化Tripwire数据库
输入local密码 执行完整性监测默认,Tripwire在安装时会创建一个cron任务,每天执行一次完整性检查,并发送邮件。也可以手工执行:
sudo tripwire -check -email-report
监测报告分析Tripwire的监测结果,放在/var/lib/tripwire/report/目录下。这些不是文本文件,必须用twprint命令才能查看:
sudo twprint -m r -twrfile /var/lib/tripwire/report/<your-file>.twr " less