教程:在 Azure 门户中通过 Azure 防火墙 DNAT 筛选入站 Internet 流量Tutorial: Filter inbound Internet traffic with Azure Firewall DNAT using the Azure portal

可以配置 Azure 防火墙目标网络地址转换 (DNAT),以转换和筛选到子网的入站 Internet 流量。You can configure Azure Firewall Destination Network Address Translation (DNAT) to translate and filter inbound Internet traffic to your subnets. 配置 DNAT 时,NAT 规则收集操作设置为“Dnat”。 When you configure DNAT, the NAT rule collection action is set to Dnat. 然后,可以使用 NAT 规则集合中的每个规则将防火墙公用 IP 和端口转换为专用 IP 和端口。Each rule in the NAT rule collection can then be used to translate your firewall public IP and port to a private IP and port. DNAT 规则会隐式添加一个对应的网络规则来允许转换后的流量。DNAT rules implicitly add a corresponding network rule to allow the translated traffic. 可以通过以下方法替代此行为:显式添加一个网络规则集合并在其中包含将匹配转换后流量的拒绝规则。You can override this behavior by explicitly adding a network rule collection with deny rules that match the translated traffic. 若要详细了解 Azure 防火墙规则处理逻辑,请参阅 Azure 防火墙规则处理逻辑To learn more about Azure Firewall rule processing logic, see Azure Firewall rule processing logic.

本教程介绍如何执行下列操作:In this tutorial, you learn how to:

  • 设置测试网络环境Set up a test network environment
  • 部署防火墙Deploy a firewall
  • 创建默认路由Create a default route
  • 配置 DNAT 规则Configure a DNAT rule
  • 测试防火墙Test the firewall

如果没有 Azure 订阅,可在开始前创建一个试用帐户If you don't have an Azure subscription, create a trial account before you begin.

请为本教程创建两个对等互连的 VNet:For this tutorial, you create a two peered VNets:

  • VN-Hub - 防火墙在此 VNet 中。VN-Hub - the firewall is in this VNet.
  • VN-Spoke - 工作负荷服务器在此 VNet 中。VN-Spoke - the workload server is in this VNet.

创建资源组Create a resource group

  1. https://portal.azure.cn 中登录 Azure 门户。Sign in to the Azure portal at https://portal.azure.cn.
  2. 在 Azure 门户主页上,依次选择“资源组”、“添加”。 On the Azure portal home page, select Resource groups, then select Add.
  3. 对于“资源组名称”,请键入 RG-DNAT-TestFor Resource group name, type RG-DNAT-Test.
  4. 对于“订阅”,请选择自己的订阅。 For Subscription, select your subscription.
  5. 对于“资源组位置”,请选择一个位置。 For Resource group location, select a location. 创建的所有后续资源必须位于同一位置。All subsequent resources that you create must be in the same location.
  6. 选择“创建” 。Select Create.

设置网络环境Set up the network environment

首先创建 VNet,然后将其对等互连。First, create the VNets and then peer them.

创建中心 VNetCreate the Hub VNet

  1. 在 Azure 门户主页上,选择“所有服务”。 From the Azure portal home page, select All services.

  2. 在“网络”下,选择“虚拟网络”。 Under Networking, select Virtual networks.

  3. 选择“添加” 。Select Add.

  4. 对于“名称”,请键入“VN-Hub”。 For Name, type VN-Hub.

  5. 对于“地址空间”,请键入 10.0.0.0/16For Address space, type 10.0.0.0/16.

  6. 对于“订阅”,请选择自己的订阅。 For Subscription, select your subscription.

  7. 对于“资源组”,请选择“使用现有”,然后选择“RG-DNAT-Test”。 For Resource group, select Use existing, and then select RG-DNAT-Test.

  8. 对于“位置”,请选择前面使用的同一位置。 For Location, select the same location that you used previously.

  9. 在“子网”下,为“名称”键入 AzureFirewallSubnetUnder Subnet, for Name type AzureFirewallSubnet.

    防火墙将位于此子网中,子网名称必须是 AzureFirewallSubnet。The firewall will be in this subnet, and the subnet name must be AzureFirewallSubnet.

    备注

    AzureFirewallSubnet 子网的大小为 /26。The size of the AzureFirewallSubnet subnet is /26. 有关子网大小的详细信息,请参阅 Azure 防火墙常见问题解答For more information about the subnet size, see Azure Firewall FAQ.

  10. 对于“地址范围”,请键入 10.0.1.0/26For Address range, type 10.0.1.0/26.

  11. 使用其他默认设置,然后选择“创建”。 Use the other default settings, and then select Create.

