最后更新于2017年12月8日星期五20:27:40 GMT

剧情简介

Tripwire是一个最流行的基于主机的入侵检测系统,它可以持续跟踪您的关键系统文件和报告,如果它们已被破坏. Tripwire代理监视Linux系统,以检测和报告对文件和目录(包括权限)的任何未经授权的更改, 内部文件更改, 时间戳细节.

Tripwire的工作原理是扫描文件系统,并将扫描到的每个文件的信息存储在数据库中. 如果发现数据库中存储的值与当前状态之间存在更改, 它会给你发送警报.

在本教程中,我们将学习如何在CentOS 7服务器上安装和配置Tripwire.

系统需求

  • 新部署的CentOS 7服务器.
  • 在服务器上配置了静态IP地址.

更新系统

首先,建议使用最新的稳定版本更新系统.
更新系统的命令如下:

Apt-get update -y
Apt-get upgrade -y

更新系统后,您还需要将EPEL存储库安装到系统中. 安装命令如下:

Yum install exp -release -y

接下来,重新启动系统并使用root用户登录.

安装Tripwire

您可以通过运行以下命令轻松地从CentOS官方存储库安装Tripwire:

Yum安装tripwire -y

安装完成后,您应该看到以下输出:

 下载包: 
 tripwire-2.4.3.4-1.el7.x86_64.转/分| 1.0 MB 00:00:12 
 运行事务检查 
 运行事务测试 
 事务测试成功 
 运行的事务 
     安装:tripwire-2.4.3.4-1.el7.x86_64 1/1 
     验证:tripwire-2.4.3.4-1.el7.x86_64 1/1
 
 安装: 
     tripwire.x86_64 0:2.4.3.4-1.el7
 
 完整的!

为Tripwire创建密钥

Tripwire使用两个密钥来保护其配置文件站点密钥和本地密钥. 站点密钥用于保护配置文件, 而在每台机器上使用本地密钥来运行二进制文件.

执行以下命令创建Tripwire本地和站点密钥文件:

tripwire-setup-keyfiles

