原文链接:http://www.ipython.me/centos/tripwire-file-md5.html

Tripwire是目前最为著名的unix下文件系统完整性检查的软件工具,这一软件采用的技术核心就是对每个要监控的文件产生一个数字签名,保留下来。当文件现在的数字签名与保留的数字签名不一致时,那么现在这个文件必定被改动过了。
Tripwire可以对要求校验的系统文件进行类似md5的运行,而生成一个唯一的标识,即“快照”snapshot。当这些系统文件的大小、inode号、权限、时间等任意属性被修改后,再次运行Tripwire,其会进行前后属性的对比,并生成相关的详细报告。

我的进行到第二步:初始化(生成基准数据库)

he object: "/selinux" is on a different file system...ignoring.
The object: "/sys" is on a different file system...ignoring.

1、下载并安装

[root@ipython ~]# wget http://nchc.dl.sourceforge.net/project/tripwire/tripwire-src/tripwire-2.4.2.2/tripwire-2.4.2.2-src.tar.bz2

[root@ipython ~]# tar jxf tripwire-2.4.2.2-src.tar.bz2
[root@ipython ~]# cd tripwire-2.4.2.2-src [root@ipython tripwire-2.4.2.2-src]# ./configure --prefix=/software/tripwire
[root@ipython tripwire-2.4.2.2-src]# make
[root@ipython tripwire-2.4.2.2-src]# make install ############INSTALL 交互#################
Press ENTER to view the License Agreement. ###回车阅读协议
license agreement. [do not accept] accept ###同意协议
Continue with installation? [y/n] y ###确认继续安装
Enter the site keyfile passphrase: ###需要记住的keyfile
Verify the site keyfile passphrase: ###重复
Enter the local keyfile passphrase: ###需要记住的local keyfile
Verify the local keyfile passphrase: ###重复
Please enter your site passphrase: ###输入
Please enter your site passphrase: ###输入
############交互结束,完成安装################# [root@ipython tripwire-2.4.2.2-src]# ls /software/tripwire/etc/ | sort
ipython.me-local.key ####加密本地密钥文件
site.key ####加密站点密钥文件
tw.cfg ####加密配置变量文件
tw.pol ####加密策略文件
twcfg.txt ####定义数据库、策略文件和Tripwire可执行文件的位置
twpol.txt ####定义检测的对象及违规时采取的行为

2、初始化(生成基准数据库)

[root@ipython ~]# /software/tripwire/sbin/tripwire --init
Please enter your local passphrase: ###键入密码,后面省略此交互
...
...
Wrote database file: /software/tripwire/lib/tripwire/ipython.me.twd
The database was successfully generated.

3、第一次完整性检查,和常用检查参数

[root@ipython ~]# /software/tripwire/sbin/tripwire --check

##默认检查报告存放路径##
/software/tripwire/lib/tripwire/report/
##指定存放路径##
[root@ipython ~]# /software/tripwire/sbin/tripwire --check --twrfile ./test.twr
###Email 发送报告###
[root@ipython ~]# /software/tripwire/sbin/tripwire --check --email-report
###指定Email 报告的级别###
[root@ipython ~]# /software/tripwire/sbin/tripwire --check --email-report --email-report-level
###使用指定严重性等级的规则进行检查###
[root@ipython ~]# /software/tripwire/sbin/tripwire --check --severity
###使用指定的规则名检查##
[root@ipython ~]# /software/tripwire/sbin/tripwire --check --rule-name rulename
###只检查指定的文件或目录
[root@ipython ~]# /software/tripwire/sbin/tripwire --check object1 object2 object3
###检查是忽略某属性###
[root@ipython ~]# /software/tripwire/sbin/tripwire --check --ignore "property, property, property, property"
###获取帮助
[root@ipython ~]# /software/tripwire/sbin/tripwire --help all ##检视报告##
[root@ipython ~]# /software/tripwire/sbin/twprint --print-report --twrfile ./test.twr ##重定向加密报告的内容##
[root@ipython ~]# /software/tripwire/sbin/twprint --print-report --twrfile ./test.twr > output.text ##指定报告输出时的级别##
[root@ipython ~]# /software/tripwire/sbin/twprint --print-report --report-level --twrfile ./test.twr > output.text

4、升级基准数据库文件

###升级的目的是很正常的,因为check 是基于基准数据的###
[root@ipython ~]# /software/tripwire/sbin/tripwire --update --twrfile ./test.twr
###检测后立即自动update###
[root@ipython ~]# /software/tripwire/sbin/tripwire --check --interactive

5、升级策略文件

更新策略稳健,需要修改策略的规则,先将策略重定向出来
[root@ipython ~]# /software/tripwire/sbin/twadmin --print-polfile > twpol.txt
###照猫画虎修改吧,然后update###
[root@ipython ~]# /software/tripwire/sbin/tripwire --update-policy twpol.txt
Parsing policy file: /root/twpol.txt
Please enter your local passphrase:
Please enter your site passphrase:

6、修改site key 和 local key

###修改前记得备份下###
[root@ipython ~]# /software/tripwire/sbin/twadmin --generate-keys --site-keyfile /software/tripwire/etc/site.key
[root@ipython ~]# /software/tripwire/sbin/twadmin --generate-keys --local-keyfile /software/tripwire/etc/site.key #配置文件通过site key 假面,数据文件和报告文件用local key 加密#
[root@ipython ~]# /software/tripwire/sbin/twadmin --encrypt --site-keyfile /software/tripwire/etc/site.key
[root@ipython ~]# /software/tripwire/sbin/twadmin --encrypt --local-keyfile /software/tripwire/etc/ipython.me-local.key

