NetFlow 模块

编辑

这是一个用于通过 UDP 接收 NetFlow 和 IPFIX 流记录的模块。此输入支持 NetFlow 版本 1、5、6、7、8 和 9 以及 IPFIX。对于低于 9 的 NetFlow 版本,字段会自动映射到 NetFlow v9。

此模块封装了 netflow 输入,通过使用 Elasticsearch 摄取管道来使用 IP 端点的地理位置信息丰富流记录。

阅读 快速入门,了解如何配置和运行模块。

配置模块

编辑

您可以通过在 modules.d/netflow.yml 文件中指定 变量设置 或覆盖命令行中的设置来进一步优化 netflow 模块的行为。

您必须在模块中启用至少一个文件集。文件集默认情况下处于禁用状态。

变量设置

编辑

每个文件集都有单独的变量设置来配置模块的行为。如果您未指定变量设置,则 netflow 模块将使用默认值。

对于高级用例,您还可以覆盖输入设置。请参阅 覆盖输入设置

在命令行中指定设置时,请记住在设置前添加模块名称前缀,例如 netflow.log.var.paths 而不是 log.var.paths

log 文件集设置

编辑

文件集默认配置为侦听 localhost:2055 上的 UDP 流量。对于大多数用例,您需要设置 netflow_host 变量以允许输入绑定到所有接口,以便它可以接收来自网络设备的流量。

- module: netflow
  log:
    enabled: true
    var:
      netflow_host: 0.0.0.0
      netflow_port: 2055
var.netflow_host
要绑定的地址。默认为 localhost
var.netflow_port
要侦听的端口。默认为 2055
var.max_message_size
通过 UDP 接收的消息的最大大小。默认为 10KiB
var.read_buffer
UDP 套接字上的读取缓冲区大小。
var.timeout
套接字操作的读取和写入超时。
var.expiration_timeout
空闲会话或未使用模板过期之前的时间。仅适用于 v9 和 IPFIX 协议。值为零表示禁用过期。
var.queue_size
可以排队等待处理的数据包的最大数量。在处理偶尔出现的流量突发时,使用此设置可避免数据包丢失。
var.custom_definitions
字段定义 YAML 文件的路径列表。这些允许使用供应商扩展更新 NetFlow/IPFIX 字段并覆盖现有字段。有关详细信息,请参阅 netflow 输入
var.detect_sequence_reset
控制 Filebeat 是否应监控 Netflow 数据包中的序列号以检测导出进程重置的标志。有关详细信息,请参阅 netflow 输入
var.internal_networks
描述您认为是内部的 IP 地址的 CIDR 范围列表。这用于确定 source.localitydestination.localityflow.locality 的值。这些值可以是 CIDR 值,也可以是 network 条件支持的命名范围之一。默认值为 [private],它将 RFC 1918 (IPv4) 和 RFC 4193 (IPv6) 地址归类为内部地址。
var.tags
要包含在事件中的标签列表。包含 forwarded 表示事件并非源自此主机,并导致 host.name 不添加到事件中。默认为 [forwarded]

字段

编辑

有关模块中每个字段的描述,请参阅 导出字段 部分。