小生博客:http://xsboke.blog.51cto.com

   




                                -------谢谢您的参考,如有疑问,欢迎交流


一、AIDE简介

  1. 作用

  2. 原理

  3. 安装

二、AIDE文件简介

三、AIDE操作流程






一、AIDE简介

1. 作用

AIDEAdvanced Intrusion Detection Environment,高级入qin检测环境),主要用于检测文件的完整性。

2. 原理

为系统文件生成初始的校验码(文档数据库),然后每次执行检查命令时,aide会将之前生成的校验码和当前文件的校验码进行对比,并且输出报告,主要检查三类文件(修改过的,新增加的,删除的)

3. 安装

使用yum直接安装aide即可(yum –y install aide

二、AIDE文件简介

默认的配置文件:/etc/aide.conf

默认的文档数据库文件存放位置:/var/lib/aide/

默认的***检测报告的存放位置:/var/log/aide/

1.  /etc/aide.conf主配置文件实例,aide默认会检查几乎所有目录及其文件,下面是我有过删除配置信息的一个aide主配置文件


# Example configuration file for AIDE.
 
@@define DBDIR /var/lib/aide                 //定义变量DBDIR
@@define LOGDIR /var/log/aide                //定义变量LOGDIR
 
# The location of the database to be read.
database=file:@@{DBDIR}/aide.db.gz           //aide在执行检查时读取的文件数据库(签名文件)的存放路径及其文件名
 
# The location of the database to be written.
#database_out=sql:host:port:database:login_name:passwd:table
#database_out=file:aide.db.new
database_out=file:@@{DBDIR}/aide.db.new.gz   //文件数据库(签名文件)生成之后的存放路径及其文件名
 
# Whether to gzip the output to database.
gzip_dbout=yes
 
# Default.
verbose=5
 
report_url=file:@@{LOGDIR}/aide.log          //日志文件路径
report_url=stdout                      //对比结果采用标准输出,到屏幕
#report_url=stderr
#NOT IMPLEMENTED report_url=mailto:root@foo.com
#NOT IMPLEMENTED report_url=syslog:LOG_AUTH
 
# These are the default rules.
#
#p:       permissions                         //指定字母P代表权限
#i:      inode:                             //指定字母i代表索引节点
#n:      number of  links                    //指定字母n代表链接数
#u:      user                               //指定字母u代表用户
#g:      group                              //指定字母g代表组
#s:      size                               //指定字母s代表大小
#b:      block  count                        //指定字母b代表块数量
#m:      mtime                              //指定m代表内容修改时间
#a:      atime                              //指定a代表最后访问时间
#c:      ctime                              //指定c代表文件的属性或者权限发生变化,而更新的时间
#S:      check for  growing size
#acl:           Access  Control Lists
#selinux        SELinux  security context
#xattrs:        Extended  file attributes
#md5:    md5 checksum
#sha1:   sha1 checksum
#sha256:        sha256  checksum
#sha512:        sha512 checksum
#rmd160: rmd160 checksum
#tiger:  tiger checksum
 
#haval:  haval checksum  (MHASH only)
#gost:   gost checksum  (MHASH only)
#crc32:  crc32 checksum  (MHASH only)
#whirlpool:      whirlpool checksum (MHASH only)
 
FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256
 
#R:              p+i+n+u+g+s+m+c+acl+selinux+xattrs+md5
#L:              p+i+n+u+g+acl+selinux+xattrs
#E:             Empty  group
#>:              Growing logfile p+u+g+i+n+S+acl+selinux+xattrs
 
# You can create custom rules like this.
# With MHASH...
# ALLXTRAHASHES =  sha1+rmd160+sha256+sha512+whirlpool+tiger+haval+gost+crc32
ALLXTRAHASHES = sha1+rmd160+sha256+sha512+tiger
 
# Everything but access time (Ie. all changes)
EVERYTHING = R+ALLXTRAHASHES
 
# Sane, with one good hash.
# NORMAL = sha256
NORMAL = sha256
 
 
/usr/local/mysql/ NORMAL                    //定义要检测的目录以及检测哪些信息,NORMAL在上面已定义
/opt/ NORMAL
!/usr/local/mysql/tttt.txt                  //感叹号表示不检测的内容



三、一般aide的操作流程

1. 首先初始化文件数据库(为需要监控的文件生成校验码)

   aide  --init

这时候在存放文件数据库的目录下产生一个名为:aide.db.new.gz的文件数据库,我们需要重命名这个文件数据库,因为aide默认检查的文件数据库为“aide.db.gz”

   mv  aide.db.new.gz aide.db.gz

2. 检查系统文件

   aide --check --report=file:/tmp/aide-report-20120426.txt

   --report:指定输出检查报告到某个文件,也可以不指定,检查报告会标准输出到屏幕

3. 检查完之后需要更新文件数据库,否则下次对比的文件数据库还是旧的文件数据库

   aide  --update

   mv  aide.db.new.gz aide.db.gz