利用auditbeat采集系统审计日志并生成图像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用auditbeat采集系统审计日志并生成图像相关的知识,希望对你有一定的参考价值。
一、背景
Auditbeat是轻量型的审计日志采集器,可以收集linux审计框架的数据、监控文件完整性。能够组合相关消息到一个事件里,生成标标准的结构化数据,方便分析,而且能够与Logstash、Elasticsearch和Kibana无缝集成。
二、安装
wget https://artifacts.elastic.co/downloads/beats/auditbeat/auditbeat-6.5.4-linux-x86_64.tar.gz
tar zxf auditbeat-6.5.4-linux-x86_64.tar.gz
三、配置auditbeat
默认的配置文件是auditbeat.yml,Linux平台下,该文件位于解压目录下。
还有一个auditbeat.reference.yml文件,该文件显示了所有的选项,可以根据需求将其拷贝到auditbeat.yml文件中。
auditbeat.yml主要的两部分,一部分模块,另一部分是输出。
1、模块
目前有两种模块:
auditd:auditd模块接收来自Linux审计框架的审计事件,该框架是Linux内核的一部分。这个模块建立对内核的订阅,以便在事件发生时接收它们。注意使用Auditd模块,系统需要先关闭auditd服务,执行” service auditd stop”。
模块相关配置项如下:
- module: auditd
audit_rule_files: [ ‘${path.config}/audit.rules.d/*.conf‘ ]
audit_rules: |
#-a always,exit -F arch=b64 -S execve,execveat -k exec
……
audit_rule_files:从单独的文件加载审计规则,注意默认提供了36和位64位两种,根据本地系统选择其一。
audit_rules:定义审计规则。
file_integrity:file_integrity模块实时监控指定目录下的文件更改。注意在linux系统中,需要使用inotify,因此内核必须支持inotify。Inotify最初已被合并到2.6.13 Linux内核中了。
模块相关配置项如下:
- module: file_integrity
paths:
- /bin
- /usr/bin
- /sbin
- /usr/sbin
- /etc
paths:指定被监控文件路径
想了解两个模块更丰富的配置项,参考官方文档:
https://www.elastic.co/guide/en/beats/auditbeat/6.5/auditbeat-modules.html
2、输出
内容可以输出到Elasticsearch、Logstash、Kafka、Redis、File、Console、Cloud,注意只能配置一种输出方式。
输出到Elasticsearch:
output.elasticsearch:
hosts: ["172.16.1.25:9200"]
index: "auditbeat-%{[beat.version]}-%{+yyyy.MM.dd}"
protocol: "https"
username: "elastic"
password: "changeme"
输出到Logstash
output.logstash:
hosts: ["172.16.1.25:5044"]
输出到Kafka
output.kafka:
hosts: ["kafka1:9092", "kafka2:9092", "kafka3:9092"]
topic: ‘%{[fields.log_topic]}‘
partition.round_robin:
reachable_only: false
required_acks: 1
compression: gzip
max_message_bytes: 1000000
输出到File
output.file:
path: "/tmp/auditbeat"
filename: auditbeat
想了解更详细的配置项及含义,请参考官方文档:
https://www.elastic.co/guide/en/beats/auditbeat/6.5/configuring-output.html
本案例是将内容输出到了Elasticsearch
output.elasticsearch:
# Array of hosts to connect to.
hosts: ["172.16.1.25:9200","172.16.1.26:9200","172.16.1.27:9200"]
没有指定索引,采用默认格式"auditbeat-%{[beat.version]}-%{+yyyy.MM.dd}",需要注意的是:如果不使用默认格式,还需要添加连个配置项:
setup.template.name: "auditbeat"
setup.template.pattern: "auditbeat-*"
三、运行auditbeat
在解压目录下,使用root用户执行nohup ./auditbeat -e &
四、kibana图形化展示
在ES节点查看索引
#curl -XGET ‘http://127.0.0.1:9200/_cat/indices/?v‘
green open auditbeat-6.5.4-2019.01.17 mnkCA-QTSVS2wPkwykd_jw 3 1 468 0 2.8mb 1.5mb
kibana上创建auditbeat-6.5.4-*索引后,在Discover有数据输出
创建仪表板
创建视图,需要了解各个字段含义,可以参考官方文档:
https://www.elastic.co/guide/en/beats/auditbeat/6.5/exported-fields.html
以上是关于利用auditbeat采集系统审计日志并生成图像的主要内容,如果未能解决你的问题,请参考以下文章
日志审计极易上手搭建自己日志采集服务器分析日志(winlogbeat+Elasticsearch+Kibana)