Tripwire如何为Linux文件系统保驾护航

Tripwire如何为Linux文件系统保驾护航

我们在本文中将介绍Tripwire(https://www.tripwire.com/)这款保护Linux文件系统的出色工具。Tripwire是一款完整性检查工具,采用GPLv2许可证的开源软件,让系统管理员、安全工程师及其他人员能够检测对系统文件所做的改动。虽然Tripwire不是唯一的选择(AIDE和Samhain提供类似的功能),却称得上是最常用的Linux系统文件完整性检查工具。

Tripwire如何工作?

有必要知道Tripwire如何运行,以便了解它在安装后能派什么用场。Tripwire的工作原理是,定期将目录和文件与数据库中的快照进行比较,报告任何改动的现象。

Tripwire包括这两大部分:策略和数据库。策略列出了这款完整性检查工具应该拍摄快照的所有文件和目录,并创建用于识别改动目录和文件这一违规操作的规则。数据库由Tripwire拍摄的快照组成。

Tripwire还有一个配置文件,指定了数据库、策略文件和Tripwire可执行文件的位置。它还提供了两个加密密钥:站点密钥和本地密钥,保护重要文件以免被篡改。站点密钥保护策略和配置文件,而本地密钥保护数据库和生成的报告。

安装Tripwire

想使用Tripwire,我们就要先下载并安装它。Tripwire在几乎所有的Linux发行版上都可以运行;可以从Sourceforge(http://sourceforge.net/projects/tripwire)下载一个开源版本,如下安装,具体取决于你的Linux版本。

Debian和Ubuntu用户可以使用apt-get直接从软件包存储库安装Tripwire。非root用户应输入sudo命令,通过apt-get来安装Tripwire。

sudo apt-get update 


 


sudo apt-get install tripwire 

CentOS及其他基于rpm的发行版遵循类似的过程。一个最佳实践是,在安装Tripwire之类的新软件包之前,先更新存储库。yum install epel-release这个命令只是意味着,我们想要安装额外的存储库。(epel的全称是Extra Packages for Enterprise Linux。)

yum update  +z


 


yum install epel-release  


 



yum install tripwire  

该命令促使安装过程对Tripwire正常发挥功效所需要的软件包进行配置。此外,它会询问你是否想在安装过程中选择口令短语。这两个提示都可以选择“Yes”。

另外,提示是否需要构建配置文件,选择“Yes”。为站点密钥和本地密钥选择并确认口令短语(建议使用复杂的口令短语,比如Il0ve0pens0urce。)

建立并初始化Tripwire的数据库

下一步初始化Tripwire数据库,如下所示:

tripwire --init 

你需要提供本地密钥口令短语,才能运行这些命令。

使用Tripwire执行基本的完整性检查

你可以使用下列命令,指令Tripwire检查你的文件或目录是否被改动。Tripwire能够将文件和目录与数据库中的初始快照进行比较,有赖于在活动策略中创建的规则。

tripwire  --check   

还可以限制-check命令只适用于特定的文件或目录,如下例所示:

tripwire   --check   /usr/tmp   

此外,如果你需要获得使用Tripwire的-check命令方面的更多帮助,该命令让你可以查阅Tripwire的使用手册:

tripwire --check --help 

使用Tripwire生成报告

想轻松地生成每天的系统完整性报告,可使用该命令创建crontab:

crontab -e 

之后可以编辑该文件(用你选择的文本编辑器),明确由cron运行的任务。比如说,你可以使用这个命令,创建一个计划任务(cron job),以便每天早上5:40将Tripwire报告发到你的电子邮箱:

40 5  *  *  *  usr/sbin/tripwire   --check 

相关推荐