Linux AIDE 文件完整性检测教程
目录
1.介绍
AIDE(Advanced Intrusion Detection Environment)是一个用于检测文件完整性的工具。它通过创建文件的初始数据库,并在后续的检测中对比文件的当前状态与初始数据库,来发现文件的更改。AIDE 可以用于检测未经授权的文件修改,帮助系统管理员及时发现潜在的安全问题。
2.安装 AIDE
在大多数 Linux 发行版中,AIDE 可以通过包管理器安装。
Debian/Ubuntu
sudo apt-get update
sudo apt-get install aide
CentOS/RHEL
sudo yum install aide
Fedora
sudo dnf install aide
3.初始化 AIDE 数据库
在安装完 AIDE 后,首先需要初始化 AIDE 数据库。这个数据库将记录系统中文件的初始状态。
-
生成初始数据库:
sudo aide --init
这将在
/var/lib/aide/aide.db.new.gz
生成一个新的数据库文件。 -
将生成的数据库文件重命名为 AIDE 默认使用的数据库文件:
sudo mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
4.配置 AIDE
AIDE 的配置文件位于 /etc/aide/aide.conf
。你可以根据需要自定义检测规则。
配置文件示例
# 定义检测规则
@@define DBDIR /var/lib/aide
@@define LOGDIR /var/log/aide
# 定义检测的目录和文件
/etc p+i+u+g
/bin p+i+u+g
/sbin p+i+u+g
/usr/bin p+i+u+g
/usr/sbin p+i+u+g
/var/log p+i+u+g
# 排除某些目录或文件
!/proc
!/sys
!/tmp
配置选项说明
p
:检测文件权限i
:检测 inodeu
:检测用户g
:检测组+
:添加检测项!
:排除检测项
5.运行 AIDE 检测
初始化数据库并配置好 AIDE 后,可以手动运行 AIDE 检测。
-
运行检测:
sudo aide --check
这将对比当前文件系统状态与初始数据库,并输出检测结果。
-
查看检测结果:
检测结果通常会被输出到/var/log/aide/aide.log
,你可以通过以下命令查看:sudo cat /var/log/aide/aide.log
6.更新 AIDE 数据库
当系统文件发生合法更改(如软件更新)时,需要更新 AIDE 数据库以反映这些更改。
-
更新数据库:
sudo aide --update
这将在
/var/lib/aide/aide.db.new.gz
生成一个新的数据库文件。 -
替换旧数据库:
sudo mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
7.自动化检测
为了定期检测文件完整性,可以将 AIDE 检测任务添加到 cron 任务中。
-
编辑 cron 任务:
sudo crontab -e
-
添加以下行以每天运行一次 AIDE 检测:
0 0 * * * /usr/bin/aide --check
-
保存并退出编辑器。
8.常见问题
1. AIDE 检测到大量文件更改
如果 AIDE 检测到大量文件更改,可能是由于系统更新或合法更改。在这种情况下,更新 AIDE 数据库以反映这些更改。
2. AIDE 数据库损坏
如果 AIDE 数据库损坏,可以重新初始化数据库:
sudo aide --init
sudo mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
3. AIDE 检测结果不准确
确保 AIDE 配置文件中的检测规则正确,并且排除了不需要检测的目录或文件。