配置流程以监控网络流量

编辑

配置流程以监控网络流量

编辑

您可以配置 Packetbeat 以收集和报告网络流程的统计信息。流程是指在同一时间段内发送,并共享相同属性(例如相同的源地址和目标地址以及协议)的一组数据包。您可以使用此功能来分析网络上特定协议的网络流量。

对于每个流程,Packetbeat 会报告从源到目标发送的数据包数量和总字节数。每个流程事件还包含有关源主机和目标主机的信息,例如它们的 IP 地址。对于双向流程,Packetbeat 会报告反向流程的统计信息。

Packetbeat 收集并报告包括传输层在内的统计信息。有关导出的数据的更多信息,请参阅流程事件字段

以下是在流程仪表板中可视化的流程事件示例

flows

要配置流程,请使用 packetbeat.flows 选项在 packetbeat.yml 配置文件中。默认情况下,流程已启用。如果配置文件中缺少此部分,则禁用网络流程。

packetbeat.flows:
  timeout: 30s
  period: 10s

以下是 Packetbeat 发送的流程信息示例。有关每个字段的描述,请参阅流程事件字段

{
  "@timestamp": "2018-11-15T14:41:24.000Z",
  "agent": {
    "hostname": "host.example.com",
    "name": "host.example.com",
    "version": "8.17.0"
  },
  "destination": {
    "bytes": 460,
    "ip": "198.51.100.2",
    "mac": "06-05-04-03-02-01",
    "packets": 2,
    "port": 80
  },
  "event": {
    "dataset": "flow",
    "duration": 3000000000,
    "end": "2018-11-15T14:41:24.000Z",
    "start": "2018-11-15T14:41:21.000Z"
  },
  "flow": {
    "final": true, 
    "id": "FQQA/wz/Dv//////Fv8BAQEBAgMEBQYGBQQDAgGrAMsAcQPGM2QC9ZdQAA",
    "vlan": 171
  },
  "network": {
    "bytes": 470,
    "community_id": "1:t9T66/2c66NQyftAEsr4aMZv4Hc=",
    "packets": 3,
    "transport": "tcp",
    "type": "ipv4"
  },
  "source": {
    "bytes": 10,
    "ip": "203.0.113.3",
    "mac": "01-02-03-04-05-06",
    "packets": 1,
    "port": 38901
  }
}

Packetbeat 将 flow.final 标志设置为 false,以指示该事件包含有关其正在跟踪的流程的中间报告。当流程完成时,Packetbeat 会发送最后一个事件,其中 flow.final 设置为 true。如果要聚合流量总和,则需要过滤 final:true,或使用其他技术,以便只从每个流程获取最新的更新。您可以通过设置 period: -1s 来禁用中间报告。

配置选项

编辑

您可以在 packetbeat.yml 配置文件的 packetbeat.flows 部分中指定以下选项

enabled

编辑

如果设置为 true,则启用流程支持。设置为 false 以禁用网络流程支持,而无需删除或注释掉 flows 部分。默认值为 true。

timeout

编辑

超时配置流程的生命周期。如果在超时时间窗口内未收到任何流程的数据包,则该流程将被终止并报告。默认值为 30 秒。

period

编辑

配置报告间隔。所有流程都会在完全相同的时间点报告。可以通过将值设置为 -1 来禁用定期报告。如果禁用,流程仍会在超时后报告。默认值为 10 秒。

enable_delta_flow_reports

编辑

配置 network.bytes 和 network.packets 为增量值,而不是每个流程期间的累积总和。默认值为 false。

fields

编辑

您可以指定的用于向输出添加其他信息的可选字段。例如,您可以添加可用于过滤日志数据的字段。字段可以是标量值、数组、字典或它们的任何嵌套组合。默认情况下,您在此处指定的字段将分组在输出文档中的 fields 子字典下。要将自定义字段存储为顶级字段,请将 fields_under_root 选项设置为 true。如果在常规配置中声明了重复字段,则其值将被此处声明的值覆盖。

fields_under_root

编辑

如果此选项设置为 true,则自定义 字段将存储为输出文档中的顶级字段,而不是分组在 fields 子字典下。如果自定义字段名称与 Packetbeat 添加的其他字段名称冲突,则自定义字段将覆盖其他字段。

tags

编辑

将与协议事件一起发送的标签列表。此设置是可选的。

processors

编辑

要应用于协议生成的数据的处理器列表。

有关在配置中指定处理器的信息,请参阅处理器

keep_null

编辑

如果此选项设置为 true,则具有 null 值的字段将发布在输出文档中。默认情况下,keep_null 设置为 false

index

编辑

覆盖发布流程事件的索引。