系统管理员使用审计来发现安全违规并跟踪其系统上的安全相关信息。根据预先配置的规则和属性,auditd 生成日志条目以记录有关系统上发生的事件信息。管理员使用此信息来分析安全策略出了什么问题,并通过采取其他措施进一步改进它们。

本文介绍如何安装、配置和管理审计服务。它还展示了如何定义审计规则、搜索审计日志和创建审计报告。

安装audit

audit包默认安装在 Centos8中。如果未安装,请使用以下命令添加:

[root@localhost ~]# yum -y install audit

审计配置文件 /etc/audit/auditd.conf。该文件包含更改 auditd 守护程序行为的默认参数。

管理审计服务

配置 auditd 后,启动服务来收集审计信息:

# service auditd start

使用 service 命令而不是 systemctl 的唯一原因是正确记录用户 ID (UID) 值。

设置开机启动:

# systemctl enable auditd

定义审计规则

使用 auditctl 工具,可以在你想要的任何系统调用上添加审计规则。规则会按顺序执行。

下一步定义监视规则。此规则跟踪文件或目录是否由某些类型的访问触发,包括读取、写入、执行和属性更改。

定义规则的语法是:

auditctl -w path_to_file -p permissions -k key_name

如要审核用户创建操作,首先,向 /etc/passwd 文件添加监视以跟踪写入和属性更改访问,并添加自定义键以记录所有消息(此自定义键可用于过滤日志消息):

[root@localhost ~]# auditctl -w /etc/passwd -p wa -k user-modify

接下来,添加一个新用户。这样做会更改 /etc/passwd 文件:

[root@localhost ~]# useradd user01

最后,检查 auditd 是否记录了更改。默认情况下,auditd 将日志存储在 /var/log/audit/audit.log 文件中:

[root@localhost ~]# cat /var/log/audit/audit.log | grep user-modify

定义持久审计规则

要使audit规则在重新启动后保持不变,请将它们添加到/etc/audit/rules.d/audit.rules文件中。

下面在 audit.rules 文件中定义持久性规则以监视 /etc/passwd 文件的更改。

-w /etc/passwd -p wa -k user-modify

保存文件,然后重新加载 auditd 守护程序以实现对规则文件中配置的更改:

[root@localhost ~]# service auditd reload

可以运行auditctl -l列出规则:

[root@localhost ~]# auditctl -l
-w /etc/passwd -p wa -k user-modify

最后,添加新用户或更改 /etc/passwd 文件会出发审计。更改记录在 /var/log/audit/audit.log 中,即使系统重新启动,规则仍然存在。

搜索审计日志

使用ausearch工具搜索审计日志。默认情况下,它搜索 /var/log/audit/audit.log 文件。

例如,要根据 key_name 搜索日志条目,搜索有关user-modify相关的:

[root@localhost ~]# ausearch -i -k user-modify

创建审计报告

使用 aureport 工具根据审计日志查询和创建审计报告。

[root@localhost ~]# aureport

查看关于尝试身份验证的报告:

[root@localhost ~]# aureport -auAuthentication Report
============================================
# date time acct host term exe success event
============================================
1. 11/10/2021 23:42:19 root localhost.localdomain tty1 /usr/bin/login yes 81
2. 11/10/2021 23:44:08 root 192.168.43.1 ssh /usr/sbin/sshd yes 111
3. 11/10/2021 23:54:31 root 192.168.43.1 ssh /usr/sbin/sshd yes 76
4. 11/11/2021 00:44:30 root 192.168.43.1 ssh /usr/sbin/sshd yes 81
5. 11/11/2021 00:58:41 root 192.168.43.1 ssh /usr/sbin/sshd yes 131
6. 11/11/2021 01:13:12 root 192.168.43.1 ssh /usr/sbin/sshd no 156

其中no代表验证失败。yes代表验证成功。

总结

在本文中学习了如何使用auditctl 临时定义auditd 规则,并在audit.rules 文件中永久定义。最后分别使用 ausearch 和 aureport 命令搜索了审计日志并生成了审计报告。

