为满足等级保护、合规审计及入侵检测需求,系统需具备对关键文件和目录的完整性监控能力。AIDE(Advanced Intrusion Detection Environment)是一款开源的文件完整性校验工具,通过计算并比对文件的哈希值、权限、属主、inode 等属性变化,识别未经授权的篡改行为。openEuler 24.03 LTS 官方仓库提供 AIDE 软件包,并支持与 systemd 定时器集成,实现周期性自动检测。本文说明如何在 openEuler 24.03 LTS 上部署 AIDE,初始化基准数据库,配置监控路径与校验规则,并设置定期检查任务。
一、环境前提
- 操作系统:openEuler 24.03 LTS
- 监控目标:系统二进制文件、配置文件、关键日志目录等
- 校验算法:SHA-256(默认),可配置为 SHA-512 或结合 HMAC
- 权限要求:需 root 权限进行初始化与策略更新
- 存储要求:基准数据库应存储于只读介质或安全隔离位置(本文以本地安全目录为例)
二、安装 AIDE
安装后,主配置文件位于 /etc/aide.conf,默认包含示例规则与路径定义。
三、配置监控策略
- 备份原始配置:
- 编辑
/etc/aide.conf,定义校验规则与监控路径。
规则定义示例:
字段含义:
p:权限 i:inode n:链接数 u/g:用户/组 s:大小 m:mtime c:ctime acl:访问控制列表 selinux:SELinux 上下文 xattrs:扩展属性 sha512:SHA-512 哈希值
监控路径配置示例:
使用 ! 前缀排除特定子路径,避免因正常日志写入触发误报。
- (可选)将基准数据库存放在独立安全目录:
确保目录存在且权限受限:
四、初始化基准数据库
首次运行需生成初始完整性数据库:
该命令生成 /var/lib/aide/aide.db.new.gz(若使用默认路径)。将其重命名为正式数据库:
此步骤应在系统完成安全加固、所有合法软件安装完毕后执行,以确保基线纯净。
五、执行手动完整性检查
后续可通过以下命令比对当前系统状态与基准:
输出将列出所有属性发生变化的文件,包括:
- 新增文件(不在原数据库中)
- 删除文件(原数据库中有但当前缺失)
- 属性或内容变更的文件
检查结果同时写入标准输出与日志文件(若配置了 REPORTDIR)。
六、配置定期自动检查
openEuler 提供 systemd 定时器实现周期性任务。
- 启用内置定时器(若存在):
- 若未提供,可手动创建:
创建服务单元 /etc/systemd/system/aide-check.service:
创建定时器单元 /etc/systemd/system/aide-check.timer:
启用定时器:
七、安全加固建议
- 数据库保护:将
aide.db.gz 复制至只读文件系统、USB 安全令牌或离线存储,运行时使用副本; - 配置文件签名:结合 IMA 或 GPG 对
aide.conf 和数据库进行签名验证; - 日志集中收集:将 AIDE 报告日志转发至 SIEM 平台(如 ELK、Splunk);
- 变更管理联动:在系统变更(如软件升级)前暂停 AIDE 检查,变更后重新初始化数据库。
八、注意事项
- AIDE 不提供实时监控,仅支持周期性快照比对;
- 高频写入目录(如
/var/log)应谨慎纳入监控范围,或仅监控元数据(排除内容哈希); - 在容器化环境中,AIDE 应在宿主机或专用安全容器中运行,而非业务容器内;
- 更新系统(如
dnf update)后,若涉及监控路径中的文件,需重新生成基准数据库,否则将产生大量合法变更告警。
为满足等级保护、合规审计及入侵检测需求,系统需具备对关键文件和目录的完整性监控能力。AIDE(Advanced Intrusion Detection Environment)是一款开源的文件完整性校验工具,通过计算并比对文件的哈希值、权限、属主、inode 等属性变化,识别未经授权的篡改行为。openEuler 24.03 LTS 官方仓库提供 AIDE 软件包,并支持与 systemd 定时器集成,实现周期性自动检测。本文说明如何在 openEuler 24.03 LTS 上部署 AIDE,初始化基准数据库,配置监控路径与校验规则,并设置定期检查任务。
一、环境前提
二、安装 AIDE
安装后,主配置文件位于
/etc/aide.conf,默认包含示例规则与路径定义。三、配置监控策略
/etc/aide.conf,定义校验规则与监控路径。规则定义示例:
字段含义:
p:权限i:inoden:链接数u/g:用户/组s:大小m:mtimec:ctimeacl:访问控制列表selinux:SELinux 上下文xattrs:扩展属性sha512:SHA-512 哈希值监控路径配置示例:
确保目录存在且权限受限:
四、初始化基准数据库
首次运行需生成初始完整性数据库:
该命令生成
/var/lib/aide/aide.db.new.gz(若使用默认路径)。将其重命名为正式数据库:五、执行手动完整性检查
后续可通过以下命令比对当前系统状态与基准:
输出将列出所有属性发生变化的文件,包括:
检查结果同时写入标准输出与日志文件(若配置了
REPORTDIR)。六、配置定期自动检查
openEuler 提供 systemd 定时器实现周期性任务。
创建服务单元
/etc/systemd/system/aide-check.service:创建定时器单元
/etc/systemd/system/aide-check.timer:启用定时器:
七、安全加固建议
aide.db.gz复制至只读文件系统、USB 安全令牌或离线存储,运行时使用副本;aide.conf和数据库进行签名验证;八、注意事项
/var/log)应谨慎纳入监控范围,或仅监控元数据(排除内容哈希);dnf update)后,若涉及监控路径中的文件,需重新生成基准数据库,否则将产生大量合法变更告警。