功能:
Tripwire是在LINUX下检查文件完整性和一致性的工具。
原理:
Tripwire会根据配置文件对指定要临控的文件生成一份加密的快照。当怀疑系统被入侵时,可由Tripwire根据先前生成的加密快照来做一次数字签名的对照,如果文件被替换,则与Tripwire数据库内相应数字签名不匹配, 这时Tripwire会报告相应文件被更动。检查的结果会以文本文件或者MAIL的形式反映出来。
配置:
配置文件是/etc/tripwire/twcfg.txt
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, //策略文件读取的密钥存放处
策略文件 /etc/tripwire/twpol.txt
@@section GLOBAL里是设置tripwire运行时需要的一些变量,这些变量有的要和twcfg.txt里的变量要保持一致。
@@section FS是预定义一些规则
类似于以下这一段话是指明tripwire要监控的文件和用那些规则。
(
rulename = "Networking Programs",
severity = $(SIG_HI)
)
{
/sbin/arp -> $(SEC_CRIT) ;
/sbin/ifcfg -> $(SEC_CRIT) ;
/sbin/ifconfig -> $(SEC_CRIT) ;
/sbin/ifdown -> $(SEC_CRIT) ;
/sbin/ifenslave -> $(SEC_CRIT) ;
/sbin/ifport -> $(SEC_CRIT) ;
/sbin/ifup -> $(SEC_CRIT) ;
/sbin/ifuser -> $(SEC_CRIT) ;
/sbin/ip -> $(SEC_CRIT) ;
/sbin/ipmaddr -> $(SEC_CRIT) ;
/sbin/iptables -> $(SEC_CRIT) ;
/sbin/iptunnel -> $(SEC_CRIT) ;
/sbin/iwconfig -> $(SEC_CRIT) ;
/sbin/iwpriv -> $(SEC_CRIT) ;
/sbin/iwspy -> $(SEC_CRIT) ;
/sbin/netreport -> $(SEC_CRIT) ;
/sbin/plipconfig -> $(SEC_CRIT) ;
/sbin/portmap -> $(SEC_CRIT) ;
/sbin/ppp-watch -> $(SEC_CRIT) ;
/sbin/route -> $(SEC_CRIT) ;
/sbin/slattach -> $(SEC_CRIT) ;
/sbin/ypbind -> $(SEC_CRIT) ;
/bin/ping -> $(SEC_CRIT) ;
}
用法:
初始化:
twadmin -m P /etc/tripwire/twpol.txt //建立策略文件
tripwire -m i //生成快照
生成报告:
tripwire -m c
查看以往报告:
tripwire -m u –r /var/lib/tripwire/report/linux-???????-??????.twr
缺点:
1、 生成报告时占用系统资源较大。
2、 不能在WINDOWS上使用该软件。