日志审计Graylog 使用教程-kafka收取消息

news2024/9/30 21:18:44

Graylog 是一个开源的日志管理和分析平台。它主要用于收集、存储、处理和分析大量的日志数据。Graylog 的核心功能包括:

  1. 日志收集:Graylog 可以从各种来源(如服务器、网络设备、应用程序等)收集日志数据。它支持多种输入方式,包括 Syslog、GELF、Beats、Kafka 等。
  2. 日志存储:Graylog 使用 Elasticsearch 作为其后端存储系统,因此它可以高效地存储和检索大量的日志数据。
  3. 日志处理和分析:Graylog 提供了强大的搜索和分析功能,用户可以通过查询语言对日志进行过滤、排序、聚合等操作,帮助发现问题或监控系统状态。
  4. 警报和通知:Graylog 可以根据预设条件触发警报,并通过电子邮件、Slack 等渠道发送通知。
  5. 可视化和仪表板:用户可以在 Graylog 中创建可视化的仪表板,用于实时监控和分析日志数据。

Graylog 常用于 IT 运维、安全监控、故障排查等场景,通过对日志数据的集中管理和分析,帮助企业提高系统的可观测性和问题解决能力。

一、日志收集

1.1、配置日志服务器

选择input

这里给了很多日志接收方法

试验使用kafka获取日志,

1.2、配置映射表

他作为动态数据获取,比如IP 地理位置等,根据日志某个字段的信息从XX库找到对应的数据

选择数据源

创建链接源数据实例

有很多不同格式的数据源

选择csv文件

如果我们的内容为

username ,department,email

jdoe,IT,jdoe@example.com

asmith,HR,asmith@example.com

bwhite,Finance,bwhite@example.com

johndoe,jiushi,a.com

将内容编写为

不区分大小写,更新

创建索引表实例

选择刚刚创建的数据源实例并创建

1.3、创建字段提取器

创建,内容填写自己构建的kafka服务器地址和topic

保存成功,他会自己运行的,如果没有问题就会变成RUNNING的状态

先生产一个消息,因为要配置字段提取器

生产内容

{  "version": "1.1",  "host": "webserver.local",  "short_message": "User login failed",  "full_message": "User johndoe failed to login to the web application",  "level": 3,  "_username": "johndoe",  "_src_ip": "192.168.1.2"}

查看消息

新产生的这个就是

构造字段提取

新增字段提取器

加载最近的消息

这里内容是kafka生产的消息,只作为日志,可以对每个字段配置提取。

将username 用于 Look UP配置

忘记设置映射表了。先在1,2小节创建映射表实例

选择映射表

1.4、创建告警

1.4.1、创建上报

使用简单的API上报

填充URL,并尝试发送测试数据

提示成功

查看api服务器

1.4.2、定义事件

设置上报方式,刚才创建的API方式

创建告警事件完成

1.5、测试

1.5.1、产生关于登录失败的日志

{  "version": "1.1",  "host": "webserver.local",  "short_message": "User login failed",  "full_message": "User johndoe failed to login to the web application",  "level": 3,  "_username": "johndoe",  "_src_ip": "192.168.1.2"}

其中username的值为johndoe,记得之前映射表给定文件内容

我们创建映射表时,通过username查找department内容,并添加到告警自定义字段中。

产生的告警内容,我们自定义字段“renyuan”他的value通过映射表username关联到的。日志内容jdoe对应表格IT内容

附录

Input kafka不同格式示例

1. CEF Kafka

示例消息:

CEF:0|SecurityVendor|SecurityProduct|1.0|100|User Login|5|dvc=192.168.1.1 duser=johndoe src=10.0.0.1 spt=443

解释:

  • CEF:0: CEF 版本号。
  • SecurityVendor: 设备供应商名称。
  • SecurityProduct: 设备产品名称。
  • 1.0: 设备版本。
  • 100: 事件 ID。
  • User Login: 事件名称或描述。
  • 5: 严重级别(1-10)。
  • dvc=192.168.1.1: 设备 IP 地址。
  • duser=johndoe: 目标用户名。
  • src=10.0.0.1: 源 IP 地址。
  • spt=443: 源端口。

2. GELF Kafka

示例消息:

{
  "version": "1.1",
  "host": "webserver.local",
  "short_message": "User login failed",
  "full_message": "User johndoe failed to login to the web application",
  "level": 3,
  "_username": "johndoe",
  "_src_ip": "192.168.1.2"
}

解释:

  • version: GELF 版本号。
  • host: 主机名或 IP 地址。
  • short_message: 简短的事件描述。
  • full_message: 事件的详细描述。
  • level: 日志级别(例如:3 表示错误)。
  • _username 和 _src_ip: 自定义字段。

3. RAW Kafka

示例消息:

User johndoe failed to login from IP 192.168.1.2 via web application.

解释:

  • RAW 格式是原始日志消息的简单文本,没有结构化的字段或元数据。消息内容完全取决于发送方。

4. Syslog Kafka

示例消息:

<134>webserver.local User login failed: johndoe from 192.168.1.2

