Route 53 Resolver DNS Firewall 的工作原理 - Amazon Route 53
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

Route 53 Resolver DNS Firewall 的工作原理

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

DNS Firewall 仅筛选域名。它不会将该名称解析为要阻止的 IP 地址。此外,DNS Firewall 筛选 DNS/UDP 流量,但不筛选其它应用层协议,如 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 查询执行的操作。您可以允许、阻挡匹配查询或发出提示。您还可以为阻挡的查询定义自定义响应。

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

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

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

域列表

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

有关更多信息,请参阅Route 53 Resolver 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 配置

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

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

  • 源于该 VPC 内部的 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 筛选,请执行以下概括步骤。

  • 定义您的筛选方法和域列表 — 确定要如何筛选查询,确定需要的域规范,并定义用于评估查询的逻辑。例如,您可能希望允许除已知坏域列表中的查询之外的所有查询。或者您可能想要做相反的事情,即阻止所有出批准域列表以外的域,也就是所谓的围墙花园法。您可以创建和管理您自己的已批准或阻止域规范列表,也可以使用 Amazon 为您管理的域列表。有关域列表的信息,请参阅 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 是区域性服务,因此您在一个 Amazon 区域中创建的对象仅在该区域中可用。要在多个区域中使用同一个规则,您必须在各个区域中创建该规则。

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