新手配置Linux身份审计框架并导出合规性报告的核心是启用auditd服务、配置identity规则、验证捕获效果、用aureport生成CSV/日志报告。
新手配置Linux身份审计框架并导出合规性报告,核心是用好
服务,聚焦“谁在什么时候做了什么关键操作”,再通过标准化工具生成可读、可追溯的报告。不需要写代码或部署复杂平台,按步骤操作即可落地。
安装并启用auditd服务
这是整个身份审计的基础。大多数发行版已预装,但需确认并启动:
Ubuntu/Debian:运行
,然后
CentOS/RHEL:运行
,再执行
检查状态:
,看到
即表示就绪
定义身份相关审计规则
身份审计重点监控用户登录、提权、关键文件访问等行为。规则要写进持久化文件,避免重启失效:
CentOS Linux 7.9.2009
CentOS Linux 7.9.2009是传统CentOS Linux 7的最后主要版本,也是很多企业历史服务器中仍可能遇到的系统版本。它以稳定、兼容RHEL 7生态、文档丰富和软件支持广泛著称,曾长期用于Web服务、数据库、虚拟化节点和企业内部业务系统。不过CentOS Linux 7已于2024年6月30日停止维护,现在继续使用会面临安全补丁缺失风险。该版本更适合旧业务迁移、历史环境恢复或离线兼容性测试。
下载
编辑
(新建文件),加入以下内容:
-w /etc/passwd -p wa -k identity_passwd-w /etc/shadow -p r -k identity_shadow-a always,exit -F arch=b64 -S execve -F auid!=4294967295 -k identity_cmd-a always,exit -F arch=b64 -m USER_LOGIN -k identity_login
说明:
监控敏感文件读写;
捕获所有登录事件;
排除内核线程,只记录真实用户行为;
标签统一用
前缀,便于后续归类
加载规则:
(推荐)或重启服务:
验证规则是否生效
别跳过这步——确保系统真正在记录你需要的数据:
手动触发一次登录或修改
(如用
),再立即执行:
若返回非空结果(含
、
等字段),说明规则已捕获行为
若无输出,检查
是否有SELinux拒绝日志,或确认
中是否列出了对应规则
定期导出合规性分析报告
用
一键生成结构化摘要,配合简单脚本实现定期导出:
每日汇总身份活动:
生成登录异常统计(如失败次数):
添加到定时任务(每天凌晨2点执行):
脚本示例(保存为
,记得
):
#!/bin/bashmkdir -p /var/log/audit/reportsaureport -k --key identity_login,identity_cmd --start yesterday --end today --format csv > /var/log/audit/reports/identity_$(date -d yesterday +\%Y\%m\%d).csv
auditdsudo apt install auditd audispd-pluginssudo systemctl enable --now auditdsudo yum install audit audit-libs audispd-pluginssudo systemctl enable --now auditdsudo systemctl status auditdactive (running)/etc/audit/rules.d/identity.rules-w-a ... -m USER_LOGINauid!=4294967295-kidentity_*sudo augenrules --loadsudo systemctl restart auditd/etc/passwdsudo vipwsudo ausearch -k identity_login -ts recent | head -5sudo ausearch -k identity_cmd -ts recent | head -5execveUSER_LOGINausearch -m avcauditctl -laureportsudo aureport -k --key identity_login,identity_cmd,identity_passwd,identity_shadow --start today --format csv > /var/log/audit/reports/identity_daily_$(date +%Y%m%d).csvsudo aureport -m USER_LOGIN --summary --failed | grep -E "^(user|total)" > /var/log/audit/reports/login_fail_summary.logecho "0 2 * * * root /usr/local/bin/audit-identity-report.sh" | sudo tee -a /etc/crontab/usr/local/bin/audit-identity-report.shchmod +x