在CentOS系统中,Syslog日志审计是一个重要的安全措施,可以帮助系统管理员监控和记录系统活动,发现潜在的安全威胁。以下是通过CentOS Syslog实现日志审计的步骤:
安装Syslog服务:
sudo yum install rsyslog 启动和设置Syslog服务开机自启:
sudo systemctl start rsyslog sudo systemctl enable rsyslog 配置Syslog接收远程日志:
编辑 /etc/rsyslog.conf 文件,添加以下内容以接收远程日志:
*.* @172.16.248.198:514 修改此处IP为你的日志接收端IP,然后重启Syslog服务以应用更改:
sudo systemctl restart rsyslog 安装auditd:
在大多数Linux发行版中,auditd已经预装。如果没有,可以使用包管理器安装:
sudo yum install audit # CentOS/RHEL 配置auditd:
编辑 /etc/audit/auditd.conf 文件,确保以下配置:
log_format = RAW write_logs = yes log_file = /var/log/audit/audit.log 然后创建日志目录并设置权限:
sudo mkdir -p /var/log/audit sudo chown root:adm /var/log/audit sudo chmod 750 /var/log/audit 启动并启用auditd服务:
sudo systemctl start auditd sudo systemctl enable auditd 添加审计规则:
编辑 /etc/audit/rules.d/audit.rules 文件,添加你需要的审计规则。例如:
-a exit,always -F arch=b32 -S execve -k execve_audit -a exit,always -F arch=b64 -S execve -k execve_audit 然后重新加载auditd配置:
sudo augenrules --load 使用ausearch和aureport工具来监控和分析审计日志:
安装ausearch和aureport:
sudo yum install ausearch aureport # CentOS/RHEL 使用ausearch查询日志:
sudo ausearch -k execve_audit 使用aureport生成报告:
sudo aureport -k execve_audit 为了防止日志文件过大,可以定期备份和清理日志文件。
备份日志:
sudo cp /var/log/audit/audit.log /var/log/audit/audit.log.bak 清理旧日志:
可以使用logrotate工具来自动清理旧日志:
编辑 /etc/logrotate.d/audit 文件,添加以下内容:
/var/log/audit/*.log { daily missingok rotate 7 compress notifempty create 640 root adm } 然后重启logrotate服务:
sudo systemctl restart logrotate 通过以上步骤,你可以使用syslog和auditd实现详细的日志审计功能,帮助你监控和分析系统活动。定期审查和更新日志审计策略,以应对不断变化的安全威胁。