关键在“准”而非“快”,自动化巡检脚本须严格对齐等保三级条款、输出可验证、结构可解析、整改路径清晰;需分层设计采集—聚合—报告逻辑,确保每项FAIL附验证命令、敏感操作带时间戳备份、报告含完整元信息并自动归档与告警。

关键不在“快”,而在“准”——自动化巡检脚本能生成等保三级合规报告,前提是检查项与标准条款严格对齐、输出结果可验证、结构可解析、整改路径清晰。速度是副产品,合规性才是底线。
先对齐等保三级具体条款
别急着写脚本或跑命令。打开《GB/T 22239—2024》附录B,定位你系统等级(如第三级),逐条确认适用项:
- 剔除不适用项:容器环境跳过“BIOS/UEFI密码设置”;云主机忽略“物理访问控制”相关条目
- 标注条款编号:每项检查必须绑定唯一编号,例如“[等保2024 6.2.1.3] 身份鉴别-登录失败处理策略”
- 区分强制项与建议项:如“日志留存≥180天”为强制,“启用FIPS模式”在金融场景属强推但非通用强制
分层设计脚本逻辑
采集、聚合、报告三层解耦,避免一个函数既查又算又写文件:
-
采集层:每个检查封装为独立函数,统一返回三元组:
PASS/FAIL/WARN+ 简明描述 + 条款编号。例如:check_login_fail_lock() → ("FAIL", "未配置pam_faillock锁定策略", "[等保2024 6.2.1.4]") - 聚合层:用轻量 Python 或 awk 汇总结果,统计各状态数量、提取所有 FAIL/WARN 条目、计算合规率(如:通过项数 / 总检查项数 × 100)
- 报告层:基于 Jinja2 或纯文本模板生成 Markdown 或 HTML 报告,固定包含【高风险项】【处置命令】【原始输出】三栏,每条均带条款编号
让报告真正经得起审计查验
监管人员不关心图表多炫,只认三点:能复现、能验证、能整改:
- 每项 FAIL 必须附带可直接执行的验证命令及当前输出,例如:
sudo cat /etc/pam.d/system-auth | grep faillock → 无返回 - 所有敏感修改操作(如备份
/etc/shadow)需记录完整路径,格式为/etc/shadow.bak.1745829360(含时间戳) - 报告头部强制包含:巡检时间(精确到秒)、主机名、内核版本、OS发行版、脚本版本号、执行用户,确保结果可回溯复现
落地运行不能只靠“手动跑一次”
真正在用才有价值,缺一不可:
- 用
crontab设为每日凌晨自动执行,日志按/var/log/audit/20260510_report.log命名归档 - 对 FAIL 条目触发实时告警:用
curl调企业微信 Webhook,消息中直接带主机名和条款编号 - 保留最近30天报告,旧报告自动压缩为
report_20260410.tar.gz并移入/backup/audit/,防止磁盘写满

















