Tripwire强大的服务器文件完整性监测系统-检测并报告服务器入侵

Tripwire是一个开源的功能强大的服务器文件完整性监测系统,利用各个文件的数字签名前后之间的对比 ,从而得出系统中的文件是否被人篡改过。Tripwire强大之处在于利用MD5和SNCFRN加密手段来生成文件的数字签名,任何文件改动的痕迹都能察觉。

如果你怀疑服务器遭到黑客攻击过,在多数情况下,黑客可能对系统文件等等一些重要的文件进行修改,这时Tripwire就可以生成文件变动的详细报告了。同时,为了防止Tripwire自身的文件也被人动手脚,我们可以将Tripwire的数字签名数据库、Tripwire二进制文件、配置文件单独取出来。

总之,Tripwire虽然不能抵御服务器入侵,但是却是“黑客”背后一双明亮的“眼睛”,默默地记录着服务器上所有的一切,是我们保证服务器安全的一个重要工具。本文就来分享一下Tripwire的安装与使用方法。

一、Tripwire安装

1、Tripwire官网:

  • 1、官方网站:https://sourceforge.net/projects/tripwire/

2、Tripwire安装在VPS上只要执行以下命令:

wget https://sourceforge.net/projects/tripwire/files/tripwire-src/tripwire-2.4.1.2-src/tripwire-2.4.1.2-src.tar.bz2
tar jxvf tripwire-2.4.1.2-src.tar.bz2
cd tripwire-2.4.1.2-src
./configure --prefix=/usr/local/tripwire
make
make install

3、安装过程中,会要求你阅读使用协议,回车。

4、空格是翻页,到最后输入“Accept”继续安装。

5、接着会要求你输入“site keyfile”口令和“local keyfile”口令,各两遍,完成确认。

6、最后安装Tripwire完成。

二、Tripwire配置

1、Tripwire相关文件目录是在/usr/local/tripwire中。主要是:

  • 1、配置文件:定义数据库、策略文件和Tripwire可执行文件的位置:/etc/tripwire/twcfg.txt
  • 2、策略:定义检测的对象及违规时采取的行为:/etc/tripwire/twpol.txt
  • 3、数据库:用于存放生成的快照:/var/lib/tripwire/$(HOSTNAME).twd

2、同时,Tripwire为了自身的安全,防止自身被篡改,也会对自身进行加密和签名处理。其中,包括两个密钥:

  • 1、site密钥:用于保护策略文件和配置文件,只要使用相同的策略和配置的机器,都可以使用相同的site密钥:/etc/tripwire/site.key
  • 2、local密钥:用户保护数据库和分析报告,不会重复:/etc/tripwire/$(HOSTNAME)-local.key

3、其中 /etc/twpol.txt中是控制对哪些目录进行检查,执行:vim /usr/local/tripwire/etc/twpol.txt 可以打开编辑此文件。

4、对于一些不存在的文件目录和文件或者不想让Tripwire监控的文件目录等可以用#号把它注释掉。

三、Tripwire使用

1、Tripwire第一次安装后,需要进行一次数据初始化,命令:

/usr/local/tripwire/sbin/tripwire --init

2、在检测服务器文件完整性时,对于不存在的目录或者文件Tripwire会报警,没有关系。当然你可以在twpol.txt 把这些目录或者文件给注释掉。

3、最后Tripwire会生成一个文件监控数据库,存放在/usr/local/tripwire/lib/tripwire 中。

4、Tripwire初始化完成后,就可以执行文件完整性检测了,默认的情况下Tripwire每天进入一次检查:

/etc/cron.daily/tripwire --check

5、手动检查的命令是,先进入到/usr/local/tripwire中 ,再执行命令:

./sbin/tripwire --check --interactive

6、后面加上interactive,是用于检测完成后自动打开文件完整性报告,这就是Tripwire的检测报告,任何文件属性的变动就可以在报告中看到。(点击放大)

四、Tripwire报告

1、Tripwire检测后生成的报告放在/usr/local/tripwire/lib/tripwire/report 中,文件是加密的。

2、如果要查看的话,需要用到Tripwire的解密工具:twprint。依然是进入到/usr/local/tripwire 目录中,然后执行(注意:freehao123.XX.XX.twr 是报告文件名,你需要修改成你自己的):

./sbin/twprint --print-report --twrfile ./lib/tripwire/report/freehao123.cloud.mos.meituan.local-20140810-152548.twr >/tmp/tripwire_readable.txt
cat /tmp/tripwire_readable.txt

