原文链接: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. Git基础 1 ---- 版本控制系统的介绍

    1 Git 1 版本控制系统 vcs - version control system 2 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统 3 版本控制系统的主要功能 1 ...

  2. PHP 学习1- 函数之error_reporting(E_ALL ^ E_NOTICE)详细说明

    在4.3.0中运行正常,在4.3.1中运行会提示Notice:Undefined varialbe:tmp_i 问题下下: 1.问题出在哪里? 2.应如何修改这段代码? 3.不改段代码,如何修改php ...

  3. Python 基础学习20151201

    L = [ ['Apple','Google','Microsoft'], ['Java','Python','Ruby','PHP'], ['Adam','Bart','Lisa'] ] #打印Ap ...

  4. 初始Android-配置环境

    最近闲来无事自学了一下Android,今天没事想整理一下思绪,简单的介绍一下我自己对环境配置的认识,仅供参考,欢迎提出意见. 1.首先打开Eclipse,然后安装ADT,准备好ADTjar包或者zip ...

  5. Qt的信号槽,一个老MFC的经验

    最近在利用闲暇时间研究Qt,大概有3周了,看过了官网的white paper并浏览了一遍<C++ GUI Programming with Qt 4, 2nd Edition>.总的来说, ...

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

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

  7. Hdu 3371 Connect the Cities(最小生成树)

    地址:http://acm.hdu.edu.cn/showproblem.php?pid=3371 其实就是最小生成树,但是这其中有值得注意的地方:就是重边.题目没有告诉你两个城市之间只有一条路可走, ...

  8. LibSVM笔记系列(3)——初学移植libsvm的C/C++版本

    在LibSVM笔记系列(1)中已经提到在g++环境中编译LibSVM只需要一个make命令那样简单. 本文将介绍 (1)LibSVM的编译文件结构 (2)svm.h中重要数据结构及函数分析 (3)sv ...

  9. [置顶] android AIDL 进程间通信

    1.定义aidl文件 a.ITestService.aidl package com.open.aidl.service; import com.open.aidl.service.ITestServ ...

  10. DicomIoException: Requested 132 bytes past end of fixed length stream.

    今天在用DicomFile.Open(Stream s)这个接口时,遇到一个异常:      DicomIoException: Requested 132 bytes past end of fix ...