解析 AWS VPC 流日志编辑

parse_aws_vpc_flow_log 处理器解码 AWS VPC 流日志消息。

示例编辑

以下示例配置使用默认的版本 2 VPC 流日志格式解码 message 字段。

processors:
  - parse_aws_vpc_flow_log:
      format: version account-id interface-id srcaddr dstaddr srcport dstport protocol packets bytes start end action log-status
      field: message

配置设置编辑

Elastic Agent 处理器在摄取管道之前执行,这意味着您的处理器配置不能引用由摄取管道或 Logstash 创建的字段。有关更多限制,请参阅 使用处理器的局限性是什么?

名称 必需 默认值 描述

field

message

包含 VPC 流日志消息的源字段。

target_field

aws.vpcflow

VPC 流日志对象的目標字段。这仅适用于原始 VPC 流日志字段。ECS 字段将写入标准位置。

format

VPC 流日志格式。这支持版本 2 到 5 的 VPC 流日志字段。它将接受字符串或字符串列表。每个格式必须具有唯一数量的字段,以使其能够与流日志消息匹配。

mode

ecs

控制生成哪些字段。可用的选项是

  • original:生成格式字符串中指定的字段。
  • ecs:将原始字段映射到 ECS 并删除映射到 ECS 的原始字段。
  • ecs_and_original:将原始字段映射到 ECS 并保留所有原始字段。

要了解更多信息,请参阅 模式

ignore_missing

false

是否忽略缺少的源字段。

ignore_failure

false

是否忽略解析和转换流日志消息时的错误。

id

用于调试目的的实例 ID。

模式编辑

本节提供有关可用模式的更多信息。

原始编辑

此模式返回在 format 字符串中找到的相同字段。它将删除其值为连字符 (-) 的任何字段。它将字符串转换为适当的数据类型。这些是已知的字段名称及其数据类型。

AWS VPC 流字段名称在 Elastic Agent 中使用下划线而不是连字符。您可以使用包含两者之一的字段名称来配置 format

VPC 流日志字段 数据类型

account_id

string

action

string

az_id

string

bytes

long

dstaddr

ip

dstport

integer

end

timestamp

flow_direction

string

instance_id

string

interface_id

string

log_status

string

packets

long

pkt_dst_aws_service

string

pkt_dstaddr

ip

pkt_src_aws_service

string

pkt_srcaddr

ip

protocol

integer

region

string

srcaddr

ip

srcport

integer

start

timestamp

sublocation_id

string

sublocation_type

string

subnet_id

string

tcp_flags

integer

tcp_flags_array*

integer

traffic_path

integer

type

string

version

integer

vpc_id

string

ECS编辑

此模式将原始 VPC 流日志字段映射到其关联的 Elastic Common Schema (ECS) 字段。它删除了映射到 ECS 的原始字段,以减少重复。这些是字段关联。可能应用一些转换来推导出 ECS 字段。

VPC 流日志字段 ECS 字段

account_id

cloud.account.id

action

event.outcome

action

event.action

action

event.type

az_id

cloud.availability_zone

bytes

network.bytes

bytes

source.bytes

dstaddr

destination.address

dstaddr

destination.ip

dstport

destination.port

end

@timestamp

end

event.end

flow_direction

network.direction

instance_id

cloud.instance.id

packets

network.packets

packets

source.packets

protocol

network.iana_number

protocol

network.transport

region

cloud.region

srcaddr

network.type

srcaddr

source.address

srcaddr

source.ip

srcport

source.port

start

event.start

ECS 和原始编辑

此模式将字段映射到 ECS 并保留所有原始字段。以下是使用 ecs_and_orignal 模式生成的示例文档。

{
  "@timestamp": "2021-03-26T03:29:09Z",
  "aws": {
    "vpcflow": {
      "account_id": "64111117617",
      "action": "REJECT",
      "az_id": "use1-az5",
      "bytes": 1,
      "dstaddr": "10.200.0.0",
      "dstport": 33004,
      "end": "2021-03-26T03:29:09Z",
      "flow_direction": "ingress",
      "instance_id": "i-0axxxxxx1ad77",
      "interface_id": "eni-069xxxxxb7a490",
      "log_status": "OK",
      "packets": 52,
      "pkt_dst_aws_service": "CLOUDFRONT",
      "pkt_dstaddr": "10.200.0.80",
      "pkt_src_aws_service": "AMAZON",
      "pkt_srcaddr": "89.160.20.156",
      "protocol": 17,
      "region": "us-east-1",
      "srcaddr": "89.160.20.156",
      "srcport": 50041,
      "start": "2021-03-26T03:28:12Z",
      "sublocation_id": "fake-id",
      "sublocation_type": "wavelength",
      "subnet_id": "subnet-02d645xxxxxxxdbc0",
      "tcp_flags": 1,
      "tcp_flags_array": [
        "fin"
      ],
      "traffic_path": 1,
      "type": "IPv4",
      "version": 5,
      "vpc_id": "vpc-09676f97xxxxxb8a7"
    }
  },
  "cloud": {
    "account": {
      "id": "64111117617"
    },
    "availability_zone": "use1-az5",
    "instance": {
      "id": "i-0axxxxxx1ad77"
    },
    "region": "us-east-1"
  },
  "destination": {
    "address": "10.200.0.0",
    "ip": "10.200.0.0",
    "port": 33004
  },
  "event": {
    "action": "reject",
    "end": "2021-03-26T03:29:09Z",
    "outcome": "failure",
    "start": "2021-03-26T03:28:12Z",
    "type": [
      "connection",
      "denied"
    ]
  },
  "message": "5 64111117617 eni-069xxxxxb7a490 89.160.20.156 10.200.0.0 50041 33004 17 52 1 1616729292 1616729349 REJECT OK vpc-09676f97xxxxxb8a7 subnet-02d645xxxxxxxdbc0 i-0axxxxxx1ad77 1 IPv4 89.160.20.156 10.200.0.80 us-east-1 use1-az5 wavelength fake-id AMAZON CLOUDFRONT ingress 1",
  "network": {
    "bytes": 1,
    "direction": "ingress",
    "iana_number": "17",
    "packets": 52,
    "transport": "udp",
    "type": "ipv4"
  },
  "related": {
    "ip": [
      "89.160.20.156",
      "10.200.0.0",
      "10.200.0.80"
    ]
  },
  "source": {
    "address": "89.160.20.156",
    "bytes": 1,
    "ip": "89.160.20.156",
    "packets": 52,
    "port": 50041
  }
}