使用 Amazon CloudWatch 进行监控 - Amazon WAF、Amazon Firewall Manager 和 Amazon Shield Advanced
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

使用 Amazon CloudWatch 进行监控

您可以使用 Amazon CloudWatch 监控 Web 请求以及 Web ACL 和规则,此工具可从Amazon WAF和Amazon Shield Advanced转换为易读的近乎实时的指标。您可以使用 Amazon CloudWatch 中的统计数据,了解您的 Web 应用程序或服务的执行情况。有关更多信息,请参阅 。什么是 CloudWatch中的Amazon CloudWatch 用户指南

注意

没有为 Firewall Manager 启用 CloudWatch 指标和警报。

创建 Amazon CloudWatch 警报

您可以创建 Amazon CloudWatch 警报,并在警报改变状态时发送 Amazon SNS 消息。警报会监控某个指标在一定时间段 (由您指定) 的变化情况,并根据相对于指定阈值的指标值每隔若干个时间段执行一项或多项操作。操作是一个发送到 Amazon SNS 主题或 Auto Scaling 策略的通知。警报只会调用操作进行持续的状态变更。CloudWatch 警报将不会调用操作,因为这些操作处于特定状态,该状态必须改变并在指定数量的时间段内一直保持。

Amazon WAF 和 Amazon Shield Advanced 的指标与维度

您可以按照以下步骤查看 Amazon WAF 和 Amazon Shield Advanced 的指标。

注意

没有为启用 Amazon CloudWatch 指标和警报Amazon Firewall Manager。

使用 CloudWatch 控制台查看指标

指标的分组首先依据服务命名空间,然后依据每个命名空间内的各种维度组合。

  1. 通过以下网址打开 CloudWatch 控制台:https://console.aws.amazon.com/cloudwatch/

  2. 如果需要,可以更改区域。从导航栏中,选择您的 Amazon 资源所在的区域。有关更多信息,请参阅 。Amazon服务终端节点

    查看Amazon WAF指标,您必须选择美国东部(弗吉尼亚北部)区域。

  3. 在导航窗格中,选择指标

  4. All metrics 选项卡上,选择相应的服务。

使用Amazon CLI 查看指标

  • 对于 AWS/WAFV2,在命令提示符处使用以下命令:

    aws cloudwatch list-metrics --namespace "AWS/WAFV2"

    对于高级 Shield,在命令提示符处使用以下命令:

    aws cloudwatch list-metrics --namespace "AWS/DDoSProtection"

Amazon WAF 指标和维度

这些区域有:WAF命名空间包括以下指标和维度。

Web ACL、规则组和规则度量
指标 描述

AllowedRequests

允许的 Web 请求数。

报告标准:有非零值。

有效统计数据:总计

BlockedRequests

阻止的 Web 请求数。

报告标准:有非零值。

有效统计数据:总计

CountedRequests

计数的 Web 请求数。

报告标准:有非零值。

已计数的 Web 请求是至少匹配了一个规则的请求。请求计数通常用于测试。

有效统计数据:总计

PassedRequests

传递的请求数。这仅用于通过规则组评估而不匹配任何规则组规则的请求。

报告标准:有非零值。

传递的请求是与规则组中的任何规则不匹配的请求。

有效统计数据:总计

Web ACL、规则组和规则维
维度 描述

Region

对于除 Amazon CloudFront 分配之外的所有受保护的资源类型都必需。

Rule

下列情况之一:

  • Rule 的指标名称。

  • ALL,表示 WebACL 或 RuleGroup 中的所有规则。

  • Default_Action(仅当与 WebACL 维度组合时),表示分配给不符合与允许或阻止操作相关的任何规则的任何请求的操作。

RuleGroup

RuleGroup 的指标名称。

WebACL

WebACL 的指标名称。

标签和Amazon WAF自动程序控制指标
指标 描述

AllowedRequests

通过具有允许操作设置的规则应用于 Web 请求的标签数。

报告标准:有非零值。

有效统计数据:总计

BlockedRequests

通过具有阻止操作设置的规则应用于 Web 请求的标签数。

报告标准:有非零值。

有效统计数据:总计

CountedRequests

根据具有计数操作设置的规则应用于 Web 请求的标签数。

报告标准:有非零值。

有效统计数据:总计

标签和Amazon WAF自动程序控制维度
维度 描述

Region

对于除 Amazon CloudFront 分配之外的所有受保护的资源类型都必需。

WebACL

WebACL 的指标名称。

RuleGroup

RuleGroup 的指标名称。用于指标CountedRequests

LabelNamespace

指定匹配规则的 Web ACL 或规则组的命名空间前缀。用于指标AllowedRequestsBlockedRequests

Label

通过匹配规则应用于 Web 请求的标签。用于指标AllowedRequestsBlockedRequests
免费机器人可见性指标
指标 描述

SampleAllowedRequests

允许执行操作的抽样请求的百分比。

报告标准:有非零值。

有效统计数据:总计

SampleBlockedRequests

具有阻止操作的采样请求的百分比。

报告标准:有非零值。

有效统计数据:总计

免费机器人可见性维
维度 描述

Region

对于除 Amazon CloudFront 分配之外的所有受保护的资源类型都必需。

WebACL

WebACL 的指标名称。

BotCategory

检测到的自动程序类别的度量名称,基于 Web 请求标签。

Amazon Shield Advanced 指标和警报

