AIDE
高级入侵检测环境 (AIDE) 是一个基于主机的入侵检测系统 (HIDS),用于检查文件的完整性。它通过在初始运行时创建文件基线数据库来实现这一点,然后在后续运行时对照系统检查该数据库。可以检查的文件属性包括 inode,权限,修改时间,文件内容等。
AIDE 仅执行文件完整性检查。它不像其他一些 HIDS(例如 OSSEC)那样检查恶意软件或解析日志文件以查找可疑活动。对于这些功能,您可以使用额外的 HIDS(参见 [1] 以获取可能带有偏见的比较),或使用独立的恶意软件扫描器(rkhunter,chkrootkit)和日志监控解决方案(logwatch,logcheck)。
安装
您可以安装 aideAUR 软件包,或者如果您想在启用 SELinux 和 审计框架 的系统中使用它,您可以改为安装 aide-selinuxAUR。
配置
位于 /etc/aide.conf
的默认配置文件具有基于 Fedora 的默认设置,并包含大量注释。如果您想更改规则,请参阅 aide.conf(5) 和 AIDE 手册 以获取更多文档。
用法
要检查您的配置,请使用 aide -D
。
要初始化数据库,请使用 aide -i
或 aideinit
。根据您的配置和系统,此命令可能需要一段时间才能完成。
您可以使用 aide -C
对照基线数据库检查系统,或者使用 aide -u
更新基线数据库。
有关更多信息,请参阅 aide(1)。
Cron
如果需要,可以手动运行 AIDE,但您可能希望改为自动运行。如何设置此项将取决于您的 cron 守护程序和 MUA(如果需要电子邮件通知)。
如果 cron 设置为自动邮寄所有作业输出,它可以像这样简单
#!/bin/bash -e
# these should be the same as what's defined in /etc/aide.conf database=/var/lib/aide/aide.db.gz database_out=/var/lib/aide/aide.db.new.gz if [ ! -f "$database" ]; then echo "$database not found" >&2 exit 1 fi aide -u || true mv $database $database.back mv $database_out $database
有关更复杂的 cron 脚本的示例,请参阅 [2] 或 [3]。
安全性
由于数据库存储在根文件系统中,因此如果攻击者破坏了您的系统,他们可以轻松修改它以掩盖他们的踪迹。您可能希望将数据库复制到离线只读介质,并定期对照此副本执行检查。