Centos8 使用auditd配置系统审计相关推荐

  1. RH413企业安全加固 第15章 配置系统审计

    第15章 配置系统审计 环境配置 1.RHEL6.4 SERVER 10.10.10.221 2.RHEL6.4 CLIENT 10.10.10.223 1.审计使用的服务 [root@teacher ...

  2. Linux auditd主机系统安全审计服务配置技术方案

    Auditd是什么 Auditd是Linux审计系统的用户空间组件.Auditd是Linux审计守护进程的缩写.在Linux中,daemon被称为后台运行服务,当它在后台运行时,应用程序服务的末尾附加 ...

  3. RHEL 7系统审计、系统日志文件、服务安全及打补丁 AIDE 系统入侵检测

    一.RHEL 7系统审计 审计的目的:基于事先配置的规则生成日志,记录可能发生在系统上的事件(正常或者非正常),审计不会为系统提供额外的安全保护,但是它会发现和记录违反安全策略的人及其对应行为. 审计 ...

  4. Linux下安全审计audit 系统审计 记录root操作

    Linux下安全审计audit 系统审计 1.审计介绍 Linux 审计系统提供了一种跟踪系统上与安全相关的信息的方法.根据预先配置的规则,Audit 会生成日志条目,以尽可能多地记录有关系统上发生的 ...

  5. linux内核配置系统浅析(转)

    随着 Linux 操作系统的广泛应用,特别是 Linux 在嵌入式领域的发展,越来越多的人开始投身到 Linux 内核级的开发中.面对日益庞大的 Linux 内核源代码,开发者在完成自己的内核代码后, ...

  6. 配置系统在开机时启动虚拟机

    2.2  配置系统在开机时启动虚拟机 可以通过两种方式配置系统在开机时自动启动虚拟机.从命令行可以自动启动系统.以下命令只需要一步即可设置,即添加一个到/etc/libvirt/qemu/autost ...

  7. Confluence 6 配置系统属性

    2019独角兽企业重金招聘Python工程师标准>>> 在这个页面中描述 Confluence 启动时如何设置 Java 属性和其他选项. 请查看 How to fix out of ...

  8. Dotnet 2.0配置系统

    今天使用VS2005开发一个Windows服务,发现dotnet2.0的配置系统相对于1.x的功能变化很大.记录下来同各位共享. .NET Framework 1.1 提供一个基本的应用程序配置机制, ...

  9. .NET Core采用的全新配置系统[5]: 聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]...

    较之传统通过App.config和Web.config这两个XML文件承载的配置系统,.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命令行参 ...

最新文章

  1. 关于Socket通信客户端是否需要绑定端口号
  2. 函数实现十进制转二进制
  3. Windows 11 预览版泄露!有 macOS 那味儿了......
  4. Unreachable code
  5. 【Android 异步操作】线程池 ( 线程池使用示例 | 自定义线程池使用流程 | 自定义任务拒绝处理策略 | 完整代码示例 )
  6. C/C++从源代码到生成可执行程序的过程详解!
  7. linux修改open files:ulimit、file-max
  8. 【Tomcat】解决GET方式传递的参数(URL中的参数)乱码问题
  9. wildfly管理控制台_WildFly管理控制台已更新–请求反馈
  10. memcached内存管理及key value长度限制
  11. 深度学习博士灵魂拷问:我们在做算法还是在调参?
  12. 【英语学习】【WOTD】purview 释义/词源/示例
  13. AutoWrapper:通过有意义的响应来美化您的ASP.NET Core API
  14. java xfire指定参数名_Java如何获取方法参数具体名称?这是个好问题!
  15. eclipse在线安装ivy和ivyde
  16. python基础编程语法-编程入门02:Python基础语法
  17. apache 添加虚拟机
  18. 免费杀软中的王者:德国小红伞评测
  19. 内存的读写速度是硬盘的多少倍
  20. 【文献阅读】Optimistic Bull or Pessimistic Bear: Adaptive Deep Reinforcement Learning for Stock Portfolio

热门文章

  1. 50年前的登月程序和程序员有多硬核?
  2. 租约-分布式缓存一致性的高效容错机制
  3. Django博客系统(用户中心展示)
  4. Flask-RESTful之响应处理
  5. Django介绍和虚拟环境(django特点、MVC、MVT、Django学习资料)
  6. Linux期末复习题库(4)
  7. 一文看懂MYCAT数据库服务器!
  8. 过年也学(nei)习 (juan)| 图像特征提取与匹配技术
  9. 解析激光雷达中时序融合的研究现状和发展方向
  10. 第7章——狄克特斯拉算法