前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Centos8 使用auditd配置系统审计

Centos8 使用auditd配置系统审计

原创
作者头像
用户9239730
发布2021-11-30 12:20:53
1.1K0
发布2021-11-30 12:20:53
举报
文章被收录于专栏:运维技术知识

安装audit

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

代码语言:javascript
复制
[root@localhost ~]# yum -y install audit

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

管理审计服务

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

代码语言:javascript
复制
# service auditd start

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

设置开机启动:

代码语言:javascript
复制
# systemctl enable auditd

定义审计规则

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

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

定义规则的语法是:

代码语言:javascript
复制
auditctl -w path_to_file -p permissions -k key_name

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

代码语言:javascript
复制
[root@localhost ~]# auditctl -w /etc/passwd -p wa -k user-modify

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

代码语言:javascript
复制
[root@localhost ~]# useradd user01

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

代码语言:javascript
复制
[root@localhost ~]# cat /var/log/audit/audit.log | grep user-modify

定义持久审计规则

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

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

代码语言:javascript
复制
-w /etc/passwd -p wa -k user-modify

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

代码语言:javascript
复制
[root@localhost ~]# service auditd reload

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

代码语言:javascript
复制
[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相关的:

代码语言:javascript
复制
[root@localhost ~]# ausearch -i -k user-modify

创建审计报告

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

代码语言:javascript
复制
[root@localhost ~]# aureport 

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

代码语言:javascript
复制
[root@localhost ~]# aureport -au

Authentication 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 命令搜索了审计日志并生成了审计报告。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档