答案:linux系统审计通过auditd服务记录关键操作,保障安全并满足合规要求。安装后启动auditd服务,使用auditctl添加临时规则或编辑/etc/audit/rules.d/audit.rules实现持久化规则,如监控文件访问和系统调用;日志存于/var/log/audit/audit.log,可用ausearch按关键词、用户、时间查询,aureport生成汇总、文件、用户报告;重点审计敏感文件、目录、特权命令及登录事件,避免过度审计影响性能,高安全场景建议日志转发至SIEM系统。
linux系统审计是保障系统安全的重要手段,通过记录关键操作行为,帮助管理员追踪异常活动、排查问题和满足合规要求。配置和分析审计日志主要依赖auditd服务,它是Linux审计框架的核心组件。
启用并配置auditd服务
大多数主流Linux发行版(如centos、RHEL、ubuntu)默认提供auditd包,需先确认安装并启动服务。
1. 安装auditd(如未预装):
– CentOS/RHEL: yum install audit audit-libs
– Ubuntu/debian: apt-get install auditd audispd-plugins
安装完成后启动服务并设置开机自启:
systemctl start auditd
systemctl enable auditd
可通过systemctl status auditd
检查运行状态。
配置审计规则
审计规则定义了需要监控的系统调用或文件访问行为。规则分为临时规则(运行时添加)和永久规则(重启后保留)。
常用auditctl命令添加临时规则:
– 监控特定文件的读写执行:auditctl -w /etc/passwd -p rwxa -k passwd_access
其中 -p 指定权限(read/write/execute/Attribute),-k 是用户定义的关键词便于搜索。
– 监控系统调用(如所有用户删除文件操作):auditctl -a always,exit -F arch=b64 -S unlink -S unlinkat -k file_deletion
要使规则持久化,需将规则写入配置文件/etc/audit/rules.d/audit.rules
,例如:
-w /etc/shadow -p rw -k shadow_write -a always,exit -F arch=b64 -S execve -k command_execution
保存后重启auditd服务生效:systemctl restart auditd
。
查看与分析审计日志
审计日志默认存储在/var/log/audit/audit.log
。直接查看该文件内容即可获取原始记录。
使用ausearch工具进行条件查询:
– 按关键词查找:apt-get install auditd audispd-plugins
0
– 查看特定用户的操作:apt-get install auditd audispd-plugins
1(uiD为1000的用户)
– 查询某时间段的日志:apt-get install auditd audispd-plugins
2
使用aureport可生成摘要报告:
-
apt-get install auditd audispd-plugins
3:总体事件汇总 -
apt-get install auditd audispd-plugins
4:文件访问报告(-i表示人性化输出) -
apt-get install auditd audispd-plugins
5:用户活动报告
常见审计场景建议
实际环境中可重点关注以下审计点:
- 关键配置文件:/etc/passwd、/etc/shadow、/etc/sudoers
- 敏感目录:/root、/home/*/.ssh/
- 特权命令执行:通过execve系统调用监控sudo、su、reboot等
- 登录与登出事件:已由系统自动记录,可通过ausearch -m USER_LOGIN查看
定期审查日志,结合时间、用户、操作类型综合判断是否存在异常行为。对于高安全需求环境,建议将日志集中转发至SIEM系统。
基本上就这些。合理配置审计规则并定期分析日志,能显著提升系统的可观测性和安全性。注意避免过度审计导致日志膨胀影响性能。