GoFlow2

编辑

版本

0.1.1 [beta] 此功能为测试版,可能会发生变化。设计和代码不如官方 GA 功能成熟,按原样提供,不提供任何保证。测试版功能不受官方 GA 功能的支持 SLA 约束。 (查看全部)

兼容的 Kibana 版本

8.11.0 或更高版本

支持的无服务器项目类型
这是什么?

安全性
可观测性

订阅级别
这是什么?

基本

支持级别
这是什么?

社区

GoFlow2 集成允许您导入 goflow2 生成的日志。

此集成中唯一支持的 goflow2 协议/规范化是 sFlow。尚未支持 IPFIX 和/或 NetFlow 的规范化。

数据流

编辑

sflow

编辑

Goflow2 sFlow 集成收集一种类型的数据流:日志

示例事件
编辑
示例

sflow 的示例事件如下所示

{
    "@timestamp": "2024-07-31T00:00:59.314Z",
    "destination": {
        "address": [
            "216.160.83.58"
        ],
        "as": {
            "number": 209
        },
        "geo": {
            "city_name": "Milton",
            "continent_name": "North America",
            "country_iso_code": "US",
            "country_name": "United States",
            "location": {
                "lat": 47.2513,
                "lon": -122.3149
            },
            "region_iso_code": "US-WA",
            "region_name": "Washington"
        },
        "ip": "216.160.83.58",
        "port": 443
    },
    "ecs": {
        "version": "8.11.0"
    },
    "event": {
        "action": "SFLOW_5",
        "category": [
            "network"
        ],
        "kind": "event",
        "original": "{\"type\":\"SFLOW_5\",\"time_flow_start_ns\":1722384059314899647,\"sampler_address\":\"67.43.156.1\",\"sequence_num\":44555,\"in_if\":563,\"out_if\":573,\"src_addr\":\"216.160.83.57\",\"dst_addr\":\"216.160.83.58\",\"etype\":\"IPv4\",\"proto\":\"TCP\",\"src_port\":10876,\"dst_port\":443,\"src_vlan\":1500,\"dst_vlan\":1500,\"sampling_rate\":1000,\"bytes\":70}",
        "timezone": "+00:00",
        "type": [
            "connection"
        ]
    },
    "network": {
        "bytes": 70000,
        "packets": 1000,
        "transport": "tcp",
        "type": "ipv4"
    },
    "observer": {
        "egress": {
            "interface": {
                "id": "573"
            },
            "vlan": {
                "id": "1500"
            }
        },
        "ingress": {
            "interface": {
                "id": "563"
            },
            "vlan": {
                "id": "1500"
            }
        },
        "ip": [
            "67.43.156.1"
        ]
    },
    "related": {
        "ip": [
            "216.160.83.57",
            "216.160.83.58"
        ]
    },
    "sflow": {
        "bytes": 70,
        "sample_rate": 1000,
        "sequence_num": 44555
    },
    "source": {
        "address": [
            "216.160.83.57"
        ],
        "as": {
            "number": 209
        },
        "geo": {
            "city_name": "Milton",
            "continent_name": "North America",
            "country_iso_code": "US",
            "country_name": "United States",
            "location": {
                "lat": 47.2513,
                "lon": -122.3149
            },
            "region_iso_code": "US-WA",
            "region_name": "Washington"
        },
        "ip": "216.160.83.57",
        "port": 10876
    },
    "tags": [
        "preserve_original_event",
        "forwarded",
        "sflow"
    ]
}

要求

编辑

您需要 Elasticsearch 来存储和搜索您的数据,以及 Kibana 来可视化和管理它。您可以使用我们托管在 Elastic Cloud 上的 Elasticsearch 服务(推荐),或在您自己的硬件上自行管理 Elastic Stack。

您需要 GoFlow2 来创建 sFlow 流量的日志文件。 https://github.com/netsampler/goflow2

设置

编辑
  • 安装集成并部署 elastic agent
  • 安装 GoFlow2 进行 sFlow 日志记录

请使用以下 GoFlow2 mapping.yaml 文件

# File: /etc/goflow2/mapping.yaml
formatter:
    fields: # list of fields to format in JSON
        - type
        - time_flow_start_ns
        - sampler_address
        - sequence_num
        - in_if
        - out_if
        - src_addr
        - dst_addr
        - etype
        - proto
        - src_port
        - dst_port
        - src_vlan
        - dst_vlan
        - sampling_rate
        - bytes

输出的 sflow 传输文件必须存储在目录 /var/log/sflow/goflow2/

运行 GoFlow2 处理 sflow 流量的完整命令

goflow2 -format json -listen "sflow://:6343" -mapping /etc/goflow2/mapping.yaml -transport.file /var/log/sflow/goflow2/goflow2.log

字段

编辑
导出的字段
字段 描述 类型

@timestamp

事件时间戳。

日期

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

input.type

输入类型

关键字

log.file.device_id

此事件来源的日志文件的设备 ID。

关键字

log.file.inode

此事件来源的日志文件的 inode。

关键字

log.offset

日志偏移量

长整型

sflow.bytes

示例数据包的原始大小(以字节为单位)。

长整型

sflow.sample_rate

采样率。

长整型

sflow.sequence_num

流序列号。

长整型

变更日志

编辑
变更日志
版本 详细信息 Kibana 版本

0.1.1

Bug 修复 (查看拉取请求)
在引用摄取管道中的变量时使用三重大括号 Mustache 模板。

0.1.0

增强 (查看拉取请求)
该软件包的初始版本