3、解密后的Tripwire报告可以下载到本地用文本编辑器打开查看,不过为了保密,查看后记得把这些解密后的文本文件删除。

4、如果你怀疑某一个文件有重大的问题,除用文本编辑器搜索功能查找外,还可以使用twprint提取工具:

./sbin/twprint -m d --print-dbfile /home/freehao123.js

五、更新Tripwire数据库和定时执行文件完整性检测

1、如果你修改过文件完整性监测项目控制文件twpol.txt,需要执行更新配置文件:

cd /usr/local/tripwire
./sbin/tripwire --update-policy --secure-mode low ./etc/twpol.txt

2、Tripwire以最开始生成的文件完整性的数据库作为对比基准,但如果有些文件是自己修改过的,并不希望Tripwire在每次检测时把它当成是异常,这时就需要找到原始的数据库文件,执行更新操作了。

tripwire --update --twrfile /usr/local/tripwire/lib/tripwire/report/freehao123.cloud.mos.meituan.local-20140810-152548.twr

备注:执行该命令之后,您就进入了一个编辑器。搜索所报告的文件名。所有侵害或更新都在文件名前面有一个 [x]。该演示中的查找模式如下:

[x] "/usr/local/bin/pwgen"

例如:

Rule Name: pwgen (/usr/local/bin/pwgen)
Severity Level: 0
-------------------------------------------------------------------------------

Remove the "x" from the adjacent box to prevent updating the database
with the new values for this object.

Modified:
[x] "/usr/local/bin/pwgen"

如果您希望接受这些更改为正当的,则只需保存并退出文件即可。Tripwire 不再报告此文件。如果您想要这个文件不被添加到数据库,那么请删除 ‘x‘。

保存文件并退出编辑器时,若有数据库更新发生,会提示您输入密码以完成该过程。如果没有更新发生,那么 Tripwire 会通知您的,并且不需要输入密码。该演示中出现以下提示,因为数据库将被更新:

Please enter your local passphrase: master
Wrote database file: /var/lib/tripwire/rs6000.twd

我们也可以用 init 选项再次运行 Tripwire,对下次运行要比较的内容进行一次基本的扫描,如下所示:

# /usr/local/tripwire/sbin/tripwire --init

3、Tripwire设置定时检测任务。编辑定时任务:crontab -e,以下命令是表示每天凌晨4:00时开始自动执行文件完整性检测并生成报告 。

00 4 * * * /usr/local/tripwire/sbin/tripwire --check

六、Tripwire使用小结

1、管理员如果能够定制完整的策略和检查周期,Tripwire将可以实现对系统的完整监控,在遭遇服务器入侵时Tripwire将是帮助检测入侵痕迹的最有力工具。

2、为了防止Tripwire本身也遭遇篡改,我们需要做好Tripwire的备份工作,有兴趣的朋友还可以设置好Tripwire执行完检测任务后自动将检测报告发送到管理员邮箱,以便及时作出应对。

时间: 2024-10-26 04:48:13

Tripwire强大的服务器文件完整性监测系统-检测并报告服务器入侵的相关文章

在云端服务器+终端的方式安装配置网防G01管理监测系统

生产环境: 操作系统:CentOS release 6.9 (Final) 任务:网防G01管理监测系统 官网提供Linux安装步骤:http://help.gov110.cn/part2/chaper3/linux.html 操作步骤: 网防监测系统网址:http://www.gov110.cn/ 1.在网防监测系统注册账号 2.登录系统下载Linux服务版和客户PC端版 3.Linux服务器安装步骤:即服务端 [[email protected] tools]# wget http://up

Linux高性能服务器编程——系统检测工具

系统检测工具 tcpdump tcpdump是一款经典的转包工具,tcpdump给使用者提供了大量的选项,泳衣过滤数据报或者定制输出格式. lsof lsof是一个列出当前系统打开的文件描述符的工具.通过它我们可以了解感兴趣的进程打开了哪些文件描述符,或者我们感兴趣的文件描述符被哪些进程打卡了. nc nc命令主要被用来快速构建网络连接.我们可以让它以服务器方式运行,监听某个端口并接收客户连接,因此它可用来调试客户端程序.我们也可以使之以客户端方式运行,向服务器发起连接并收发数据,因此它可以用来

怎样使用 Tripwire 来检测 Ubuntu VPS 服务器的入侵

