Tripwire

来自lfzyx
跳转至: 导航搜索

Tripwire 是一个文件完整性检查程序,用于监控指定文件是否变更,这些变更包含(但不限于):

  • inode
  • 时间戳
  • 文件大小
  • 文件权限和所有权属性
  • 哈希值
  • 文件类型

初始化时,Tripwire 扫描文件系统,把每个文件的校验值存储到数据库中,建立正常文件的基线,下一次扫描时,将文件的校验值和数据库中的校验值进行对比,如果校验值不一样,它会通过电子邮件警报或日志报告任何异常情况。

安装[编辑]

apt-get install tripwire

安装期间需要配置密码,Site passphrase 用于加密 tw.cfg 和 tw.pol ,Local passphrase 用于加密数据库和 report 文件

配置[编辑]

tw.cfg 是 Tripwire 的加密配置文件,twcfg.txt 则是该文件未加密的状态
tw.pol 是 Tripwire 的加密策略文件,twpol.txt 则是该文件未加密的状态
local.key 是本地密钥,用于保护数据库
site.key 是站点密钥,用于保护tw.cfg 和 tw.pol

使用[编辑]

调整策略文件tw.pol[编辑]

vi  twpol.txt
twadmin --create-polfile --polfile tw.pol -S site.key twpol.txt

显示策略文件

twadmin --print-polfile

调整配置文件tw.cfg[编辑]

vi twcfg.txt
twadmin --create-cfgfile --cfgfile tw.cfg -S site.key twcfg.txt

显示配置文件

twadmin --print-cfgfile

初始化数据库[编辑]

tripwire --init

初始化结束后,会在 /var/lib/tripwire/ 生成数据库

进行检测[编辑]

tripwire --check

检测结束后,会在/var/lib/tripwire/report/ 生成检测报告

读取检测结果[编辑]

twprint --print-report -r /var/lib/tripwire/report/*.twr

更新数据库[编辑]

如果文件的变更是正常的,那么应该更新数据库来忽略这次变更

tripwire --update -r /var/lib/tripwire/report/*.twr

执行该命令之后,您就进入了一个编辑器。搜索所报告的文件名。所有侵害或更新都在文件名前面有一个 [x]。

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

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

更新策略文件tw.pol[编辑]

策略文件的后续更新应该采取如下形式

tripwire --update-policy --secure-mode low twpol.txt