创建辐射 VNetCreate a spoke VNet

  1. 在 Azure 门户主页上,选择“所有服务”。 From the Azure portal home page, select All services.

  2. 在“网络”下,选择“虚拟网络”。 Under Networking, select Virtual networks.

  3. 选择“添加” 。Select Add.

  4. 对于“名称” ,请键入 VN-SpokeFor Name, type VN-Spoke.

  5. 对于“地址空间”,请键入 192.168.0.0/16For Address space, type 192.168.0.0/16.

  6. 对于“订阅”,请选择自己的订阅。 For Subscription, select your subscription.

  7. 对于“资源组”,请选择“使用现有”,然后选择“RG-DNAT-Test”。 For Resource group, select Use existing, and then select RG-DNAT-Test.

  8. 对于“位置”,请选择前面使用的同一位置。 For Location, select the same location that you used previously.

  9. 在“子网”下,为“名称”键入 SN-WorkloadUnder Subnet, for Name type SN-Workload.

    服务器会在此子网中。The server will be in this subnet.

  10. 对于“地址范围”,请键入 192.168.1.0/24For Address range, type 192.168.1.0/24.

  11. 使用其他默认设置,然后选择“创建”。 Use the other default settings, and then select Create.

在 VNet 之间建立对等互连Peer the VNets

现在,请将这两个 VNet 对等互连。Now peer the two VNets.

  1. 选择“VN-Hub”虚拟网络。 Select the VN-Hub virtual network.
  2. 在“设置”下选择“对等互连”。 Under Settings, select Peerings.
  3. 选择“添加” 。Select Add.
  4. 在“从 VN-Hub 到 VN-Spoke 的对等互连名称”中,键入 Peer-HubSpokeType Peer-HubSpoke for the Name of the peering from VN-Hub to VN-Spoke.
  5. 选择 VN-Spoke 作为虚拟网络。Select VN-Spoke for the virtual network.
  6. 在“从 VN-Spoke 到 VN-Hub 的对等互连名称”中,键入 Peer-SpokeHubType Peer-SpokeHub for Name of peering from VN-Spoke to VN-Hub.
  7. 对于“允许从 VN-Spoke 转发到 VN-Hub 的流量”,请选择“已启用”。 For Allow forwarded traffic from VN-Spoke to VN-Hub select Enabled.
  8. 选择“确定” 。Select OK.

创建虚拟机Create a virtual machine