介绍 当管理联网服务器时,服务器的安全是一个非常复杂的问题.尽管可以配置防火墙.设置日志策略.购买安全服务或者锁定应用,如果你想确保阻止每次入侵这远远不够. 一个 HIDS 可以收集你电脑的文件系统和配置,存储这些信息用来参考和判断系统当前的运行状态.如果在已知安全的状态和当前状态之间发生了改动,就表明可能已经并不安全了. Linux 下一个流行的 HIDS 是 Tripwire.这个软件可以跟踪许多不同的文件系统数据,以检测是否发生未经授权的更改. 在本文中,我们将讨论如何在 Ubuntu 1

电信性能监测系统

获取项目源文件,技术交流与指导联系Q:1225467431 摘  要 随着计算机技术的不断发展,许多企事业单位的管理都实现了办公自动化,这种自动化管理方式不仅管理简单,而且效率非常高.为了更好的对电信各个站点的工作状态的监测,特做本系统. 本文所阐述的系统是使用了Java中的jcifs:jfreechart:JSPservlet:quartz等技术进行开发,并且使用Oralce作为数据库服务器管理后台数据的管理信息系统. 系统采用管理员和用户两种方式登录,分别进行管理,网页的动态数据传递通过JS

基于无线ZigBee的污水监测系统

0 引言 污水是造成环境污染的原因之一.在人类生存环境日益恶化的今天.建立完整的污水监测系统是非常必要的.而处理分布在各处的污水检测点的数据传输问题一直是建立污水监测系统的难点. 1 污水监测的无线传感器网络架构 污水监测系统分为污水参数监测系统和污水处理过程监测系统.前者实现对水温.pH值.浊度.电导率.溶解氧含量等污水参数的测量.并对污水关键进水口和排水口重点区域的流量和水位检测等进行实时视频监测:后者完成各个污水处理池污水处理过程的参数与控制指令传输.由于污水进水口和排水口广泛分布.每个污

ZigBee城市道路井盖安全监测系统

0 引 言 随着社会的不断发展及城市数字化进程的不断加快,城市的设施建设也是越来越多.如埋于地下的电力电缆管线,给水排水管线,天然气.煤气管线,通信电缆等.为了方便对其进行检查和维修,所以每隔一定的距离就设有一个检查井.大量的检查井构成了城市里随处可见的井盖群.然而井盖的破损及丢失会带来严重的安全隐患:如汽车陷入检查井,路人落井等,给我们的人身安全和财产安全带来了严重的威胁.为了减少灾难性事故的发生,目前我国许多城市对城市道路井盖的安全管理仍采用专人进行定期的维护和巡查的方法.这种方法不能及时发

Security基础(五):部署Cacti监控平台、构建Cacti监测系统

一.部署Cacti监控平台 目标: 本案例要求部署一台Cacti监控主机,并安装相关监控组件,为进一步执行具体的监控任务做准备: 安装net-snmp.net-snmp-utils 安装LAMP及相关依赖软件包 部署Cacti监控平台 初始化监控页面 方案: 使用1台RHEL7虚拟机,安装部署LAMP环境.Cacti及相关的snmp组件包,配置数据库并对Cacti监控平台进行初始化操作. 步骤: 步骤一:准备基础软件包 1)安装LAMP环境 Cacti监控需要通过Web页面展示出来,并且还需要使

Linux监控篇—Centos7.4下构建zabbix监测系统

Centos7.4-构建zabbix监测系统 目录第一部分 实验环境第二部分 配置服务器端第三部分 配置被控端(被监控服务器)第四部分 配置邮件报警功能第五部分 测试验证邮件报警 第一部分 实验环境 Linux服务端一台IP地址:192.168.80.10需要软件:php-bcmath-5.4.16-42.el7.x86_64php-mbstring-5.4.16-42.el7.x86_64注意:需要公网环境(可以上外网),网上下载最新版本的zabbix服务从微软客户端下载字体(楷体)到本机 L

构建Cacti监测系统

案例1:部署Cacti监控平台 案例2:构建Cacti监测系统 1 案例1:部署Cacti监控平台1.1 问题 本案例要求部署一台Cacti监控主机,并安装相关监控组件,为进一步执行具体的监控任务做准备: 安装net-snmp.net-snmp-utils 安装LAMP及相关依赖软件包 部署Cacti监控平台 初始化监控页面 1.2 方案 使用1台RHEL7虚拟机,安装部署LAMP环境.Cacti及相关的snmp组件包,配置数据库并对Cacti监控平台进行初始化操作.1.3 步骤 实现此案例需要