- 介绍
- 组成
- 配置审计服务
- 配置规则
- 查看当前状态
- Summary Report
- Executable Report
- date time exe term host auid event
- Executable Summary Report
- total file
- Failed User Summary Report
- total auid
- Failed User Summary Report
- total auid
- Failed File Summary Report
- total file
- Account Modifications Report
- date time auid addr term exe acct success event
- Login Report
- date time auid host term exe success event
- Log Time Range Report
介绍
Linux系统从内核2.6版本开始正式支持文件访问级别的日志记录功能,eg:记录系统调用和文件访问等。管理员可以通过查阅文件的访问日志来评估系统可能存在的安全漏洞等,这个功能叫做Linux审计系统(Linux Auditing System)
组成
linux 审计系统由多个组件组成,常见的组件和工具
auditd.service : 审计系统的守护进程,负责将内核产生的日志写入磁盘,这些日志是由应用程序和系统活动触发生成的
auditcl : 控制内核审计系统的各种接口,生成日志的变量以及决定跟踪事件的规则
aureport:从审计日志中提取内容并生成个性报告。该报告易于被脚本读取,从而使其他应用程序可以利用报告进行工作
ausearch:查看日志的工具,可以使用不同的规则查询搜索日志
配置审计服务
配置文件
/etc/audisp/audispd.conf 后台守护进程配置文件,主要对守护进程进行规范。eg:对事件调度队列长度、队列溢出等行为进行配置。
/etc/audit/auditd.conf audit的功能是将审计系统产生的记录写入文件中
/etc/audit/audit.rules 这个文件中写入的是具体的审计规则,将在系统启动时被加载
[root@lhuan ~]# cat /etc/audisp/audispd.conf## This file controls the configuration of the audit event# dispatcher daemon, audispd.#q_depth = 250overflow_action = SYSLOGpriority_boost = 4max_restarts = 10name_format = HOSTNAME#name = mydomainplugin_dir = /etc/audisp/plugins.d/[root@lhuan ~]# cat /etc/audit/auditd.conf## This file controls the configuration of the audit daemon##日志配置选项,配置日志文件的位置、格式等local_events = yeswrite_logs = yeslog_file = /var/log/audit/audit.loglog_group = rootlog_format = RAW#写入日志文件时的行为,写入规则、日志文件最大容量等flush = INCREMENTAL_ASYNCfreq = 50max_log_file = 8num_logs = 5priority_boost = 4disp_qos = lossydispatcher = /sbin/audispdname_format = NONE##name = mydomainmax_log_file_action = ROTATEspace_left = 75space_left_action = SYSLOGverify_email = yesaction_mail_acct = rootadmin_space_left = 50admin_space_left_action = SUSPENDdisk_full_action = SUSPENDdisk_error_action = SUSPENDuse_libwrap = yes##tcp_listen_port = 60tcp_listen_queue = 5tcp_max_per_addr = 1##tcp_client_ports = 1024-65535tcp_client_max_idle = 0enable_krb5 = nokrb5_principal = auditd##krb5_key_file = /etc/audit/audit.keydistribute_network = no[root@lhuan ~]# cat /etc/audit/audit.rules## This file is automatically generated from /etc/audit/rules.d-D-b 8192-f 1
配置规则
默认情况下审计系统没有添加规则。
审计系统只会对系统的关键性事件进行记录,eg:用户登录事件、要改变记录的事件就需要为审计系统添加规则。
添加规则方式:
1.使用命令audictl 这种方法添加规则会立即生效
2.将审计规则写入文件/etc/audit/audit.relus 这个方法只有重新启动系统或者重启服务auditd.service,审计规则才会生效
audictl命令
audictl命令可以用来为审计系统添加审计规则,常见的选项如下
| 参数 | 说明 |
|---|---|
| e | 表示临时禁用或启动审计功能,0表示临时禁用,1表示启用,2表示锁定审核配置 |
| F | 建立规则域,可用的域有名称、操作、值。 审计系统有许多规则域 |
| a | 将规则追加到链表 |
| S | 表示系统调用号和名字 |
| w | 表示加入一个文件系统对象的监视器 |
| D/d | 删除所有/当前指定的规则和监视器 |
| s | 查看当前状态 |
| k | 表示审计规则上 的关键字,关键字作为该选项的参数 |
| p | 设置需要监视的文件权限 |
| l | 查看规则列表 |
```
查看当前状态
[root@lhuan ~]# auditctl -s enabled 1 failure 1 pid 605 rate_limit 0 backlog_limit 8192 lost 0 backlog 0 loginuid_immutable 0 unlocked
配置审计规则文件audit.rules
先将审计规则写入文件 /etc/audit/audit.rules ,然后由系统自动生成可靠的audit.rules
<a name="4n693"></a>
## 分析审计日志
1.列出在指定时间范围内的事件统计
[root@lhuan ~]# aureport -ts 8:00 -te 10:00
Summary Report
Range of time in logs: 10/15/2020 07:36:02.468 - 01/01/1970 08:00:00.000 Selected time for report: 10/15/2020 08:00:00 - 10/15/2020 10:00:00 Number of changes in configuration: 0 Number of changes to accounts, groups, or roles: 0 Number of logins: 0 Number of failed logins: 694 Number of authentications: 0 Number of failed authentications: 1364 Number of users: 2 Number of terminals: 3 Number of host names: 31 Number of executables: 2 Number of commands: 0 Number of files: 0 Number of AVC’s: 0 Number of MAC events: 0 Number of failed syscalls: 0 Number of anomaly events: 0 Number of responses to anomaly events: 0 Number of crypto events: 6931 Number of integrity events: 0 Number of virt events: 0 Number of keys: 0 Number of process IDs: 1513 Number of events: 9844
2.生成所有关于可行性文件的报告
[root@lhuan ~]# aureport -x | less
Executable Report
date time exe term host auid event
====================================
- 10/15/2020 07:36:02 /usr/sbin/sshd ? ? -1 6293825
- 10/15/2020 07:36:02 /usr/sbin/sshd ? ? -1 6293826
- 10/15/2020 07:36:02 /usr/sbin/sshd ssh 154.209.79.254 -1 6293827
- 10/15/2020 07:36:03 /usr/sbin/sshd ? ? -1 6293828
- 10/15/2020 07:36:03 /usr/sbin/sshd ? ? -1 6293829
- 10/15/2020 07:36:03 /usr/sbin/sshd ? ? -1 6293830
- 10/15/2020 07:36:03 /usr/sbin/sshd ? 154.209.79.254 -1 6293831
- 10/15/2020 07:36:03 /usr/sbin/sshd ? 154.209.79.254 -1 6293832
- 10/15/2020 07:36:04 /usr/sbin/sshd ssh 154.209.79.254 -1 6293833
- 10/15/2020 07:36:06 /usr/sbin/sshd ssh 154.209.79.254 -1 6293834
- 10/15/2020 07:36:06 /usr/sbin/sshd ? ? -1 6293835
- 10/15/2020 07:36:06 /usr/sbin/sshd ? 154.209.79.254 -1 6293836
- 10/15/2020 07:36:06 /usr/sbin/sshd ? ? -1 6293837
- 10/15/2020 07:36:06 /usr/sbin/sshd ? ? -1 6293838
- 10/15/2020 07:36:06 /usr/sbin/sshd ? ? -1 6293839
- 10/15/2020 07:36:06 /usr/sbin/sshd ssh 154.209.79.254 -1 6293840
- 10/15/2020 07:36:08 /usr/sbin/sshd ? ? -1 6293841
- 10/15/2020 07:36:08 /usr/sbin/sshd ? ? -1 6293842
- 10/15/2020 07:36:08 /usr/sbin/sshd ? ? -1 6293843
- 10/15/2020 07:36:08 /usr/sbin/sshd ? 179.127.107.89 -1 6293844
- 10/15/2020 07:36:08 /usr/sbin/sshd ? 179.127.107.89 -1 6293845
- 10/15/2020 07:36:08 /usr/sbin/sshd ? ? -1 6293846
- 10/15/2020 07:36:08 /usr/sbin/sshd ? ? -1 6293847
- 10/15/2020 07:36:08 /usr/sbin/sshd ? ? -1 6293848
- 10/15/2020 07:36:08 /usr/sbin/sshd ? 154.209.79.254 -1 6293849
- 10/15/2020 07:36:08 /usr/sbin/sshd ? 154.209.79.254 -1 6293850
- 10/15/2020 07:36:10 /usr/sbin/sshd ssh 179.127.107.89 -1 6293851
- 10/15/2020 07:36:10 /usr/sbin/sshd ssh 154.209.79.254 -1 6293852
- 10/15/2020 07:36:11 /usr/sbin/sshd ssh 179.127.107.89 -1 6293853
- 10/15/2020 07:36:12 /usr/sbin/sshd ? ? -1 6293854 :
3.生成可执行文件的摘要报告
[root@lhuan ~]# aureport -x —summary
Executable Summary Report
total file
110445 /usr/sbin/sshd 5280 /usr/sbin/crond 2 /usr/lib/systemd/systemd 1 /usr/sbin/vsftpd
4.生成所有用户失败事件的摘要
[root@lhuan ~]# aureport -u —failed —summary -i
Failed User Summary Report
total auid
25397 unset 1 root
5.生成用户登录事件的摘要
[root@lhuan ~]# aureport -u —failed —summary -i
Failed User Summary Report
total auid
25397 unset 1 root
6.生成所有文件访问失败的摘要
[root@lhuan ~]# aureport -f —failed —summary -i
Failed File Summary Report
total file
7.生成所有账号修改的摘要
[root@lhuan ~]# aureport -m
Account Modifications Report
date time auid addr term exe acct success event
=================================================
8.查询所有用户登录的摘要
[root@lhuan ~]# aureport -l
Login Report
date time auid host term exe success event
============================================
- 10/15/2020 07:36:02 root 154.209.79.254 ssh /usr/sbin/sshd no 6293827
- 10/15/2020 07:36:06 root 154.209.79.254 ssh /usr/sbin/sshd no 6293840
- 10/15/2020 07:36:12 (unknown) 179.127.107.89 ssh /usr/sbin/sshd no 6293859
- 10/15/2020 07:36:14 root 154.209.79.254 ssh /usr/sbin/sshd no 6293866
- 10/15/2020 07:36:27 root 154.209.79.254 ssh /usr/sbin/sshd no 6293879
9.生成所有查询的审计文件的报告和所包含的时间范围
[root@lhuan ~]# aureport -t
Log Time Range Report
/var/log/audit/audit.log.4: 10/15/2020 07:36:02.468 - 10/15/2020 12:12:17.383 /var/log/audit/audit.log.3: 10/15/2020 12:12:17.383 - 10/15/2020 16:00:20.694 /var/log/audit/audit.log.2: 10/15/2020 16:00:24.320 - 10/15/2020 18:48:20.347 /var/log/audit/audit.log.1: 10/15/2020 18:48:20.347 - 10/15/2020 21:26:03.038 /var/log/audit/audit.log: 10/15/2020 21:26:03.039 - 10/15/2020 22:04:05.017
```
