原文链接: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. Linux通过网卡驱动程序和版本号的信息

    检查卡制造商和信号 查看基本信息:lspci 查看详情:lspci -vvv   # 3小作文v 查看卡信息:lspci | grep Ethernet 查看网卡驱动 查看网卡驱动信息:lspci - ...

  2. Lamd表达式

    1. 普通绑定: public void button1_Click(object sender, EventArgs e) { MessageBox.Show("ok"); } ...

  3. django1.6.x(python3.3)使用pymysql连接mysql

    1.安装 pymysql,地址:https://code.google.com/p/pymysql/ 2.安装django 然后执行 django-admin.py startproject mysi ...

  4. 关于android的坑

    坑1: 使用SQLiteOpenHelper的时候如果建立的表中存在不为空的字段,但是用ContentValues()的方式来插入数据的话恰好没有往这个字段里插入数据,那么执行后市没法往数据库里插入数 ...

  5. JSON 数组格式

    JSON 数据格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人 ...

  6. Vmware虚拟机网络模式及虚拟机与物理机通信方法

    [转]http://www.cqeis.com/news_detail/newsId=1477.html Vmware虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Wind ...

  7. js求指定时间的周一和周日

    /*计算指定时间的的周一和周日 return=>{mondy:Date,sundy:Date} parms:{ date:指定时间,如果不指定则取当前时间 } */ function getWe ...

  8. Qt探秘——谈ui文件的用法

    转载自:点击打开链接http://blog.csdn.net/luo_isaiah/article/details/5794973 相信用过Qt Designer的朋友,对Qt Project中的.u ...

  9. POJ 1472 Coins (多重背包+滚动数组)

    Coins Time Limit: 3000MS Memory Limit: 30000K Total Submissions: 25827 Accepted: 8741 Description Pe ...

  10. 深入浅出 JSTL

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.这个算是一个java程序员的一个基本功吧. JSP Standard Tag Library (JSTL) 的规范完成于2002年7月, ...