解释:

  • <134>: Syslog 优先级,计算方式为 (Facility * 8) + Severity。
  • webserver.local: 发送日志的主机名。
  • User login failed: johndoe from 192.168.1.2: 日志消息内容,描述发生的事件。

这些示例展示了不同格式在 Kafka 中传输的方式,供 Graylog 等日志管理系统解析和处理。

问题

1、接收到消息,但是没有输出

存在下行数据变动

查看系统日志tail -f /var/log/graylog-server/server.log &

root@a:/home/install/kafka_2.12-2.8.2# 2024-08-19T03:49:22.949Z ERROR [DecodingProcessor] Unable to decode raw message RawMessage{id=0593cd30-5dde-11ef-b23f-ac1f6b7e6aea, journalOffset=70, codec=CEF, payloadSize=9, timestamp=2024-08-19T03:49:22.947Z} on input <66c2a27b4c33336f079032fc>.

2024-08-19T03:49:22.949Z ERROR [DecodingProcessor] Error processing message RawMessage{id=0593cd30-5dde-11ef-b23f-ac1f6b7e6aea, journalOffset=70, codec=CEF, payloadSize=9, timestamp=2024-08-19T03:49:22.947Z}

java.lang.NullPointerException: null

        at org.graylog.plugins.cef.parser.MappedMessage.<init>(MappedMessage.java:37) ~[graylog.jar:?]

        at org.graylog.plugins.cef.codec.CEFCodec.decodeCEF(CEFCodec.java:128) ~[graylog.jar:?]

        at org.graylog.plugins.cef.codec.CEFCodec.decode(CEFCodec.java:117) ~[graylog.jar:?]

        at org.graylog2.shared.buffers.processors.DecodingProcessor.processMessage(DecodingProcessor.java:149) ~[graylog.jar:?]

        at org.graylog2.shared.buffers.processors.DecodingProcessor.onEvent(DecodingProcessor.java:90) [graylog.jar:?]

        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:90) [graylog.jar:?]

        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:47) [graylog.jar:?]

        at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:143) [graylog.jar:?]

        at com.codahale.metrics.InstrumentedThreadFactory$InstrumentedRunnable.run(InstrumentedThreadFactory.java:66) [graylog.jar:?]

        at java.lang.Thread.run(Thread.java:830) [?:?]

创建了CEF格式解码器,原因为kafka生产的消息不符合格式

示例CEF格式内容

CEF:0|Security|Graylog|1.0|100|Test event|5|src=10.0.0.1 dst=10.0.0.2 spt=1232

可以通过重新创建一个syslog

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2066097.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

122-域信息收集应用网络凭据CS插件AdfindBloodHound

参考&#xff1a;【内网安全】域信息收集&应用网络凭据&CS插件&Adfind&BloodHound_ladon adfinder bloodhound-CSDN博客 工作组和域环境 我的理解&#xff1a; 工作组就是还是局域网一样只是大一点里面的电脑很多&#xff0c;每个电脑还是都是单独的电脑没有…

萤石C++ SDK Demo播放4G摄像头

萤石开放平台官方提供的Demo是有问题的&#xff0c;无法直接使用。提交工单后&#xff0c;技术人员回复要修改配置文件才能使用。 1. 下载SDK 2.修改配置文件EZPCOpenSDK_v5.1.18_build20230808\demo\win32\EzvizQtDemo.ini 3.运行EzvizQtDemo1.exe 点击左上角【登录】按钮&am…

黑神话悟空,高清壁纸、原画,游戏截图

黑神话悟空&#xff0c;高清壁纸、原画&#xff0c;游戏截图&#xff1a; 链接&#xff1a;https://pan.quark.cn/s/cd17c05c4f33

安卓工控主板在轨道交通中的应用特点

安卓工控主板在轨道交通中的应用特点主要体现在以下几个方面&#xff1a; 一、高效的数据处理与通信能力 强大的处理能力&#xff1a;安卓工控主板通常搭载高性能的处理器&#xff0c;如某些型号可能搭载飞腾D2000八核CPU等&#xff0c;这些处理器能够高效处理轨道交通系统中…

C语言学习——用指针处理链表

目录 11.7用指针处理链表 链表概述 简单链表 处理动态链表所需的函数 malloc函数 calloc函数 free函数 建立动态链表 输出链表 对链表的删除操作 对链表的插入操作 对链表的综合操作 11.7用指针处理链表 链表概述 链表是一种常见的数据结构。它是动态地进行存储分…

【架构设计】-- aarch(ARM) and X86

1、aarch(ARM) 架构 &#xff08;1&#xff09;操作系统支持&#xff1a;早期为 32 位操作系统&#xff0c;目前大部分都是 64 位操作系统 &#xff08;2&#xff09;全称&#xff1a;Advanced RISC Machine&#xff0c;由英国ARM Holdings plc公司开发 这种架构主要⽤于智能…

chatglm3-6b下载时,需要下载哪些文件

在huggingface或modelscope上下载chatglm3-6b时&#xff0c;会发现有两种可执行文件&#xff0c;一种是.bin&#xff0c;一种是.safetensors&#xff0c;在使用的时候你如果直接用git命令git clone https://www.modelscope.cn/ZhipuAI/chatglm3-6b.git直接下载&#xff0c;你会…

