NetFlow 模块
编辑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.locality
、destination.locality
和flow.locality
的值。这些值可以是 CIDR 值,也可以是network
条件支持的命名范围之一。默认值为[private]
,它将 RFC 1918 (IPv4) 和 RFC 4193 (IPv6) 地址分类为内部地址。 -
var.tags
- 要包含在事件中的标记列表。包括
forwarded
表示事件并非源自此主机,并导致host.name
不会添加到事件中。默认为[forwarded]
。
字段编辑
有关模块中每个字段的说明,请参阅导出字段部分。