怎么在Linux利用Aide生成系统快照并定期比对核心文件指纹变动

阿杰同学_5127

阿杰同学_5127

2026-04-30

1036人浏览

原创

AIDE快照需重命名、校验、权限锁定三步才可用,否则aide --check比对失效;初始化前须清理残留数据库文件;必须用退出码判断结果,0为正常,1为变更,255为错误。

怎么在linux利用aide生成系统快照并定期比对核心文件指纹变动

AIDE 的快照不是“生成完就能用”,必须完成重命名、校验、权限锁定三步,否则 aide --check 实际比对的是旧状态或直接静默失败。

初始化前必须彻底清理残留文件

残留的 /var/lib/aide/aide.db* 或自定义 aide.conf 会导致 aide --init 输出看似成功,但后续比对完全失效。常见现象是:明明改了 /etc/passwd,aide --check 却返回 0(无变更)。

  • 先执行 sudo rm -f /var/lib/aide/aide.db* /etc/aide.conf
  • 再确认是否使用默认配置路径——多数发行版是 /etc/aide.conf,若改过 DBDIR 或 database 配置项,需同步清理对应位置
  • 安装后首次运行前,确保系统已部署完毕、关键服务启动正常、无未授权变更——此时的基线才可信

aide --init 生成的不是最终数据库

aide --init 默认输出 /var/lib/aide/aide.db.new.gz,而 aide --check 只读取 aide.db.gz。不重命名 = 白跑一次。

  • 运行 sudo mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
  • 立即校验压缩完整性:sudo gzip -t /var/lib/aide/aide.db.gz,失败则需重做 --init
  • 推荐留存指纹:sha256sum /var/lib/aide/aide.db.gz > /root/aide.db.sha256,防止数据库本身被篡改
  • 数据库权限必须为 600 且属主为 root:root,否则 aide --check 可能跳过校验或报 Unable to open database

比对结果不能只看 stdout,必须依赖退出码

AIDE 输出全是文本,Changed:、Added:、Removed: 混在一起,人工扫屏极易漏判。真正可靠的信号只有退出状态码。

Linuxdo Application
Linuxdo Application

为 Linux.do 注册撰写高通过率、去 AI 化的中文小作文。进行自适应调查以了解申请人的真实背景,...

下载
  • 0:无任何变更
  • 1:检测到文件属性或内容变更(重点关注 sha256 字段变化)
  • 255:内部错误(如数据库损坏、权限不足、路径不可达)
  • 别写 aide --check | grep Changed,改用:aide --check && echo "OK" || echo "ALERT"
  • 发现 Added: 或 Removed: 要优先排查——比内容修改更可疑,可能是后门植入或日志清理

排除规则写错等于没排除

AIDE 不支持正则,只认 glob 和显式路径。写错规则不仅无效,还可能因扫描虚拟文件系统(如 /proc)导致大量误报。

  • 想忽略所有日志文件,不能写 /var/log/.*,应写 /var/log/.*$(注意结尾 $ 是 glob 通配,非正则)或更稳妥地逐条排除:/var/log/syslog.* p+i+n+u+g+s+b+sha256
  • 绝对不要给 /proc、/sys、/dev 写监控规则——每次扫描都变,必然报错
  • 修改 aide.conf 后,必须重新运行 aide --init,否则新规则完全不生效
  • 时间戳校验(m 和 c)在系统时钟异常时会引发批量误报,比对前先运行 timedatectl status 确认时钟同步正常

最常被跳过的环节是重命名数据库和校验退出码——这两步一漏,整个 AIDE 就形同虚设。它不报错,也不提醒,只是默默拿一个过期甚至损坏的快照在比对。

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

4510

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3773

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

3093

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

7650

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

7282

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

4133

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

3625

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

3859

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

297

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习