【中仕公考怎么样】事业编ABCDE类对应的专业

事业编考试分为ABCDE五个类别&#xff0c;对应的专业分别是&#xff1a; 综合应用能力(A类)&#xff1a; 招聘专业&#xff1a;汉语言与文秘类、法律类、新闻传播类、治安学、治安管理、社会工作、老年服务、青少年服务、思想政治教育、安全工程、公共事业管理、行政管理、人力…

前端打字效果

页面效果链接&#xff0c;点击查看https://live.csdn.net/v/419208?spm1001.2014.3001.5501 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, …

图像处理之:Video Processing Subsystem(一)

免责声明&#xff1a; 本文所提供的信息和内容仅供参考。作者对本文内容的准确性、完整性、及时性或适用性不作任何明示或暗示的保证。在任何情况下&#xff0c;作者不对因使用本文内容而导致的任何直接或间接损失承担责任&#xff0c;包括但不限于数据丢失、业务中断或其他经济…

deque容器的所有操作

1.deque原理 2.deque构造函数 只读迭代器这么写&#xff1a; 3.deque赋值操作 4.deque大小操作 5.deque插入和删除操作 6.deque数据存取 7.deque排序

Linux阿里云服务器,利用docker安装EMQX

第一步&#xff0c;给云服务器docker进行加速 阿里云搜索“镜像加速器”&#xff0c;找到下面这个菜单&#xff0c;点进去 然后找到镜像工具下的镜像加速器 把这个加速器地址复制 然后在自己的云服务器中&#xff0c;找到docker的文件夹 点击json配置文件 把地址修改为刚刚…

边坡监测预警摄像机

边坡是指山体或河岸等地表的斜坡部分&#xff0c;由于受到地质构造、气候变化等因素的影响&#xff0c;边坡可能存在塌方、滑坡等危险情况。为了及时监测和预警边坡的变化情况&#xff0c;可以使用边坡监测预警摄像机 。 边坡监测预警摄像机是一种结合了摄像技术和智能算法的设…

算法的学习笔记---按之字形顺序打印二叉树

&#x1f600;前言 在算法的学习中&#xff0c;二叉树是一种非常基础但又十分重要的数据结构。今天&#xff0c;我们将讨论一种特殊的二叉树遍历方法&#xff1a;之字形顺序打印。这个方法要求我们以“之”字形的顺序遍历并打印二叉树的节点值&#xff0c;也就是第一行从左到右…

开放式耳机别人能听到吗?现在开放式耳机用防漏音效果越来越好!

回答&#xff1a; 开放式耳机的通透的设计允许一部分声音泄露出来&#xff0c;因此站在您旁边的人确实有可能听到您耳机中的声音&#xff0c;尤其是当音量设置得比较高时。开放式耳机通常提供更为自然和宽敞的听感&#xff0c;但牺牲了一定的隔音效果和隐私性。如果您需要在公…

台球助教在线预约小程序源码开发:打造便捷高效的台球学习新体验

在当今快节奏的生活中&#xff0c;台球作为一项集休闲、竞技与社交于一体的运动&#xff0c;受到了越来越多人的喜爱。然而&#xff0c;对于初学者而言&#xff0c;想要快速提升技能&#xff0c;往往需要专业的指导和陪练。传统的台球教练预约方式往往存在信息不对称、预约流程…

Qt实现圆型控件的三种方法之子类化控件并重写paintEvent

前言 最近在研究绘制各种形状的控件&#xff0c;这里专门挑出圆形的控件进行记录&#xff0c;其它形状的也大差不差&#xff0c;会了圆形的之后其它的也类似。 正文 这里我挑出Label来进行举例。 子类化 QLabel 并重写 paintEvent 如果需要更复杂的自定义绘制&#xff0c;…

医疗器械维修技术——开启成功之门的钥匙

随着现代医疗科技的飞速发展&#xff0c;医疗器械的精密程度和复杂性与日俱增。这些高科技的医疗设备&#xff0c;不仅是医生诊断和治疗疾病的得力助手&#xff0c;更是患者重获健康的希望之光。然而&#xff0c;如同任何复杂的机器一样&#xff0c;医疗器械也难免会出现故障和…

DRF——视图类的继承关系功能梳理(APIView,GenericAPIView,GenericViewSet,五大mixin类,)

文章目录 视图APIViewGenericAPIView&#xff08;将数据库查询、序列化类的定义提取到类变量&#xff09;GenericViewSet&#xff08;继承ViewSetMixin和GenericAPIView&#xff09;五大类&#xff08;List,Create,Retrieve,Update,Destory&#xff09;ModelViewSet&#xff08…

【网络安全】15种常见网络攻击类型及防御措施_

随着攻击者效率和复杂性的提高&#xff0c;网络犯罪每年都在急剧增加。网络攻击的发生有多种不同的原因和多种不同的方式。但是&#xff0c;一个共同点是网络犯罪分子会寻求利用组织的安全策略、实践或技术中的漏洞。 什么是网络攻击&#xff1f; 网络攻击是指攻击者出于盗窃…