跳到主要内容

CentOS 系统审计

介绍

在CentOS系统中,审计(Audit)是一种强大的工具,用于监控和记录系统活动。通过审计,管理员可以跟踪用户行为、文件访问、系统调用等关键事件,从而确保系统的安全性和合规性。审计日志可以帮助管理员识别潜在的安全威胁,并在发生安全事件时提供详细的调查依据。

审计的基本概念

什么是审计?

审计是一种系统监控机制,用于记录系统中发生的各种事件。这些事件可以包括用户登录、文件访问、系统调用等。审计日志通常存储在 /var/log/audit/audit.log 文件中,管理员可以通过分析这些日志来了解系统的运行情况。

为什么需要审计?

  • 安全性:审计可以帮助管理员识别潜在的安全威胁,如未经授权的访问或恶意软件活动。
  • 合规性:许多行业和法规要求企业记录和监控系统活动,以确保合规性。
  • 故障排查:审计日志可以帮助管理员快速定位和解决系统问题。

配置和使用审计

安装审计工具

在CentOS系统中,审计工具通常已经预装。如果没有安装,可以使用以下命令进行安装:

bash
sudo yum install audit

启动和启用审计服务

安装完成后,启动并启用审计服务:

bash
sudo systemctl start auditd
sudo systemctl enable auditd

配置审计规则

审计规则定义了哪些事件需要被记录。可以通过编辑 /etc/audit/audit.rules 文件来配置审计规则。以下是一些常见的审计规则示例:

bash
# 监控所有用户的登录和注销
-a always,exit -F arch=b64 -S execve -k user_login

# 监控对 /etc/passwd 文件的访问
-w /etc/passwd -p wa -k passwd_access

# 监控对 /var/log/audit/audit.log 文件的访问
-w /var/log/audit/audit.log -p wa -k audit_log_access

查看审计日志

审计日志存储在 /var/log/audit/audit.log 文件中。可以使用以下命令查看日志:

bash
sudo cat /var/log/audit/audit.log

使用 ausearch 工具

ausearch 是一个强大的工具,用于搜索和分析审计日志。例如,以下命令可以搜索与特定关键字相关的审计事件:

bash
sudo ausearch -k user_login

实际案例

案例1:监控用户登录

假设我们需要监控所有用户的登录和注销活动。我们可以添加以下审计规则:

bash
-a always,exit -F arch=b64 -S execve -k user_login

然后,使用 ausearch 工具查看相关日志:

bash
sudo ausearch -k user_login

输出示例:

bash
type=USER_LOGIN msg=audit(1633024800.123:456): pid=1234 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='op=login acct="root" exe="/usr/bin/login" hostname=? addr=192.168.1.1 terminal=tty1 res=success'

案例2:监控文件访问

假设我们需要监控对 /etc/passwd 文件的访问。我们可以添加以下审计规则:

bash
-w /etc/passwd -p wa -k passwd_access

然后,使用 ausearch 工具查看相关日志:

bash
sudo ausearch -k passwd_access

输出示例:

bash
type=SYSCALL msg=audit(1633024800.123:456): arch=c000003e syscall=2 success=yes exit=3 a0=7ffd8b9b9b90 a1=0 a2=1 a3=7ffd8b9b9b90 items=1 ppid=1234 pid=1235 auid=1000 uid=1000 gid=1000 euid=1000 suid=1000 fsuid=1000 egid=1000 sgid=1000 fsgid=1000 tty=pts0 ses=1 comm="cat" exe="/usr/bin/cat" key="passwd_access"

总结

CentOS系统审计是一种强大的工具,可以帮助管理员监控和记录系统活动,确保系统的安全性和合规性。通过配置审计规则和使用 ausearch 工具,管理员可以轻松地跟踪和分析系统事件。

附加资源

练习

  1. 配置一个审计规则,监控 /etc/shadow 文件的访问。
  2. 使用 ausearch 工具查看与 shadow_access 关键字相关的审计日志。
  3. 尝试添加一个新的审计规则,监控所有用户的 sudo 命令使用情况。

通过以上练习,您将更深入地理解CentOS系统审计的使用方法和实际应用场景。