Route 53 Resolver DNS Firewall 的工作原理 - Amazon Route 53

Route 53 Resolver DNS Firewall 的工作原理

Route 53 Resolver DNS Firewall 允许您控制对站点的访问,并阻止 DNS 查询通过 Route 53 Resolver 从 VPC 发出的 DNS 查询的 DNS 级威胁。使用 DNS Firewall,您可以在与您的 VPC 关联的规则组中定义域名过滤规则。您可以指定要允许或阻挡的域名列表,也可以自定义对阻挡的 DNS 查询的响应。您还可以微调域列表,以允许某些查询类型(例如 MX-Records)通过。

DNS Firewall 仅筛选域名。它不会将该名称解析为要阻止的 IP 地址。此外,DNS Firewall 筛选 DNS 流量,但不筛选其它应用层协议,如 HTTPS、SSH、TLS、FTP 等。

Route 53 Resolver DNS Firewall 组件和设置

您可以使用以下中央组件和设置管理 DNS Firewall。

DNS Firewall 规则组

DNS Firewall 规则组是用于筛选 DNS 查询的 DNS Firewall 规则的已命名、可重复使用的集合。您可以使用筛选规则填充规则组,然后将规则组与一个或多个 VPC 关联。当您关联规则组与 VPC 时,您可以为 VPC 启用 DNS Firewall 过滤。然后,当 Resolver 收到与其关联的规则组的 VPC 的 DNS 查询时,Resolver 将该查询传递给 DNS Firewall 进行过滤。

如果您将多个规则组与单个 VPC 关联,则通过每个关联中的优先级设置来指明它们的处理顺序。DNS Firewall 从最低数值优先级设置向上处理 VPC 的规则组。

有关更多信息,请参阅 DNS Firewall 规则组和规则

DNS Firewall 规则

为 DNS Firewall 规则组中的 DNS 查询定义筛选规则。每个规则都指定一个域列表和要对域与列表中的域规范匹配的 DNS 查询执行的操作。您可以允许、阻止或提醒匹配的查询或列表中域的查询类型,例如,您可以阻止或允许某个特定域或多个域的 MX 查询类型。您还可以为阻挡的查询定义自定义响应。

规则组中的每个规则都有一个在规则组中唯一的优先级设置。DNS Firewall 将从最低设置开始,按优先级顺序处理规则组中的规则。

DNS Firewall 规则仅存在于定义这些规则的规则组上下文中。您不能独立于规则组重复使用或引用规则。

有关更多信息,请参阅 DNS Firewall 规则组和规则

域列表

定义用于 DNS 筛选的已命名、可重复使用的域规范集合。规则组中的每个规则都需要单一的域列表。您可以选择指定要允许访问的域、要拒绝访问的域或两者的组合。您可以创建自己的域列表,也可以使用 AWS 为您管理的域列表。

有关更多信息,请参阅 Route 53 Resolver DNS Firewall 域列表

域重定向设置

通过域重定向设置,您可以配置 DNS Firewall 规则来检查 DNS 重定向链中的所有域(默认),例如 CNAME、DNAME 等,或者只检查第一个域并信任其余域。如果选择检查整个 DNS 重定向链,则必须将后续域添加到规则中设置为“ALLOW ”的域列表中。如果选择检查整个 DNS 重定向链,则必须将后续域添加到域列表中,并将其设置为需要规则采取的行动,即 ALLOW、BLOCK 或 ALERT。

有关更多信息,请参阅 DNS Firewall 中的规则设置

查询类型

通过查询类型设置,您可以配置 DNS Firewall 规则来筛选特定的 DNS 查询类型。如果未选择查询类型,则该规则应用于所有 DNS 查询类型。例如,您可能想要阻止特定域的所有查询类型,但允许 MX 记录。

有关更多信息,请参阅 DNS Firewall 中的规则设置

DNS Firewall 规则组与 VPC 之间的关联

使用 DNS Firewall 规则组为 VPC 定义保护,并为 VPC 启用 Resolver DNS Firewall 配置。

如果您将多个规则组与单个 VPC 关联,则可通过关联中的优先级设置来指明它们的处理顺序。DNS Firewall 从最低数值优先级设置向上处理 VPC 的规则组。

有关更多信息,请参阅 为您的 VPC 启用 Route 53 Resolver DNS Firewall 保护

VPC 的 Resolver DNS Firewall 配置

指定 Resolver 应如何在 VPC 级别处理 DNS Firewall 保护。只要您至少有一个与 VPC 关联的 DNS Firewall 规则组,此配置就会生效。

此配置指定当 DNS Firewall 无法筛选查询时 Route 53 Resolver 会如何处理查询。预设情况下,如果 Resolver 没有收到来自 DNS Firewall 的响应,则会失败导致关闭,并阻止查询。

有关更多信息,请参阅 DNS Firewall VPC 配置

监控 DNS Firewall 操作

您可以使用 Amazon CloudWatch 监控由 DNS Firewall 规则组筛选的 DNS 查询的数量。CloudWatch 可收集和处理原始数据,并将数据处理为便于读取的近乎实时的指标。

