查询 Amazon Network Firewall 日志 - Amazon Athena
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

查询 Amazon Network Firewall 日志

Amazon Network Firewall是一种托管服务,您可以使用它为您的 Amazon Virtual Private Cloud 实例部署必要的网络保护。Amazon Network Firewall以及Amazon Firewall Manager,以便您可以基于Amazon Network Firewall规则,然后在您的 VPC 和账户中集中应用这些策略。有关 Amazon Network Firewall 的更多信息,请参阅 Amazon Network Firewall

您可以配置Amazon Network Firewall日志记录您转发到防火墙有状态规则引擎的流量。日志记录为您提供有关网络流量的详细信息,包括有状态引擎接收数据包的时间、有关数据包的详细信息以及针对数据包采取的任何有状态规则操作。日志将发布到您配置的日志目标,您可以在其中检索和查看它们。有关更多信息,请参阅 。记录网络流量Amazon Network Firewall中的Amazon Network Firewall开发人员指南.

为 Network Firewall 日志创建表

  1. 将以下 DDL 语句复制并粘贴到 Athena 查询编辑器中。您可能需要更新语句以包含日志的最新版本的列。有关更多信息,请参阅 。防火墙日志的内容中的Amazon Network Firewall开发人员指南.

    注意

    由于END是一个保留关键字在 Athena 中,声明使用finish:stringINSTEAD OFend:string.

    CREATE EXTERNAL TABLE anf_logs( firewall_name string, availability_zone string, event_timestamp bigint, event struct< timestamp:string, flow_id:bigint, event_type:string, src_ip:string, src_port:int, dest_ip:string, dest_port:int, proto:string, app_proto:string, netflow:struct< pkts:int, bytes:int, start:string, finish:string, age:int, min_ttl:int, max_ttl:int > > ) ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe' WITH SERDEPROPERTIES ( 'paths'='availability_zone,event,event_timestamp,firewall_name' ) STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3://bucket_name/AWSLogs/'
  2. 修改LOCATIONAmazon S3 存储桶用于指定 Network Firewall 日志的目标。

  3. 在 Athena 控制台中运行查询。在查询完成后,Athena 会注册anf_logs表,使其中的数据可供发出查询。

Network Firewall 示例查询

下面的查询显示了由Amazon Network Firewall具有唯一的源 IP 对和目标 IP 对。

SELECT COUNT(*) AS count, event.src_ip, event.src_port, event.dest_ip, event.dest_port FROM anf_logs GROUP BY event.src_ip, event.dest_ip ORDER BY count DESC LIMIT 100