您将被要求提供本地和站点密钥的密码,如下所示:

 ---------------------------------------------- 
 Tripwire站点和本地密码短语用于签署各种 
 文件,如配置文件、策略文件和数据库文件.
 
 密码短语的长度应该至少为8个字符,并且包含这两个字符 
 字母和数字.
 
 有关更多信息,请参阅Tripwire手册.
 
 ---------------------------------------------- 
 创建密钥文件...
 
 (在选择密码短语时,请记住,好的密码短语通常 
 有大写和小写字母,数字和标点符号,和 
 长度至少8个字符.)
 
 输入站点密钥文件密码: 
 验证站点密钥文件密码: 
 生成密钥(这可能需要几分钟)...密钥生成完成.
 
 (在选择密码短语时,请记住,好的密码短语通常 
 有大写和小写字母,数字和标点符号,和 
 长度至少8个字符.)
 
 输入本地密钥文件的密码: 
 验证本地密钥文件的密码: 
 生成密钥(这可能需要几分钟)...密钥生成完成.
 
 ---------------------------------------------- 
 签名配置文件... 
 请输入您的网站密码: 
 编写配置文件:/etc/tripwire/tw.cfg 
 Tripwire配置文件的明文版本: 
 /etc/tripwire/twcfg.文本文件 
 已保存起来供您检查. 建议您 
 将此文件移动到安全位置和/或加密(使用 
 工具(例如GPG),然后检查它.
 
 ---------------------------------------------- 
 签名策略文件... 
 请输入您的网站密码: 
 写策略文件:/etc/tripwire/tw.波尔
 
 Tripwire策略文件的明文版本: 
 /etc/tripwire/tw波尔.文本文件 
 已保存起来供您检查. 这实现了一个最小的 
 策略,仅用于测试基本的Tripwire功能. 你 
 是否应该编辑策略文件来描述您的系统,然后使用 
 生成Tripwire策略的新签名副本.
 
 一旦有了满意的Tripwire策略文件,就应该移动 
 明文版本到一个安全的位置和/或加密它在适当的地方 
 (例如使用GPG之类的工具).
 
 现在运行“tripwire——init”进入数据库初始化模式. 这 
 读取策略文件,根据其内容生成数据库,然后 
 然后对结果数据库进行加密签名. 选项可以是 
 在命令行中输入,以指定哪个策略、配置和 
 密钥文件用于创建数据库. 的文件名。 
 也可以指定数据库. 如果未指定任何选项,则 
 使用当前配置文件中的默认值.

接下来,运行“tripwire -init”,进入数据库初始化模式. 这 读取策略文件,根据其内容生成数据库,然后 然后对结果数据库进行加密签名.

tripwire——初始化

您应该看到一些错误,名为“No such file or 导演y”和“file system error”。. 文件/目录可能不存在于您的系统中,所以忽略它. 一旦tripwire数据库初始化完成,您应该看到以下输出:

 写数据库文件:/var/lib/tripwire/centOS-7.台币 
 日志含义数据库生成成功.

配置策略文件

配置策略文件前, 使用以下命令生成触发tripwire的文件列表:

sh -c 'tripwire——检查 | grep Filename > test_results'

Tripwire将识别策略文件中指定的关键系统文件中的文件更改.
现在,打开策略文件 /etc/tripwire/tw波尔.文本文件:

纳米/etc/tripwire/tw波尔.文本文件

记录下文件中的每个文件名 test_results 文件,并注释掉所有你找到匹配的行:

完成后保存并关闭该文件.

接下来,您还需要重新创建tripwire实际读取的加密策略文件:
执行如下命令:

twadmin -m P /etc/tripwire/tw波尔.文本文件

完成后,使用以下命令重新初始化数据库以实现策略:

tripwire——初始化

您之前收到的所有错误和警告现在都应该消失了.

接下来,用以下命令验证tripwire是否有语法错误:

tripwire——检查

测试Tripwire

现在,Tripwire已经配置完毕. 是时候测试Tripwire了. 让我们创建一些文件,看看Tripwire id是如何工作的.

触摸hiteshjethva
触摸hiteshjethva1
触摸hiteshjethva12
触摸hiteshjethva123

现在运行Tripwire交互式命令:

绊线——检查——互动

Tripwire将收集所有文件/目录的更改/修改,并自动在vi编辑器中打开结果,如下所示:

 开源Tripwire(R.4.3.4完整性检查报告
 
 报告由:root生成 
 报告创建日期:2017年5月21日星期日11:16:25 
 数据库最后更新日期:从未
 
 =============================================================================== 
 报告总结: 
 ===============================================================================
 
 主机名:centOS-7 
 主机IP地址:127.0.0.1 
 主机ID:无 
 使用的策略文件:/etc/tripwire/tw.波尔 
 使用的配置文件:/etc/tripwire/tw.cfg 
 使用的数据库文件:/var/lib/tripwire/centOS-7.台币 
 使用的命令行:tripwire——check——interactive
 
 -------------------------------------------------------------------------------
 
 从相邻框中删除“x”以防止更新数据库 
 使用此对象的新值.
 
 修改: 
 [x]“/ etc / tripwire /太瓦.波尔”
 
 ------------------------------------------------------------------------------- 
 规则名称:根配置文件(/ Root) 
 严重性级别:100 
 -------------------------------------------------------------------------------
 
 从相邻框中删除“x”,以防止使用此对象的新值更新数据库.
 
 补充道: 
 [x]“/根/ test_results” 
 [x]“/根/ hiteshjethva” 
 [x]“/根/ hiteshjethva1” 
 [x]“/根/ hiteshjethva12” 
 [x]“/根/ hiteshjethva123”
 
 修改: 
 [x]“/根”
 
 ===============================================================================

在上面的文件中,您应该看到我们刚刚添加的文件列表. 如果这是有效的,您可以通过更新Tripwire数据库来接受更改. 或者只是删除x标记并更新数据库.

现在,输入q:并输入本地密码来保存文件.

Tripwire将报告文件存储在 /var/lib/tripwire/report/ 带扩展名的目录 .twr. 如果您想使用测试编辑器查看这种类型的文件. 首先,您必须将文件转换为文本文件文件. 你可以使用以下命令:

 twrfile /var/lib/tripwire/report/centOS-7-20170521-111625.twr > report.文本文件

现在,您可以使用您最喜欢的编辑器轻松打开它.

自动绊线报告

如果您想设置一个cron作业,以便在每天上午11:00执行绊线检查. 您可以通过编辑crontab文件来做到这一点.

功能:创建cron作业。

crontab - e

添加以下行:

 00 11 * * * /usr/sbin/tripwire——检查

结论

祝贺你! 在centos7服务器上成功安装Tripwire. 我希望您现在可以轻松地安装和配置Tripwire id.

参考文献