Linux怎么排查系统日志服务是否符合三权分立审计要求

星涛酱_5948

星涛酱_5948

2026-11-02

609人浏览

原创

等保三级要求auditd服务必须启用且实现三权分立:auditd需active运行,审计管理员(auditadmin)仅能只读日志与查询,安全管理员(secadmin)专责规则配置,日志留存180天并防篡改。

linux怎么排查系统日志服务是否符合三权分立审计要求

auditd 服务是否启用且配置独立审计账户

等保三级要求审计行为必须由独立角色执行,不能由 root 或系统/安全管理员直接操作。如果 auditd 服务开着但所有日志读写权限仍集中在 root 手里,就只是“形似三权”,不满足制衡要求。

先确认服务状态:systemctl is-active auditd 必须返回 active;再检查进程归属:ps -eo user,comm | grep auditd 应显示为 root(服务本身需 root 启动),但关键在后续访问控制。

  • 审计管理员账户(如 auditadmin)必须能执行 ausearch、aureport、tail /var/log/audit/audit.log,但不能执行 auditctl 或修改 /etc/audit/rules.d/
  • 用 sudo -l -U auditadmin 验证其可用命令是否严格限定在只读范围,例如只含 /usr/sbin/ausearch、/usr/sbin/aureport、/bin/cat 等,不含 /sbin/auditctl、/usr/bin/audispd
  • 检查 /var/log/audit/ 目录权限:ls -ld /var/log/audit 应为 drwx------ 且属主是 root:audit(不是 root:root),组 audit 需包含 auditadmin,且该组无写权限

审计规则是否由安全管理员配置、不可被审计员修改

审计策略(比如监控 chmod、usermod、sudo 的规则)必须由安全管理员(secadmin)通过 auditctl 或规则文件部署,审计管理员只能查、不能配——这是职责分离的硬边界。

常见错误是把所有规则写进 /etc/audit/rules.d/99-default.rules,然后给 auditadmin 加了 sudo 权限去编辑这个文件,等于变相允许其篡改审计策略。

  • 运行 auditctl -l 查看当前加载规则,确认规则来源是 /etc/audit/rules.d/ 下的文件(而非临时命令行添加)
  • 检查规则文件属主:ls -l /etc/audit/rules.d/*.rules 应为 root:secadmin 或 root:root,且 auditadmin 不在所属组中
  • secadmin 的 sudo 权限应明确包含 /sbin/auditctl 和 /bin/systemctl restart auditd,但禁止 vi、sed、cp 等可修改规则文件的命令

日志文件是否防篡改、留存满180天

审计日志可被删除或覆盖,就失去追溯价值。等保明确要求日志留存不少于180天,且不能被任何管理员(包括 auditadmin)删改。

Linux Security Scanner
Linux Security Scanner

Linux 安全审计工具,检查 SSH 配置、开放/监听端口、防火墙规则(ufw/iptables/nftables)、失败登录尝试、sudoers 权限...

下载

光靠 chattr +a 不够——它只防删,不防覆盖;chattr +i 又会让 auditd 写不进新日志。正确做法是组合使用日志轮转与属性锁定。

  • 确认 logrotate 配置:/etc/logrotate.d/auditd 中应有 rotate 180 或更高值,并启用 dateext,避免靠文件名计数出错
  • 轮转后旧日志应设为不可修改:postrotate 段落里加 chattr +a /var/log/audit/audit.log.*(注意是 +a,不是 +i)
  • 检查当前日志文件属性:lsattr /var/log/audit/audit.log*,主日志(正在写的)应无属性,归档日志应带 -----a-------e-- 标记
  • 手动测试:sudo -u auditadmin rm /var/log/audit/audit.log.20260901 应失败;sudo -u auditadmin echo test >> /var/log/audit/audit.log.20260901 也应失败(+a 允许追加,但不允许覆盖写)

审计管理员能否查看全部操作记录但无法掩盖痕迹

这是最容易被忽略的点:审计员能查日志 ≠ 能查到所有事。如果某些关键操作(如 sudo su -、setenforce 0、systemctl stop auditd)没被规则捕获,或者日志路径不在其 sudo 白名单里,就会形成盲区。

典型陷阱是只给了 /usr/sbin/ausearch 权限,但没给 /usr/sbin/aureport,导致审计员无法生成汇总报告;或只放行 cat /var/log/audit/audit.log,却漏掉压缩归档日志(.gz 文件)。

  • 用 sudo -u auditadmin aureport -ts yesterday -te now --key sudo 测试是否能查到普通用户提权行为
  • 确认 auditadmin 的 sudo 权限包含:/usr/bin/zcat、/usr/bin/zless(用于查看 .gz 日志)、/usr/sbin/aureport、/usr/sbin/ausearch,且路径带完整参数限制(如 /usr/bin/zcat /var/log/audit/audit.log.*.gz)
  • 检查是否有敏感命令未被审计:运行 auditctl -l | grep -E "(su|sudo|auditctl|systemctl.*stop.*audit)",缺失项需补入规则文件

相关专题

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

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

2023.06.21

4350

4

如何安装LINUX
如何安装LINUX

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

2023.06.29

3653

10

linux find
linux find

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

2023.06.30

2913

5

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

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

2023.07.05

7210

7

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

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

2023.07.06

6842

7

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

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

2023.07.20

3913

8

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

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

2023.07.20

3405

4

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

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

2023.07.25

3639

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人学习