本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
解析器 DNS 防火墙的工作原理
解析器 DNS 防火墙允许您控制对网站的访问并阻止通过 Route 53 VPC 解析器从您的 VPC 发出的 DNS 查询的 DNS-level 威胁。使用 DNS Firewall,您可以在与您的 VPC 关联的规则组中定义域名过滤规则。您可以指定要允许或阻止的域名列表,也可以指定解析器 DNS Firewall 高级规则,以抵御基于 DNS 隧道和域生成算法 (DGA) 的威胁。您可以自定义对所阻止 DNS 查询的响应。对于包含域列表的规则,您还可以微调规则以允许某些查询类型,例如 MX-records,通过。
DNS Firewall 仅筛选域名。它不会将该名称解析为要阻止的 IP 地址。此外,DNS Firewall 筛选 DNS 流量,但不筛选其它应用层协议,如 HTTPS、SSH、TLS、FTP 等。
解析器 DNS 防火墙组件和设置
您可以使用以下中央组件和设置管理 DNS Firewall。
- DNS Firewall 规则组
-
DNS Firewall 规则组是用于筛选 DNS 查询的 DNS Firewall 规则的已命名、可重复使用的集合。您可以使用筛选规则填充规则组,然后将规则组与一个或多个 VPC 关联。当您关联规则组与 VPC 时,您可以为 VPC 启用 DNS Firewall 过滤。然后,当 VPC 解析器收到与之关联的规则组的 VPC 的 DNS 查询时,VPC 解析器会将该查询传递给 DNS 防火墙进行筛选。
如果您将多个规则组与单个 VPC 关联,则通过每个关联中的优先级设置来指明它们的处理顺序。DNS Firewall 从最低数值优先级设置向上处理 VPC 的规则组。
有关更多信息,请参阅 DNS Firewall 规则组和规则。
- DNS Firewall 规则
-
为 DNS Firewall 规则组中的 DNS 查询定义筛选规则。每个规则都指定一个域列表或 DNS Firewall 保护,以及对域与规则中的域规范匹配的 DNS 查询执行的操作。您可以允许(仅限带域列表的规则)、阻止匹配查询或针对其发出提醒。在包含域列表的规则中,您还可以为列表中的域指定查询类型,例如,您可以阻止或允许特定域的 MX 查询类型。您还可以为阻止的查询定义自定义响应。
对于 DNS Firewall 规则,您只能阻止匹配查询或针对其发出提醒。
规则组中的每个规则都有一个在规则组中唯一的优先级设置。DNS Firewall 将从最低设置开始,按优先级顺序处理规则组中的规则。
DNS Firewall 规则仅存在于定义这些规则的规则组上下文中。您不能独立于规则组重复使用或引用规则。
有关更多信息,请参阅 DNS Firewall 规则组和规则。
- 域名清单
-
定义用于 DNS 筛选的已命名、可重复使用的域规范集合。规则组中的每个规则都需要单一的域列表。您可以选择指定要允许访问的域、要拒绝访问的域或两者的组合。您可以创建自己的域名列表,也可以使用为您 AWS 管理的域名列表。
有关更多信息,请参阅 DNS 防火墙基础规则。
- 域重定向设置(仅限域列表)
-
通过域重定向设置,您可以配置 DNS Firewall 规则来检查 DNS 重定向链中的所有域(默认),例如 CNAME、DNAME 等,或者只检查第一个域并信任其余域。如果选择检查整个 DNS 重定向链,则必须将后续域添加到规则中设置为“ALLOW ”的域列表中。如果选择检查整个 DNS 重定向链,则必须将后续域添加到域列表中,并将其设置为需要规则采取的行动,即 ALLOW、BLOCK 或 ALERT。
重要
域重定向设置的信任行为仅适用于单个 DNS 查询交易。如果主机上的 DNS 客户端单独查询 DNS 重定向链中出现的域(例如,直接查询重定向目标),则 DNS Firewall 会将其评估为独立查询,与原始查询没有信任上下文。要允许此类查询,请将重定向目标域名添加到您的域名列表中。
有关更多信息,请参阅 DNS Firewall 中的规则设置。
- 查询类型(仅限域列表)
-
通过查询类型设置,您可以配置 DNS Firewall 规则来筛选特定的 DNS 查询类型。如果未选择查询类型,则该规则应用于所有 DNS 查询类型。例如,您可能想要阻止特定域的所有查询类型,但允许 MX 记录。
有关更多信息,请参阅 DNS Firewall 中的规则设置。
- DNS Firewall Advanced 保护
-
根据 DNS 查询中的已知威胁签名检测可疑 DNS 查询。规则组中的每个规则都需要单一的 DNS Firewall Advanced 保护设置。您可以选择如下方面的保护:
-
域生成算法(DGA)
攻击者使用 DGA 生成大量域来发起恶意软件攻击。
-
DNS 隧道
DNS 隧道技术是指攻击者利用 DNS 隧道从客户端窃取数据,而无需与客户端建立网络连接。
-
DGA 字典
攻击者使用字典 DGA 使用字典单词生成域,以逃避恶意软件命令和控制通信中的检测。
在 DNS Firewall Advanced 规则中,您可以选择阻止与威胁匹配的查询或针对其发出提醒。威胁防护算法由管理和更新 AWS。
有关更多信息,请参阅 DNS 防火墙高级规则。
-
- 置信度阈值(仅限 DNS Firewall Advanced 保护)
-
DNS 威胁防护的置信度阈值。创建 DNS Firewall Advanced 规则时必须提供此值。置信度值代表:
-
高 – 仅检测证实度最高的威胁,误报率低。
-
中 – 在检测威胁和误报之间保持平衡。
-
低 – 提供最高威胁检测率,但也会增加误报。
有关更多信息,请参阅 DNS Firewall 中的规则设置。
-
- DNS Firewall 规则组与 VPC 之间的关联
-
使用 DNS 防火墙规则组为 VPC 定义保护,并为该 VPC 启用 VPC 解析器 DNS 防火墙配置。
如果您将多个规则组与单个 VPC 关联,则可通过关联中的优先级设置来指明它们的处理顺序。DNS Firewall 从最低数值优先级设置向上处理 VPC 的规则组。
有关更多信息,请参阅 为您的 VPC 启用解析器 DNS 防火墙保护。
- VPC 的 DNS 防火墙配置
-
指定 VPC 解析器应如何处理 VPC 级别的 DNS 防火墙保护。只要您至少有一个与 VPC 关联的 DNS Firewall 规则组,此配置就会生效。
此配置指定了 DNS 防火墙无法过滤查询时 Route 53 VPC 解析器如何处理查询。默认情况下,如果 VPC Resolver 没有收到来自 DNS 防火墙的查询响应,则它将失败关闭并阻止查询。
有关更多信息,请参阅 DNS Firewall VPC 配置。
- 监控 DNS Firewall 操作
-
您可以使用 Amazon CloudWatch 来监控由 DNS 防火墙规则组筛选的 DNS 查询数量。 CloudWatch 收集原始数据并将其处理为可读的、近乎实时的指标。
有关更多信息,请参阅 使用 Amazon 监控解析器 DNS 防火墙规则组 CloudWatch。
您可以使用 Amazon EventBridge(一种使用事件将应用程序组件连接在一起的无服务器服务)来构建可扩展的事件驱动应用程序。
有关更多信息,请参阅 使用管理解析器 DNS 防火墙事件 Amazon EventBridge。
解析器 DNS 防火墙如何过滤 DNS 查询
当 DNS 防火墙规则组与您的 VPC 的 Route 53 VPC 解析器关联时,防火墙会过滤以下流量:
-
源于该 VPC 内并通过 VPC DNS 传递的 DNS 查询。
-
通过 Resolver 端点从本地部署资源传递到具有与其解析程序关联的 DNS Firewall 的同一 VPC 的 DNS 查询。
当 DNS Firewall 收到 DNS 查询时,它会使用您配置的规则组、规则和其他设置筛选查询,并将结果发送回 VPC 解析器:
-
DNS Firewall 使用与 VPC 关联的规则组评估 DNS 查询,直到找到匹配项或用尽所有规则组。DNS Firewall 按照您在关联中设置的优先级顺序评估规则组,从最低的数字设置开始。有关更多信息,请参阅DNS Firewall 规则组和规则和为您的 VPC 启用解析器 DNS 防火墙保护。
-
在每个规则组中,DNS Firewall 根据每个规则的域列表或 DNS Firewall Advanced 保护评估 DNS 查询,直到找到匹配规则或用尽所有规则。DNS Firewall 从最低数值设置开始,按优先级顺序评估规则。有关更多信息,请参阅 DNS Firewall 规则组和规则。
-
当 DNS Firewall 发现与规则的域列表匹配或 DNS 防火墙高级规则保护所识别的异常时,它会终止查询评估并向 VPC 解析器提供结果。如果操作是
alert,则 DNS 防火墙还会向配置的 VPC 解析器日志发送警报。有关更多信息,请参阅 DNS Firewall 中的规则操作、DNS 防火墙基础规则 和 DNS 防火墙高级规则。 -
如果 DNS Firewall 在没有找到匹配项的情况下评估所有规则组,它会照常响应查询。
VPC 解析器根据来自 DNS 防火墙的响应来路由查询。万一 DNS 防火墙无法响应,VPC 解析器会应用 VPC 配置的 DNS 防火墙故障模式。有关更多信息,请参阅 DNS Firewall VPC 配置。
High-level 使用解析器 DNS 防火墙的步骤
要在您的 Amazon Virtual Private Cloud VPC 中实施 Resolver DNS 防火墙筛选,请执行以下高级步骤。
-
定义您的筛选方法、域列表或 DNS Firewall 保护 — 确定要如何筛选查询,确定需要的域规范,并定义用于评估查询的逻辑。例如,您可能希望允许除已知坏域列表中的查询之外的所有查询。或者您可能想要做相反的事情,即阻止所有出批准域列表以外的域,也就是所谓的围墙花园法。您可以创建和管理自己的已批准或屏蔽域名规范列表,也可以使用为您 AWS 管理的域名列表。对于 DNS 防火墙保护,您可以通过屏蔽所有查询来筛选查询,也可以提醒可能包含与威胁相关的异常的域名(DGA、DNS 隧道、字典 DGA)的任何可疑查询流量,以测试您的 DNS 防火墙设置。有关更多信息,请参阅DNS 防火墙基础规则和DNS 防火墙高级规则。
-
创建防火墙规则组 — 在 DNS Firewall 中,创建一个规则组来筛选 VPC 的 DNS 查询。您必须在要使用规则组的每个区域中创建规则组。您可能还希望将筛选行为分离到多个规则组中,以便在不同 VPC 的多个筛选方案中重复使用。有关规则组的信息,请参阅DNS Firewall 规则组和规则。
-
添加和配置规则 — 为您希望规则组提供的每个域列表和筛选行为添加规则到规则组。设置规则的优先级设置,以便它们在规则组中以正确的顺序进行处理,请为要首先评估的规则赋予最低的优先级。有关规则的信息,请参阅 DNS Firewall 规则组和规则。
-
将规则组关联到您的 VPC — 要开始使用您的 DNS Firewall 规则组,请将其与您的 VPC 关联。如果您要为 VPC 使用多个规则组,请设置每个关联的优先级,以便按正确的顺序处理规则组,请为您要首先评估的规则组提供最低的优先级。有关更多信息,请参阅 管理您的 VPC 和解析器 DNS 防火墙规则组之间的关联。
-
(可选)更改 VPC 的防火墙配置 — 如果您希望 Route 53 VPC 解析器在 DNS 防火墙无法为查询发送回响应时阻止查询,请在 VPC 解析器中更改 VPC 的 DNS 防火墙配置。有关更多信息,请参阅 DNS Firewall VPC 配置。
在多个区域使用解析器 DNS 防火墙规则组
Resolver DNS Firewall 是一项区域服务,因此您在一个 AWS 区域中创建的对象仅在该区域可用。要在多个区域中使用同一个规则,您必须在各个区域中创建该规则。
创建规则组的 AWS 账户可以与其他 AWS 账户共享该规则组。有关更多信息,请参阅 在账户之间 AWS 共享解析器 DNS 防火墙规则组。