一 . 概述
1.1什么是审计
-基于事先配置的规则生成日志 记录可能发生在系统上的事件
-审计不会为系统提供额外的安全保护 但会发现并记录违法安全策略的人及其对应行为
-审计能够记录的日志内容 : 日期与事件 事件结果 触发事件的用户
对关键数据文件的修改行为等
所有认证机制的使用都可以被记录 如ssh等
1.2 审计的案例
监控文件访问 监控系统调用 记录用户运行的命令 审计可以监控网络访问的行为
ausearch工具 可以根据条件过滤审计日志 aureport工具 可以生成审计报告
1.3部署audit
1.3.1 安装软件包
[root@proxy ~]#rpm -q audit
扫描二维码关注公众号,回复: 5468010 查看本文章audit-2.7.6-3.el7.x86_64
1.3.2 服务的配置文件
[root@proxy ~]#vim /etc/audit/audit.conf
log_file = /var/log/audit/audit.log //日志文件路径
[root@proxy ~]#systemctl start auditd
[root@proxy ~]#cat -b /var/log/audit/audit.log
二 . 配置审计
管理员root定义审计规则 可以使用auditctl命令控制审计系统并设置规则决定哪些行为会被记录日志
2.1 auditctl命令
[root@proxy ~]#auditctl -s //查询audit内核状态
[root@proxy ~]#auditctl -l //查看当前所有配置规则
[root@proxy ~]#auditctl -D //删除所有规则
2.2 定义临时规则
语法格式 : auditctl -w path -p permission -k key_name
//path: 需要审计的文件或目录 权限可以是r,w,x,a(文件或目录的属性)
//key_name为可选项 方便识别哪些规则生成特定的日志项 过滤时可以使用
[root@proxy ~]#auditctl -w /etc/passwd -p wa -k passwd_change
//设置规则所有对passwd文件的写 属性修改操作都会被记录审计日志
[root@proxy ~]# auditctl -w /usr/bin/fdisk -p x -k disk_one
//设置规则 监控fdisk程序
2.3 永久配置审计规则
[root@proxy ~]# vim /etc/audit/rules.d/audit.rules
-w /etc/passwd -p wa -k passwd_change
-w /usr/bin/fdisk -p x -k disk_one
三 . 审计日志
3.1 查看审计日志信息
[root@proxy ~]# ausearch -k passwd_change
[root@proxy ~]# tailf /var/log/audit/audit.log //查看audit日志信息
3.1.1 配置文件内容分析:
- type为类型
- msg为(time_stamp:ID) 时间是date +%s(1970-1-1至今的秒数)
- arch=c000003e 代表x86_64(16进制)
- success=yes/no 事件是否成功
- a0-a3是程序调用时前4个参数 16进制编码了
- ppid父进程ID 如bash pid进程ID 如cat命令
- auid是审核用户的id su - test 依然可以追踪su前的账户
- uid gid用户与组
- tty : 从哪个终端执行的命令
- comm="cat" //用户在命令行执行的指令
- exe="/usr/sbin/crond" //实际程序的路径
- key="sshd_config" //管理员定义的策略关键字key
- type=CWD -cwd="/home/username" //用来记录当前工作目
- type=PATH
- ouid(owner's user id) //对象所有者id
- guid(owner's groupid) //对象所有者id
[root@proxy ~]# ausearch -k sshd_config -i //根据key搜索日志 -i表示以交互方式操作