0

0

Linux 日志审计与合规实践

舞姬之光

舞姬之光

发布时间:2026-02-15 16:18:35

|

189人浏览过

|

来源于php中文网

原创

auditd未启动导致ausearch无记录,须systemctl enable --now auditd并检查/var/log/audit/audit.log;监控/etc/shadow需加-f perm=000捕获失败事件;execve日志过多应按时间、用户、路径过滤;日志轮转需配置auditd.conf与logrotate或远程转发。

linux 日志审计与合规实践

auditd 服务没启动,ausearch 查不到任何记录

auditd 是 Linux 审计子系统的守护进程,所有内核级审计事件(比如文件访问、系统调用、权限变更)都得靠它收集中转。不启动它,auditctl 加的规则只是挂在内存里,重启就丢,ausearchaureport 也全为空。

实操建议:

  • 先确认状态:systemctl status auditd,不是 active (running) 就得 systemctl enable --now auditd
  • 检查日志是否写入磁盘:ls -l /var/log/audit/audit.log,空文件或不存在说明 auditd 没真正跑起来,或配置被覆盖
  • 别依赖 auditctl -e 1(锁定规则)后就以为万事大吉——它不等同于 auditd 启动,锁规则前 auditd 必须已运行
  • 某些云镜像(如部分 AWS AMI)默认禁用 auditd,需手动启用,且 SELinux 策略可能拦截其日志写入,可临时设为 permissive 验证

想监控敏感文件但 -w /etc/shadow -p rwxa 不生效

audit 规则里的 -p 参数只捕获“路径上发生的操作”,不是递归,也不管硬链接或符号链接跳转;更关键的是,/etc/shadow 这类文件通常由特权进程(如 passwdusermod)通过 openatread 系统调用访问,而普通用户直接读会 Permission Denied——audit 能看到拒绝事件,但默认不记录(除非显式开启失败事件)。

实操建议:

  • -k shadow_access 方便后续 ausearch -k shadow_access 快速过滤
  • 必须加上失败事件捕获:auditctl -w /etc/shadow -p rwxa -k shadow_access -F perm=000perm=000 表示所有权限检查失败)
  • 注意 -p rwxa 中的 a(attribute change)对 /etc/shadow 几乎无意义,因为它的权限/属主变更通常走 chown/chmod,应单独加规则监控这些命令的执行
  • 规则持久化要写进 /etc/audit/rules.d/*.rules,不能只用 auditctl 临时加——重启后失效

ausearch -m execve 日志太多,根本没法定位真实可疑行为

execve 是进程执行的起点,所有 shell、脚本、二进制启动都会触发,尤其在有自动化任务或容器环境里,每分钟几百条很常见。盲目查 execve 等于在日志海里捞针。

AISEO
AISEO

AI创作对SEO友好的文案和文章

下载

实操建议:

  • 缩小范围:加时间窗口,比如 ausearch -m execve -ts yesterday;加用户上下文,-ui 0(root)、-ui 1001(某业务用户)
  • 排除高频白名单:用 --input-logs 结合 grep -v 过滤掉 /usr/bin/bash/bin/sh/usr/bin/systemctl 等常规路径(注意路径要和日志中 exe 字段完全一致)
  • 关注异常参数:用 ausearch -m execve | aureport -f -i 看文件访问模式,再反查哪些 execve 带了可疑参数(如 curl http://python -c "import os; os.system
  • 别忘了 execve 日志里 cwd(当前工作目录)和 cmdline(完整命令行)字段比 exe 更能暴露意图,但默认不显示,要用 aureport --key --interpretausearch --input-logs | aureport -f -i 解析

合规要求保留 90 天日志,但 /var/log/audit/ 磁盘爆了

audit.log 默认不轮转,也不压缩,一条 execve 记录就占 200+ 字节,高负载机器一天轻松破 G。硬设 max_log_file 只是到上限就停写,不解决长期留存问题。

实操建议:

  • 改用 audispd-pluginslog_file 插件配合外部轮转:在 /etc/audit/auditd.conf 中设 log_file = /var/log/audit/audit.log + max_log_file = 100(MB)+ num_logs = 7(本地最多留 7 个),再配 logrotate 压缩归档
  • 禁用 space_left 相关告警(如 space_left_action = email),它们在磁盘紧张时可能触发误报,反而掩盖真实空间耗尽原因
  • 远程转发更可靠:启用 audispdaf_unixsyslog 插件,把日志实时发到 SIEM(如 ELK、Splunk),本地只留最近 24 小时,既满足合规留存又避免单点故障
  • 注意:auditctl -e 2(不可更改模式)会阻止 auditd 重载配置,轮转脚本若尝试 systemctl reload auditd 会失败,得用 kill -USR1 $(pidof auditd) 手动触发日志切分

audit 规则越细,日志量越大;但规则太粗,又漏关键行为。真正难的不是加几条 auditctl,是持续校准规则粒度、验证日志可检索性、以及确保归档链路不中断——这些环节一断,前面所有配置都白搭。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

452

2023.06.14

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

180

2023.10.30

点击input框没有光标怎么办
点击input框没有光标怎么办

点击input框没有光标的解决办法:1、确认输入框焦点;2、清除浏览器缓存;3、更新浏览器;4、使用JavaScript;5、检查硬件设备;6、检查输入框属性;7、调试JavaScript代码;8、检查页面其他元素;9、考虑浏览器兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

193

2023.11.24

http500解决方法
http500解决方法

http500解决方法有检查服务器日志、检查代码错误、检查服务器配置、检查文件和目录权限、检查资源不足、更新软件版本、重启服务器或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

464

2023.11.09

http请求415错误怎么解决
http请求415错误怎么解决

解决方法:1、检查请求头中的Content-Type;2、检查请求体中的数据格式;3、使用适当的编码格式;4、使用适当的请求方法;5、检查服务器端的支持情况。更多http请求415错误怎么解决的相关内容,可以阅读下面的文章。

435

2023.11.14

HTTP 503错误解决方法
HTTP 503错误解决方法

HTTP 503错误表示服务器暂时无法处理请求。想了解更多http错误代码的相关内容,可以阅读本专题下面的文章。

3067

2024.03.12

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2522

2024.08.16

磁盘配额是什么
磁盘配额是什么

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

1500

2023.06.21

pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

145

2026.02.13

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 9.1万人学习

Git 教程
Git 教程

共21课时 | 3.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号