Solaris服务器配置高级入侵检测工具AIDE
AIDE即Advanced Intrusion Detection Environment,高级入侵检测环境,是一个文件完整性检测工具,AIDE能够构造指定文件的数据库,用aide.conf作为其配置文件。
四、配置AIDE
接下来的步骤是配置aide.conf。 aide.conf 配置文件的格式是非常简单的。 在设
置该文件之前, 建议阅读该配置。 或者阅读帮助文件。进入/usr/local/etc/目录:,编辑aide.conf文件包含如下内容:
| Rule = p+i+u+g+n+s+md5 /etc Rule /sbin Rule /var Rule /usr/bin Rule /usr/local/bin Rule !/var/spool/.* !/var/log/.* !/var/tmp/.* !/opt/apachelogs/.* |
在这个配置中, 我们可以看到一个规则Rule设置了检查的权限(p), inode号(i), 用户(u),用户组(g), 链接数(n), md5校验(md5). 然后这些规则被应用到/bin, /sbin, /var, 和
/usr/local/apache/conf目录下的所有文件, 因为通常这些目录下的文件很少被修改.
/etc/中的文件仅使用了权限(p), inode号(i), 用户(u)和用户组(g), 因为文件的大小
可能改变, 而其它的很少改变. /var/spool和/var/log目录中的所有子目录和文件被设置
为不做检查, 因为这里面的文件经常性的改变.
在aide.conf里有三类命令行:
配置命令行 - 用来设置配置参数和定义变量
选项命令行 - 指明哪个文件将被添加到数据库中
宏命令行 - 在配置文件内部定义或取消定义变量
在配置文件中所有指定的系统的部分都会被监控以及被默认的规则设置。这里列出一些AIDE的功能:
p: permissions 代表存取权限
i: inode 代表文件索引节点
n: number of links 代表文件链接數
u: user 代表拥有文件的使用者
g: group 代表拥有文件的使用者群组
s: size 代表文件大小
b: block count 代表文件区段计算
m: mtime 代表文件最后修改时间
a: atime 代表文件最后存取时间
c: ctime 代表文件建立时间
S: check for growing size 代表检查文件大小的变动程度
md5: md5 checksum 代表md5杂凑函數算法
sha1: sha1 checksum 代表sha1杂凑函數算法
rmd160: rmd160 checksum 代表md160杂凑函數算法
tiger: tiger checksum 代表tiger杂凑函數算法
R: p+i+n+u+g+s+m+c+md5 R参数代表同时设定这9个参数
L: p+i+n+u+g L参数代表同时设定这5个参数
E: Empty group 代表空数组
>: Growing logfilep+u+g+i+n+S代表变动的log档检查参数
haval: havalchecksum代表hava1杂凑函數算法
gost: gostchecksum代表gost杂凑函數算法
crc32: crc32 checksum代表crc23杂凑函數算法
说明:AIDE主要支持两种加密算法:md5和Sha1 。
MD5:Message-Digest Algorithm,由麻省理工学院为开发的用于数字签名的信息摘要算法,做Message的Hash变换,将任意长度的Message变换成一个128位的大整数,并且它是一个不可逆的字符串变换算法。MD5的典型应用是对一段Message产生数字指纹,以防止被篡改,即数字签名应用。
SHA-1:安全散列算法(SHA)是由美国国家标准和技术协会(National Institute of Standards and Technology)开发的,1994年发布了原始算法的修订版,称为SHA-1。与MD5相比,SHA-1生成160位的消息摘要,虽然执行更慢,却被认为更安全。明文消息的最大长度可达到264位。
五、初始化AIDE
下面初始化AIDE使用命令:
/usr/local/bin/aide -c /usr/local/etc/aide.conf –i
提示下面成功信息如图3 。

图3 初始化AIDE
#cd /usr/local/etc/
# cp aide.db.new aide.db
其他命令:
需要检查数据库, 运行命令:
# aide –C
或者使用下面的命令仔细的比较最初的的数据库和后生成的库之间的区别。现在的数据库:
#aide --compare
升级数据库,如果你已经完成了检查和修复任务, 你需要重新更新一下数据库:
#aide –update