[转]tripwire-文件指纹的更多相关文章

  1. 给资源文件添加指纹(Gulp版)

    至于为什么要费尽心思地给文件添加指纹,请参看前端静态资源缓存控制策略.这次要达到的小目标就是生成的资源文件能够被客户端缓存,而在文件内容变化后,能够请求到最新的文件. 需要用到的 gulp 插件是 g ...

  2. Atitit.论图片类型 垃圾文件的识别与清理  流程与设计原则 与api概要设计 v2 pbj

    Atitit.论图片类型 垃圾文件的识别与清理  流程与设计原则 与api概要设计 v2 pbj 1. 俩个问题::识别垃圾文件与清理策略1 2. 如何识别垃圾图片1 2.1. 体积过小文件<1 ...

  3. Linux基础命令之文件和目录操作(二)

    . find 用于查找目录下的文件,也可以调用其他命令使用 find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression] fi ...

  4. MD5文件校验

    经常看到在网上下载个什么东西,旁边经常会跟一个md5值,以前不太清楚是做什么的.今天偶然发现了一个liunux命令 md5sum.经查寻知道这个命令是用来生成或校验md5值的命令.还是刚才的问题,为什 ...

  5. Atitit.论垃圾文件的识别与清理 文档类型垃圾文件 与api概要设计pa6.doc

    Atitit.论垃圾文件的识别与清理 文档类型垃圾文件 与api概要设计pa6.doc 1. 俩个问题::识别垃圾文件与清理策略1 1.1. 文件类型:pic,doc,v,m cc,isho pose ...

  6. Linux下Rootkit的另类检测

     Linux下Rootkit的另类检测 当黑客获取管理员权限时,首先是抹掉入侵系统的相关记录,并且隐藏自己的行踪,要实现这一目的最常用的方法就是使用Rootkits,简单的说,Rootkits是一种经 ...

  7. Angular (SPA) WebPack模块化打包、按需加载解决方案完整实现

    文艺小说-?2F,言情小说-?3F,武侠小说-?9F long long ago time-1-1:A 使用工具,long long A ago time-1-2:A 使用分类工具,long long ...

  8. 猫哥网络编程系列:详解 BAT 面试题

    从产品上线前的接口开发和调试,到上线后的 bug 定位.性能优化,网络编程知识贯穿着一个互联网产品的整个生命周期.不论你是前后端的开发岗位,还是 SQA.运维等其他技术岗位,掌握网络编程知识均是岗位的 ...

  9. FIS3的简单使用

    序言: 最近在收集前端的优化工具,随便一搜,厉害了word哥,有grunt.gulp.FIS3.webpack等等,简直就是眼花缭乱!前辈们对于他们的评价各有千秋,于是乎就想每个都来用一遍(之前已经倒 ...

  10. git初学习体会

    github:项目版本控制器 git和传统的版本控制器相比,最大的一点是,界面简单,给与非线性开发模式的强有力的支持,完全分布式等. 对于完全分布式的实现,我的理解是这个样子的.这多少要涉及到一点它的 ...

随机推荐

  1. 【科研论文】基于文件解析的飞行器模拟系统软件设计(应用W5300)

    摘要: 飞行器模拟系统是复杂飞行器研制和使用过程中的重要设备,它可以用来模拟真实飞行器的输入输出接口,产生与真实系统一致的模拟数据,从而有效避免因使用真实飞行器带来的高风险,极大提高地面测发控系统的研 ...

  2. if和switch的区别,循环的for 和while的区别, 字符串常用的7种方法

    相同点: 都是用于多重选择 不同点: 多重IF没有switch选择结构的限制,特别适合变量处于某个连续区间的情况 switch只能处理等值条件判断的情况,而且条件必须是整型变量或者字符串变量 字符串的 ...

  3. lightOJ 1047 Neighbor House (DP)

    lightOJ 1047   Neighbor House (DP) 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=87730# ...

  4. JavaSE学习总结第17天_集合框架3

      17.01 ArrayList集合的toString()方法源码解析 代码: Collection c = new ArrayList(); c.add("hello"); c ...

  5. HTML5 总结-应用程序缓存-8

    HTML 5 应用程序缓存 使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本. 什么是应用程序缓存(Application Cache)? HTM ...

  6. SQLserver查询数据类型为ntext是空或NULL值的方法

    --为空的值text ntext select * from lf_newsNg_utf where datalength(newsContentE)=0 or datalength(newsCont ...

  7. windos下安装PEAR 注意

    1.在这里下载PEAR http://pear.php.net/go-pear.phar 在页面右键另存为 go-pear.phar 到PHP的根目录,并去目录查看是否保存为了go-pear.phar ...

  8. 织梦dedeCMS|系统基本配置标签

    站点根网址:    {dede:global.cfg_basehost/}调出网站的名称:   {dede:field.title/}-{dede:global.cfg_webname/}    网站 ...

  9. C语言之ASCII码

    ASCII码 ASCII码值在65~90之间,为大写字母.ASCII码值在97~122之间,为小写字母.ASCII码值在48~57之间,为数字.ASCII码值不在上述3个范围内,为特殊字符.

  10. 转: 模块化开发框架seajs简介

    JavaScript模块化开发库之SeaJSSeaJS由国内的牛人lifesinger开发.目前版本是1.1.1,源码不到1500行,压缩后才4k,质量极高.这篇会讲述SeaJS的一些基本用法,不会面 ...