Menu Close
Settings Close

Language and Page Formatting Options

第 12 章 审计系统

审计不会为您的系统提供额外的安全,而是用于发现系统上使用的安全策略的违规。可以通过其他安全措施(如 SELinux)进一步防止这些违规。

12.1. Linux 审计

Linux 审计系统提供了一种方式来跟踪系统上与安全相关的信息。根据预配置的规则,审计会生成日志条目,来尽可能多地记录系统上所发生的事件的相关信息。对于关键任务环境而言至关重要,可用来确定安全策略的违反者及其所执行的操作。

以下列表总结了审计可以在其日志文件中记录的一些信息:

  • 事件的日期、时间、类型和结果.
  • 主题和对象的敏感度标签。
  • 事件与触发事件的用户身份的关联。
  • 对审计配置的所有修改,以及对访问审计日志文件的尝试。
  • 所有身份验证机制的使用,如 SSH 和 Kerberos 等。
  • 对任何受信任数据库的修改,如 /etc/passwd
  • 尝试将信息导入系统或从系统导出。
  • 根据用户身份、主题和对象标签以及其他属性包含或排除事件。

审计系统的使用也是许多安全相关认证的一项要求。审计旨在满足或超出以下认证或合规指南的要求:

  • 受控访问保护配置文件(CAPP)
  • 标记的安全保护配置文件(LSPP)
  • 规则集基本访问控制(RSBAC)
  • 国家工业安全计划操作手册(NISPOM)
  • 联邦信息安全管理法案(FISMA)
  • 支付卡行业 - 数据安全标准(PCI-DSS)
  • 安全技术实施指南(STIG)

审计还包括:

  • 由国家信息保障合作伙伴(NIAP)和最佳安全行业(BSI)评估。
  • 在红帽企业 Linux 5 上认证为 LSPP/CAPP/RSBAC/EAL4+
  • 已认证在 Red Hat Enterprise Linux 6 上的操作系统保护配置文件/评估保证级别 4+(OSPP/EAL4+)

使用案例

监视文件访问
审计可以跟踪文件或目录是否已被访问、修改、执行或文件属性是否已被改变。例如,这有助于检测对重要文件的访问,并在其中一个文件损坏时提供审计跟踪。
监控系统调用
可将审计配置为在每次使用特定系统调用时生成日志条目。例如,这可用于通过监控 settimeofdayclock_adjtime 和其他与时间相关的系统调用来跟踪对系统时间的修改。
记录用户运行的命令
审计可以跟踪文件是否已被执行,因此可以定义一个规则以记录每次特定命令的执行。例如,可以对 /bin 目录中的每个可执行文件定义一个规则。然后,可以按用户 ID 搜索生成的日志条目,以生成每个用户所执行的命令的审计跟踪。
记录系统路径名称的执行
除了观察在规则调用时将路径转换为 inode 的文件访问之外,审计现在还可以观察路径的执行,即使路径在规则调用中不存在,或者在规则调用后文件被替换了。这允许规则在升级程序可执行文件后或甚至在其安装之前继续运行。
记录安全事件
pam_faillock 认证模块能够记录失败的登录尝试。也可以将审计设置为记录失败的登录尝试,并提供试图登录的用户的额外信息。
搜索事件
审计提供了 ausearch 工具,可用于过滤日志条目,并根据多个条件提供完整的审计跟踪。
运行总结报告
aureport 实用程序可用于生成记录事件的日常报告等。然后,系统管理员可以分析这些报告,并进一步调查可疑的活动。
监控网络访问
nftablesiptablesebtables 工具可以配置为触发审计事件,使系统管理员能够监控网络访问。
注意

系统性能可能会受到影响,具体取决于审计所收集的信息量。