有关设备和中间件未启用安全审计功能,未对重要用户行为、安全事件进行审计 | 建议启用设备或系统的安全审计功能,设置合理的安全审计规则。审计范围应覆盖所有用户,审计内容或事项应包括重要的用户行为和重要安全事件。 |
解决方案
在 CentOS 系统中启用安全审计功能并配置审计规则,可以使用 auditd
服务。auditd
是 Linux 审计框架的一部分,用于记录系统的安全相关事件。以下是详细的步骤:
1. 安装 auditd
首先,确保 auditd
已安装。如果未安装,可以使用以下命令进行安装:
sudo yum install audit
2. 启用并启动 auditd
服务
启用并启动 auditd
服务:
sudo systemctl enable auditd
sudo systemctl start auditd
3. 配置审计规则
审计规则可以通过编辑 /etc/audit/audit.rules
文件来配置。以下是一些示例规则:
# 记录所有用户登录和注销事件
-w /var/log/lastlog -p wa -k logins
# 记录所有用户的命令执行
-w /usr/bin/sudo -p x -k sudo
# 记录对重要系统文件的访问
-w /etc/passwd -p wa -k passwd_changes
-w /etc/shadow -p wa -k shadow_changes
# 记录对系统时间的修改
-a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change
-a always,exit -F arch=b64 -S clock_settime -k time_change
-a always,exit -F arch=b32 -S adjtimex -S settimeofday -S stime -S clock_settime -k time_change
# 记录对网络配置的修改
-w /etc/hosts -p wa -k network_changes
-w /etc/sysconfig/network -p wa -k network_changes
# 记录对系统启动和关闭的事件
-w /var/log/wtmp -p wa -k logins
4. 重启 auditd
服务
在修改完审计规则后,需要重启 auditd
服务以使更改生效:
sudo systemctl restart auditd
5. 查看审计日志
审计日志默认保存在 /var/log/audit/audit.log
文件中。可以使用 ausearch
或 aureport
工具来查看和分析审计日志。例如:
# 查看所有登录事件
sudo ausearch -k logins
# 生成审计报告
sudo aureport -au
6. 设置审计日志轮转
为了防止审计日志文件过大,可以配置日志轮转。编辑 /etc/audit/auditd.conf
文件,设置适当的日志轮转策略。例如:
max_log_file = 8
num_logs = 5
这将设置每个日志文件的最大大小为 8MB,并保留 5 个轮转日志文件。
总结
通过以上步骤,你可以在 CentOS 系统中启用并配置安全审计功能,记录重要的用户行为和安全事件。根据具体需求,可以进一步调整审计规则和日志轮转策略。