创建一个工作负荷虚拟机,将其置于 SN-Workload 子网中。Create a workload virtual machine, and place it in the SN-Workload subnet.

  1. 在 Azure 门户菜单中,选择“创建资源” 。From the Azure portal menu, select Create a resource.

  2. 在“常用”下,选择“Windows Server 2016 Datacenter”。 Under Popular, select Windows Server 2016 Datacenter.

    基础知识Basics

    1. 对于“订阅”,请选择自己的订阅。 For Subscription, select your subscription.
    2. 对于“资源组”,请选择“使用现有”,然后选择“RG-DNAT-Test”。 For Resource group, select Use existing, and then select RG-DNAT-Test.
    3. 对于“虚拟机名称”,请键入 Srv-WorkloadFor Virtual machine name, type Srv-Workload.
    4. 对于“区域”,请选择以前使用的同一位置。 For Region, select the same location that you used previously.
    5. 键入用户名和密码。Type a username and password.
    6. 在完成时选择“下一步:磁盘”Select Next: Disks.

    磁盘Disks

    1. 在完成时选择“下一步: 网络”。Select Next: Networking.

    联网Networking

    1. 对于“虚拟网络”,请选择“VN-Spoke”。 For Virtual network, select VN-Spoke.
    2. 对于“子网”,请选择“SN-Workload”。 For Subnet, select SN-Workload.
    3. 对于“公共 IP 地址”,请选择“无”。 For Public IP address select None.
    4. 对于“公共入站端口”,请选择“无”。 For Public inbound ports, select None.
    5. 保留其他默认设置,然后选择“下一步:管理”Leave the other default settings and select Next : Management.

    ManagementManagement

    1. 对于“启动诊断”,请选择“关闭”。 For Boot diagnostics, select Off.
    2. 选择“查看 + 创建” 。Select Review + Create.

    查看 + 创建Review + Create

    查看摘要,然后选择“创建”。 Review the summary, and then select Create. 完成此设置可能需要几分钟时间。This will take a few minutes to complete.

部署完成后,请记下虚拟机的专用 IP 地址。After deployment finishes, note the private IP address for the virtual machine. 该地址会在稍后配置防火墙时使用。It will be used later when you configure the firewall. 选择虚拟机名称,然后在“设置”下选择“网络”,找到专用 IP 地址。 Select the virtual machine name, and under Settings, select Networking to find the private IP address.

部署防火墙Deploy the firewall

  1. 在门户主页上,选择“创建资源”。 From the portal home page, select Create a resource.

  2. 选择“网络”,在“特色”后面选择“查看所有”。 Select Networking, and after Featured, select See all.

  3. 依次选择“防火墙”、“创建”。 Select Firewall, and then select Create.

  4. 在“创建防火墙”页上,使用下表配置防火墙: On the Create a Firewall page, use the following table to configure the firewall:

    设置Setting ValueValue
    名称Name FW-DNAT-testFW-DNAT-test
    订阅Subscription <订阅><your subscription>
    资源组Resource group 使用现有项:RG-DNAT-TestUse existing: RG-DNAT-Test
    位置Location 选择前面使用的同一位置Select the same location that you used previously
    选择虚拟网络Choose a virtual network 使用现有项:VN-HubUse existing: VN-Hub
    公共 IP 地址Public IP address 新建Create new. 公共 IP 地址必须为“标准 SKU”类型。The Public IP address must be the Standard SKU type.
  5. 选择“查看 + 创建” 。Select Review + create.

  6. 查看摘要,然后选择“创建”以创建防火墙。 Review the summary, and then select Create to create the firewall.

    需要花费几分钟时间来完成部署。This will take a few minutes to deploy.

  7. 部署完成后,转到“RG-DNAT-Test”资源组,然后选择“FW-DNAT-test”防火墙。 After deployment completes, go to the RG-DNAT-Test resource group, and select the FW-DNAT-test firewall.

  8. 记下专用 IP 地址。Note the private IP address. 稍后在创建默认路由时需要用到此地址。You'll use it later when you create the default route.

创建默认路由Create a default route

