Linux 操作系统等保测评二级合规基线整改项 - 安全审计篇
#!/bin/bash
# 安全审计日志监控脚本
# 检查安全审计日志的变化
log_dir="/var/log/audit"
log_file="audit.log"
# 检查日志文件是否存在
if [ -f "$log_dir/$log_file" ]; then
# 获取文件的最后修改时间
last_modified=$(stat -c %Y "$log_dir/$log_file")
# 检查是否有之前的最后修改时间记录
if [ -f "/etc/last_audit_log_timestamp"]; then
last_timestamp=$(cat /etc/last_audit_log_timestamp)
# 比较两次修改时间,如果有变化则发送通知
if [ "$last_timestamp" != "$last_modified" ]; then
echo "安全审计日志被修改,发送通知..."
# 这里可以替换为实际发送通知的代码
# send_notification "安全审计日志变更" "$log_dir/$log_file"
fi
fi
# 更新最后的修改时间记录
echo "$last_modified" > /etc/last_audit_log_timestamp
else
echo "安全审计日志文件不存在,请检查配置。"
fi
这段代码首先检查安全审计日志文件是否存在,如果存在则获取其最后修改时间。如果系统中存在上次修改时间的记录,它会与当前的最后修改时间对比。如果有变化,它会发送通知(注释中的send\_notification函数需要替换为实际的通知发送逻辑)。最后,更新最新的最后修改时间记录。这个脚本可以作为定期执行的任务计划,以确保安全审计日志的变动能够被及时监控和响应。
评论已关闭