

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

# 日志解析器选项
<a name="log-parser-options"></a>

如[架构概述中所述](architecture-overview.md)，有三个选项可以处理 HTTP 泛洪以及扫描器和探测器保护。以下各节将更详细地解释这些选项。

## AWS WAF 基于费率的规则
<a name="aws-waf-rate-based-rule"></a>

基于速率的规则可用于 HTTP 洪水防护。默认情况下，基于速率的规则会根据请求 IP 地址对请求进行聚合和速率限制。此解决方案允许您指定客户端 IP 在随后、持续更新的五分钟内允许的 Web 请求数量。如果某个 IP 地址违反了配置的配额，AWS WAF 会阻止新的请求，直到请求速率低于配置的配额。

如果请求配额为每五分钟超过 2,000 个请求，并且您无需进行自定义，我们建议您选择基于速率的规则选项。例如，在计算请求数时不考虑静态资源访问权限。

您可以进一步配置规则，使其使用其他各种聚合键和密钥组合。有关更多信息，请参阅[聚合选项和密钥](https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-type-rate-based-aggregation-options.html)。

## 亚马逊 Athena 日志解析器
<a name="amazon-athena-log-parser"></a>

**HTTP Flood Protec** tion 和 **Scanner & Prob** e Prot **ec** tion 模板参数都提供 Athena 日志解析器选项。激活后，预 CloudFormation 置 Athena 查询和计划的 Lambda 函数，负责编排 Athena 的运行、处理结果输出和更新 AWS WAF。此 Lambda 函数由配置为每五分钟运行一次 CloudWatch 的事件调用。可以使用 **Athena 查询运行时间计划**参数对其进行配置。

如果您无法使用基于 AWS WAF 费率的规则，并且熟悉 SQL 来实现自定义，我们建议您选择此选项。有关如何更改默认查询的更多信息，请参阅[查看 Amazon Athena](view-amazon-athena-queries.md) 查询。

HTTP 洪水防护基于 AWS WAF 访问日志处理并使用 WAF 日志文件。与 ALB 日志的传输时间相比，WAF 访问日志类型的延迟时间更短，您可以使用它来更快地识别 HTTP 洪水来源。 CloudFront 但是，您必须在 “**激活扫描仪和探测器保护**” 模板参数中选择 CloudFront 或 ALB 日志类型才能接收响应状态代码。

**注意**  
如果恶意机器人绕过蜜罐直接与 ALB 交互，则系统会通过日志分析检测恶意行为 CloudFront，除非 HTTP 洪水防护和扫描器和探测器保护都未使用 Lambda 日志解析器。

## AWS Lambda 日志解析器
<a name="aws-lambda-log-parser"></a>

**HTTP 洪水防护**和**扫描器和探测器保护**模板参数提供了 **AWS Lambda 日志解析**器选项。仅当基于速率的 **AWS WAF 规则和** Amazon **Athena 日志解析器选项不可用时，才使用 Lambda** 日志解析器。此选项的一个已知局限性是，信息是在正在处理的文件上下文中处理的。例如，一个 IP 生成的请求或错误可能超过定义的配额，但是由于这些信息被拆分为不同的文件，因此每个文件存储的数据不足以超过配额。

**注意**  
此外，如果恶意机器人绕过蜜罐直接与 ALB 或交互 CloudFront，则检测依赖于所选的日志解析器选项来有效识别和阻止恶意活动。