对于“SN-Workload”子网,请配置要通过防火墙的出站默认路由。 For the SN-Workload subnet, you configure the outbound default route to go through the firewall.

  1. 在 Azure 门户主页上,选择“所有服务”。 From the Azure portal home page, select All services.

  2. 在“网络”下,选择“路由表”。 Under Networking, select Route tables.

  3. 选择“添加” 。Select Add.

  4. 对于“名称”,请键入“RT-FWroute”。 For Name, type RT-FWroute.

  5. 对于“订阅”,请选择自己的订阅。 For Subscription, select your subscription.

  6. 对于“资源组”,请选择“使用现有”,然后选择“RG-DNAT-Test”。 For Resource group, select Use existing, and select RG-DNAT-Test.

  7. 对于“位置”,请选择前面使用的同一位置。 For Location, select the same location that you used previously.

  8. 选择“创建” 。Select Create.

  9. 依次选择“刷新”、“RT-FWroute”路由表。 Select Refresh, and then select the RT-FWroute route table.

  10. 依次选择“子网”、“关联”。 Select Subnets, and then select Associate.

  11. 依次选择“虚拟网络”、“VN-Spoke”。 Select Virtual network, and then select VN-Spoke.

  12. 对于“子网”,请选择“SN-Workload”。 For Subnet, select SN-Workload.

  13. 选择“确定” 。Select OK.

  14. 依次选择“路由”、“添加”。 Select Routes, and then select Add.

  15. 对于“路由名称”,请键入 FW-DGFor Route name, type FW-DG.

  16. 对于“地址前缀”,请键入 0.0.0.0/0For Address prefix, type 0.0.0.0/0.

  17. 对于“下一跃点类型”,请选择“虚拟设备”。 For Next hop type, select Virtual appliance.

    Azure 防火墙实际上是一个托管服务,但虚拟设备可在此场合下正常工作。Azure Firewall is actually a managed service, but virtual appliance works in this situation.

  18. 对于“下一跃点地址”,请键入前面记下的防火墙专用 IP 地址。 For Next hop address, type the private IP address for the firewall that you noted previously.

  19. 选择“确定” 。Select OK.

配置 NAT 规则Configure a NAT rule

  1. 打开“RG-DNAT-Test”,然后选择“FW-DNAT-test”防火墙。 Open the RG-DNAT-Test, and select the FW-DNAT-test firewall.
  2. 在“FW-DNAT-test”页的“设置”下,选择“规则”。 On the FW-DNAT-test page, under Settings, select Rules.
  3. 选择“添加 NAT 规则集合”。 Select Add NAT rule collection.
  4. 对于“名称”,键入 RC-DNAT-01For Name, type RC-DNAT-01.
  5. 对于“优先级”,请键入 200For Priority, type 200.
  6. 在“规则”下,对于“名称”,键入 RL-01Under Rules, for Name, type RL-01.
  7. 对于“协议”,请选择“TCP”。 For Protocol, select TCP.
  8. 对于“源地址”,键入 *。 For Source Addresses, type *.
  9. 对于“目标地址” ,键入防火墙的公共 IP 地址。For Destination Addresses type the firewall's public IP address.
  10. 对于“目标端口”,键入 3389For Destination ports, type 3389.
  11. 对于“已翻译的地址” ,键入 Srv-Workload 虚拟机的专用 IP 地址。For Translated Address type the private IP address for the Srv-Workload virtual machine.
  12. 对于“已翻译的端口” ,键入 3389For Translated port, type 3389.
  13. 选择“添加” 。Select Add.

测试防火墙Test the firewall

  1. 将远程桌面连接到防火墙公共 IP 地址。Connect a remote desktop to firewall public IP address. 此时会连接到 Srv-Workload 虚拟机。You should be connected to the Srv-Workload virtual machine.
  2. 关闭远程桌面。Close the remote desktop.

清理资源Clean up resources

可以将防火墙资源保留到下一教程使用。不再需要时,请删除 RG-DNAT-Test 资源组,以删除与防火墙相关的所有资源。You can keep your firewall resources for the next tutorial, or if no longer needed, delete the RG-DNAT-Test resource group to delete all firewall-related resources.

后续步骤Next steps

在本教程中,你已学习了如何执行以下操作:In this tutorial, you learned how to:

  • 设置测试网络环境Set up a test network environment
  • 部署防火墙Deploy a firewall
  • 创建默认路由Create a default route
  • 配置 DNAT 规则Configure a DNAT rule
  • 测试防火墙Test the firewall

接下来,可以监视 Azure 防火墙日志。Next, you can monitor the Azure Firewall logs.