有关更多信息,请参阅 使用 Amazon CloudWatch 监控 Route 53 Resolver DNS Firewall 规则组

您可以使用 Amazon EventBridge,这是一项无服务器服务,其使用事件将应用程序组件连接在一起,以构建可扩展的事件驱动型应用程序。

有关更多信息,请参阅 使用 Amazon EventBridge 管理 Route 53 Resolver DNS Firewall 事件

Route 53 Resolver DNS Firewall 如何筛选 DNS 查询

当 DNS Firewall 规则组与 VPC 的 Route 53 Resolver 相关联时,以下流量将被防火墙筛选:

  • 源于该 VPC 内并通过 VPC DNS 传递的 DNS 查询。

  • 通过 Resolver 端点从本地部署资源传递到具有与其解析程序关联的 DNS Firewall 的同一 VPC 的 DNS 查询。

当 DNS Firewall 收到 DNS 查询时,它会使用您配置的规则组、规则和其它设置筛选查询,并将结果发送回 Resolver:

  • DNS Firewall 使用与 VPC 关联的规则组评估 DNS 查询,直到找到匹配项或用尽所有规则组。DNS Firewall 按照您在关联中设置的优先级顺序评估规则组,从最低的数字设置开始。有关更多信息,请参阅 DNS Firewall 规则组和规则为您的 VPC 启用 Route 53 Resolver DNS Firewall 保护

  • 在每个规则组中,DNS Firewall 根据每个规则的域列表评估 DNS 查询,直到找到匹配规则或用尽所有规则。DNS Firewall 从最低数值设置开始,按优先级顺序评估规则。有关更多信息,请参阅 DNS Firewall 规则组和规则

  • 当 DNS Firewall 找到与规则的域列表匹配项时,它将终止查询评估并使用结果响应 Resolver。如果操作是 alert,DNS Firewall 还会向已配置的 Resolver 日志发送提示。有关更多信息,请参阅 DNS Firewall 中的规则操作Route 53 Resolver DNS Firewall 域列表

  • 如果 DNS Firewall 在没有找到匹配项的情况下评估所有规则组,它会照常响应查询。

Resolver 根据 DNS Firewall 的响应路由查询。如果 DNS Firewall 无法响应,则 Resolver 应用 VPC 经过配置的 DNS Firewall 故障模式。有关更多信息,请参阅 DNS Firewall VPC 配置

使用 Route 53 Resolver DNS Firewall 的概括步骤

要在您的 Amazon Virtual Private Cloud VPC 中实施 Route 53 Resolver DNS Firewall 筛选,请执行以下概括步骤。

  • 定义您的筛选方法和域列表 — 确定要如何筛选查询,确定需要的域规范,并定义用于评估查询的逻辑。例如,您可能希望允许除已知坏域列表中的查询之外的所有查询。或者您可能想要做相反的事情,即阻止所有出批准域列表以外的域,也就是所谓的围墙花园法。您可以创建和管理您自己的已批准或阻止域规范列表,也可以使用 AWS 为您管理的域列表。有关域列表的信息,请参阅 Route 53 Resolver DNS Firewall 域列表

  • 创建防火墙规则组 — 在 DNS Firewall 中,创建一个规则组来筛选 VPC 的 DNS 查询。您必须在要使用规则组的每个区域中创建规则组。您可能还希望将筛选行为分离到多个规则组中,以便在不同 VPC 的多个筛选方案中重复使用。有关规则组的信息,请参阅DNS Firewall 规则组和规则

  • 添加和配置规则 — 为您希望规则组提供的每个域列表和筛选行为添加规则到规则组。设置规则的优先级设置,以便它们在规则组中以正确的顺序进行处理,请为要首先评估的规则赋予最低的优先级。有关规则的信息,请参阅 DNS Firewall 规则组和规则

  • 将规则组关联到您的 VPC — 要开始使用您的 DNS Firewall 规则组,请将其与您的 VPC 关联。如果您要为 VPC 使用多个规则组,请设置每个关联的优先级,以便按正确的顺序处理规则组,请为您要首先评估的规则组提供最低的优先级。有关更多信息,请参阅 管理 VPC 与 Route 53 Resolver DNS Firewall 规则组之间的关联

  • (可选)更改 VPC 的防火墙配置 — 如果您希望 Route 53 Resolver 在 DNS Firewall 无法向查询发送响应时阻止查询,请在 Resolver 中更改 VPC 的 DNS Firewall 配置。有关更多信息,请参阅 DNS Firewall VPC 配置

在多个区域中使用 Route 53 Resolver DNS Firewall 规则组

Route 53 Resolver DNS Firewall 是区域性服务,因此您在一个 AWS 区域中创建的对象仅在该区域中可用。要在多个区域中使用同一个规则,您必须在各个区域中创建该规则。

创建规则组的 AWS 账户可以将其与其它 AWS 账户共享。有关更多信息,请参阅 在 AWS 账户之间共享 Route 53 Resolver DNS Firewall 规则组