tripwire是一个开源的入侵检测系统,他的工作原理就是在初始化时,对每个需要进行检测的文件或目录做数字签名,并把数字签名存到数据库里,当需要检测文件或目录是否被修改过是,就会把当前文件或目录的数字签名和数据中的作对比,如果不一样了就说明被改动过了。
实验任务:
1、安装tripwire
2、配置tripwire策咯
3、验证配置
4、添加新规则
5、邮件通知
安装tripwire
Tripwire 官网:http://nchc.dl.sourceforge.net/project/tripwire
由于 centos 7 基本 yum 源没有 tripwire,所以我们可以用源码方式安装,或者使用第三方源安装。我在这里用的第三方 EPEL 源
首先配置yum源
下载软件包epel-release
wget https://mirrors.ustc.edu.cn/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
解压软件包
rpm -ivh epel-release-7-11.noarch.rpm
安装tripwire
yum install tripwire --enablerepo=eple
安装完成后,会在/etc/tripwire/下生成两个关键性文件,分别是 twcfg.txt 和 twpol.txt,这两个文件一个是程序配置位置文件,另一个是入侵检测策略文件。到此, 安装成功。
配置tripwire策略
接下来开始使用tripwire。在使用之前要对tripwire进行一些配置。
Tripwire有两个管理密码,一个叫站点密钥(site key),用于更新配置文件和入侵检测策略。另一个叫本地密钥(local key),用于更新本地数据库。在以后配tripwire是会用到这两个密钥来验证身份。所以在运行tripwire之前必须创建key文件来配置这两个密钥。
创建key文件
tripwire-setup-keyfiles
在此处输入“site keyfile”口令(输入后不会显示),并且记住这个口令,然后再次确认口令,我的口令是123456。
在此处输入“local keyfile”口令(输入后不会显示),并且记住这个口令,然后再次确认口令,我的口令是654321
Tripwire为了自身安全,防止被篡改,会对这twpol.txt和twcfg.txt两个文件进行加密和签名。
用站点密码给配置文件签名,防止篡改。输入“site keyfile”口令(123456)
用站点密码给配置文件签名,防止篡改。输入“site keyfile”口令(123456)
我们可以看到,由twcfg.txt和twpol.txt生成了tw.cfg和tw.pol配置文件
查看 tw.cfg可以看到已经被加密,为乱码。
为了安全起见,一般在配置好tripwire后,会删除twcfg.txt和twpol.txt这两个文件,在这里我为了做以后的实验,保留这两个文件。
初始化tripwire,输入站点密码,扫描文件并建立数据库
tripwire --init
在执行命令过程中会有很多报错,这是因为twpol文件中定义了许多系统中没有的文件,可以在twpol.txt中删除或者注释掉没有的文件。下边我采用脚本形式,重新生成twpol文件。