Azure 防火墙是托管的基于云的网络安全服务,可保护 Azure 虚拟网络资源。 它是一个服务形式的完全有状态防火墙,具有内置的高可用性和不受限制的云可伸缩性。

使用Azure Firewall可以跨订阅和虚拟网络集中创建、实施和记录应用程序与网络连接策略。 Azure 防火墙对虚拟网络资源使用静态公共 IP 地址,使外部防火墙能够识别来自你的虚拟网络的流量。 该服务与用于日志记录和分析的 Azure Monitor 完全集成

Azure防火墙提供Microsoft描述的以下功能:

  • 内置高可用性:无需额外的负载平衡器
  • 受限制的云可伸缩性:Azure防火墙可以根据需要进行扩展
  • 应用程序FQDN过滤规则:您可以限制出站Web流量
  • 网络流量过滤规则:您可以按源和目标IP地址,端口和协议允许或拒绝网络过滤规则
  • FQDN标记:您可以轻松使用标记来允许或拒绝流量
  • 出站SNAT支持:出站IP地址转换为Azure防火墙公共IP
  • 入站DNAT支持:防火墙公共IP地址的入站流量转换为内部IP地址。
  • Azure Monitor日志记录:所有事件都与Azure Monitor集成

在本文中,我们将探讨以下步骤:

  1. 创建资源组
  2. 创建一个vNet
  3. 创建3个子网
  4. 创建2个虚拟机
  5. 部署防火墙
  6. 配置默认路由
  7. 创建应用程序规则
  8. 测试防火墙

以下是该架构的概述:
部署和配置Azure Firewall

创建资源组
首先我们需要创建一个资源组,此资源组用来承载本次实验的所有资源。打开Azure Portal,然后点击“资源组”—“新建资源组”
订阅:选择我们使用的Azure订阅
资源组名称:输入需要使用的资源组名称
区域:选择资源的创建位置
然后点击创建:
部署和配置Azure Firewall
创建虚拟网络
我们需要创建一个包含三个子网的虚拟网络,具体如下:

  • 名称:键入此虚拟网络的友好名称
  • 地址空间:输入所需的地址空间
  • 订阅:选择您的Azure订阅
  • 资源组:选择我们之前创建的RG
  • 位置:选择资源所在的位置
  • 子网:此步骤非常重要,因为您必须使用名为“AzureFirewallSubnet”的固定名称。
    部署和配置Azure Firewall
    创建完虚拟网络后我们还需要创建第二个子网(SRV-VNet 10.1.2.0/24)和第三个子网(Jump 10.1.3.0/24),创建完成后如下图所示:
    部署和配置Azure Firewall
    创建虚拟机
    在前面的步骤中我们创建了一个包含三个子网的资源组和虚拟网络。现在,我们需要创建两个虚拟机。第一个是将用于连接到第二个虚拟机的Jump服务器。Jump机器称为“JUMP01”
    使用Azure向导创建虚拟机:
    部署和配置Azure Firewall
    在“网络”区域中,选择“Jump-VNet”并创建新的“公共IP地址”,以便从Internet访问Jump服务器。另外我们需要允许RDP协议:
    部署和配置Azure Firewall
    使用同上述步骤相同的步骤创建虚拟机16SRV01:
    部署和配置Azure Firewall
    此虚拟机必须位于“SRV-VNet”子网中,我们无需打开任何公共入站端口。
    部署和配置Azure Firewall
    部署Azure Firewall
    下面我们需要开始部署Azure Firewall。在Azure Portal中点击“所有服务”,搜索“Firewalls”:
    部署和配置Azure Firewall
    点击“添加“来创建我们所需的Aazure Firewall并输入如下信息:
  • 选择您的Azure订阅
  • 选择以前创建的资源组
  • 输入防火墙的友好名称
  • 选择以前创建的虚拟网络
  • 并且不要忘记创建公共IP地址
    部署和配置Azure Firewall
    创建完成后如下图所示,我们需要记录下此防火墙的专用IP以便于后续配置的使用:
    部署和配置Azure Firewall

创建路由表
在Azure Portal中搜索“路由表“:
部署和配置Azure Firewall
创建一个名为“Go-To-Firewall”的新路由表。此路由表将包含服务器将选择路由流量的默认路由
部署和配置Azure Firewall
创建路由表后,必须将服务器子网关联到此路由表。转到“ 子网 ”部分,然后单击“ 关联 ”
部署和配置Azure Firewall
选择“虚拟网络“和”子网“:
部署和配置Azure Firewall
配置完成后如下图所示:
部署和配置Azure Firewall
现在,我们必须向虚拟设备添加默认路由。转到“ 路线 ”部分,然后单击“ 添加 ”:
部署和配置Azure Firewall
输入以下信息:

  • 路由名称:它是默认路由的友好名称
  • 地址前缀:要指示默认路由,必须输入0.0.0.0/0
  • 下一跳类型:选择“虚拟设备”
  • 下一跳地址:输入先前复制的专用IP地址
    部署和配置Azure Firewall
    配置完成后如下图所示:
    部署和配置Azure Firewall
    创建应用程序规则集合
    防火墙已部署,因此我们可以添加应用程序规则以过滤出站Web流量。转到“ 规则 ”部分,然后单击“ 添加应用程序规则集合 ”:
    部署和配置Azure Firewall
    输入此规则的友好名称,然后设置优先级并选择操作(允许或拒绝)。接下来,您必须指明源地址,协议和目标FQDN。
    在我的情况下,我想允许从16SRV01虚拟机到www.mspcloud.club的网络流量。
    部署和配置Azure Firewall
    要解析FQDN,计算机必须能够联系DNS服务器。在本文中,我创建了一个网络规则,允许从服务器子网到OpenDNS服务器的DNS请求。
    部署和配置Azure Firewall
    测试防火墙
    首先,我们需要从公共IP地址连接到Jump服务器,然后,我可以启动一个新的MSTSC窗口,使用私有IP地址连接到SRV01机器。
    最后一步是检查先前在Azure防火墙中创建的应用程序规则。我只需要打开一个Web浏览器并输入网站URL。
    在我的情况下,我可以确认我的博客正在回复,但如果尝试浏览Google,则会显示错误消息。我应该创建一个允许www.google.com的应用程序规则。
    部署和配置Azure Firewall
    借助Azure防火墙,您可以非常轻松快速地保护Azure资源。您还可以使用Azure PowerShell自动执行任务。
    Azure防火墙允许您创建应用程序规则和网络规则来控制入站和出站网络流量。