此部分会讨论 Amazon Shield Advanced 提供的指标和警报。

Amazon Shield Advanced 指标

Shield 高级版向 Amazon CloudWatch 报告指标,并在Amazon资源在 DDoS 事件期间的频率高于没有事件发生时的频率。Shield Advanced 在事件期间每分钟报告一次指标,然后在事件结束后立即报告一次指标。在没有事件的情况下,Shield Advanced 会每天报告一次指定给资源的指标。此定期报告使指标保持活动状态并可用于自定义 CloudWatch 警报。

对于 Amazon CloudFront 和 Amazon Route53 的全球服务,指标将在美国东部(弗吉尼亚北部)区域报告。

检测指标

高级 Shield 提供以下检测指标和维度。

检测指标
指标 描述
DDoSDetected 指示特定 Amazon 资源名称 (ARN) 的 DDoS 事件是否正在进行中。

该指标在事件期间的值为 1,否则值为 0。

DDoSAttackBitsPerSecond 特定 Amazon 资源名称 (ARN) 的 DDoS 事件期间观察到的位数。该指标仅适用于第 3 层和第 4 层 DDoS 事件。

该指标在事件期间具有非零值,否则值为 0。

单位:Bits

DDoSAttackPacketsPerSecond 特定 Amazon 资源名称 (ARN) 的 DDoS 事件期间观察到的数据包数。该指标仅适用于第 3 层和第 4 层 DDoS 事件。

该指标在事件期间具有非零值,否则值为 0。

单位:数据包

DDoSAttackRequestsPerSecond 特定 Amazon 资源名称 (ARN) 的 DDoS 事件期间观察到的请求数。该指标仅适用于第 7 层 DDoS 事件。仅针对最重要的第 7 层事件报告指标。

该指标在事件期间具有非零值,否则值为 0。

单位:请求

Shield Advanced 发布DDoSDetected指标,没有其他维度。其余的检测指标包括AttackVector与攻击类型相对应的维度,从以下列表中:

  • ACKFlood

  • ChargenReflection

  • DNSReflection

  • GenericUDPReflection

  • MemcachedReflection

  • MSSQLReflection

  • NetBIOSReflection

  • NTPReflection

  • PortMapper

  • RequestFlood

  • RIPReflection

  • SNMPReflection

  • SSDPReflection

  • SYNFlood

  • UDPFragment

  • UDPTraffic

  • UDPReflection

缓解指标

Shield 高级提供以下缓解指标和维度。

缓解指标
指标 描述
VolumePacketsPerSecond 为响应检测到的事件而部署的缓解措施每秒丢弃或传递的数据包数。

单位:数据包

缓解方面
维度 描述

ResourceArn

AMazon 资源名称 (ARN)

MitigationAction

应用缓解的结果。可能的值为 PassDrop

排名靠前的贡献者

Shield 高级提供以下顶级贡献者指标和维度。

排名靠前的贡献者
指标 描述
VolumePacketsPerSecond 顶级贡献者每秒的数据包数。

单位:数据包

VolumeBitsPerSecond 顶级贡献者每秒的位数。

单位:位

Shield Advanced 按照表征事件贡献者特征的维度组合发布顶级贡献者指标。您可以将以下任意维度组合用于任意排名指标:

  • ResourceArn, Protocol

  • ResourceArn, Protocol, SourcePort

  • ResourceArn, Protocol, DestinationPort

  • ResourceArn, Protocol, SourceIp

  • ResourceArn, Protocol, SourceAsn

  • ResourceArn, TcpFlags

排名靠前的贡献者
维度 描述

ResourceArn

Amazon 资源名称 (ARN)。

Protocol

IP 协议名称,TCP或者UDP

SourcePort

源 TCP 或 UDP 端口。

DestinationPort

目标 TCP 或 UDP 端口。

SourceIp

Source IP 地址。

SourceAsn

源自治系统编号 (ASN)。

TcpFlags

TCP 数据包中存在的标志组合,由aDASH (-)。受监控的标志是ACKFINRSTSYN。此维度值始终按字母顺序显示。例如:ACK-FIN-RST-SYNACK-SYNFIN-RST

创建 Amazon Shield Advanced 警报

您可以使用Amazon Shield AdvancedAmazon CloudWatch 警报的指标。CloudWatch 可根据您定义的规则发送通知或者对您所监控的资源自动进行更改。

有关创建 CloudWatch 警报的详细说明,请参阅Amazon CloudWatch 用户指南。在 CloudWatch 控制台中创建警报时,要使用 Shield 高级指标,在选择创建警报中,选择AWSDO 保护指标。然后,您可以根据特定的流量创建警报,也可以在指标为非零时触发警报。第二个选项会针对 Shield Edvanced 观察到的任何潜在攻击触发警报。

注意

这些区域有:AWSDO 保护指标仅适用于 Shield 高级客户。

有关更多信息,请参阅 。什么是 CloudWatch中的Amazon CloudWatch 用户指南

Amazon Firewall Manager 通知

Amazon Firewall Manager没有记录指标,因此您无法专门为 Firewall Manager 创建 Amazon CloudWatch 警报。但是,您可以配置 Amazon SNS 通知以提醒您有潜在攻击。要在 Firewall Manager 中创建 Amazon SNS 通知,请参阅在 Firewall Manager(控制台)中创建 Amazon SNS 主题