共用方式為

教程:使用 Azure 防火墙管理器保护虚拟中心

使用 Azure 防火墙管理器,可以创建安全虚拟中心来保护发往专用 IP 地址、Azure PaaS 和 Internet 的云网络流量。 到防火墙的流量路由是自动的,因此无需创建用户定义的路由 (UDR)。

防火墙管理器还支持中心虚拟网络体系结构。 有关安全虚拟中心和中心虚拟网络体系结构类型的比较,请参阅有哪些 Azure 防火墙管理器体系结构选项?

在本教程中,你将了解如何执行以下操作:

  • 创建分支虚拟网络
  • 创建安全虚拟中心
  • 连接中心和辐射型虚拟网络
  • 将流量路由到中心
  • 部署服务器
  • 创建防火墙策略并保护中心
  • 测试防火墙

重要

本教程中的过程使用 Azure 防火墙管理器创建新的 Azure 虚拟 WAN 安全中心。 可以使用防火墙管理器升级现有中心,但无法为 Azure 防火墙配置 Azure 可用性区域。 也可以使用 Azure 门户将现有中心转换为安全中心,如在虚拟 WAN 中心配置 Azure 防火墙所述。 但与 Azure 防火墙管理器一样,无法配置可用性区域。 若要升级现有中心并为 Azure 防火墙指定可用性区域(推荐),必须遵循教程:使用 Azure PowerShell 保护虚拟中心中的升级过程。

显示了安全云网络的示意图。

先决条件

如果没有 Azure 订阅,请在开始前创建一个试用版订阅

创建中心和辐射体系结构

首先,创建一个可放置服务器的辐射型虚拟网络。

创建两个辐射型虚拟网络和子网

两个虚拟网络各自具有工作负载服务器,并且都受防火墙保护。

  1. 在 Azure 门户主页上,选择“创建资源”。

  2. 搜索并选择“虚拟网络”,并选择“创建”

  3. 使用以下设置创建虚拟网络:

    设置
    订阅 选择订阅
    资源组 选择“新建”,输入“fw-manager-rg”作为名称,然后选择“确定”
    虚拟网络名称 Spoke-01
    区域 中国东部
  4. 选择“ 下一步”,然后选择“ 下一步”。

  5. 在“ 网络 ”选项卡中,使用以下设置创建子网:

    设置
    添加 IPv4 地址空间 10.0.0.0/16(默认值)
    子网
    工作负荷子网
    名称 Workload-01-SN
    起始地址 10.0.1.0/24
    Bastion 子网
    名称 AzureBastionSubnet
    起始地址 10.0.2.0/26
  6. 选择保存审核 + 创建,然后选择创建

重复此过程,以在 fw-manager-rg 资源组中创建另一个类似的虚拟网络:

设置
名称 Spoke-02
地址空间 10.1.0.0/16
子网名称 Workload-02-SN
起始地址 10.1.1.0/24

创建安全虚拟中心

使用防火墙管理器创建安全虚拟中心。

  1. 在 Azure 门户主页上,选择“所有服务”。

  2. 在搜索框中,键入“防火墙管理器”并选择“防火墙管理器”。

  3. 在“部署”下的“防火墙管理器”页面,选择“虚拟中心”。

  4. 在“防火墙管理器 | 虚拟中心”页上,选择“新建安全虚拟中心”。

  5. 在“创建新的安全虚拟中心”页上,输入以下信息:

    设置
    订阅 选择订阅。
    资源组 选择“fw-manager-rg”
    区域 中国东部
    安全虚拟中心名称 Hub-01
    中心地址空间 10.2.0.0/16
  6. 选择“新建 vWAN”。

    设置
    新的虚拟 WAN 名称 Vwan-01
    类型 标准
    包含 VPN 网关以启用受信任的安全合作伙伴 保持复选框为未勾选状态。
  7. 在完成时选择“下一步:Azure 防火墙”。

  8. 接受默认的“Azure 防火墙”的“启用”设置。

  9. 对于“Azure 防火墙层”,选择“标准”。

  10. 选择所需的可用性区域组合。

    重要

    虚拟 WAN 是中心以及其中提供的服务的集合。 可以部署所需数量的虚拟 WAN。 虚拟 WAN 中心包含多个服务,例如 VPN、ExpressRoute 等。 如果区域支持可用性区域,则这些服务都会自动跨可用性区域进行部署,Azure 防火墙除外。 若要与 Azure 虚拟 WAN 复原能力保持一致,应选择所有可用的可用性区域。

  11. 在“指定公共 IP 地址数量”文本框中键入“1”,或为该防火墙关联一个现有的公共 IP 地址(预览版)

  12. 在“防火墙策略”下,确保选中“默认拒绝策略”。 可在本文稍后部分优化设置。

  13. 选择“下一步: 安全合作伙伴提供程序”。

  14. 接受默认的“受信任的安全合作伙伴”的“禁用”设置,然后选择“下一步: 查看 + 创建”

  15. 选择“创建”。

注意

创建安全虚拟中心可能需要长达 30 分钟的时间。

部署完成后,可以查找防火墙公共 IP 地址。

  1. 开启防火墙管理器
  2. 选择虚拟中心
  3. 选择“hub-01”。
  4. 选择“AzureFirewall_Hub-01”
  5. 记下公共 IP 地址以供稍后使用。

连接中心和辐射型虚拟网络

现在,你可以将中心和辐射型虚拟网络对等互连。

  1. 选择 fw-manager-rg 资源组,然后选择 Vwan-01 虚拟 WAN。

  2. 在“连接”下,选择“虚拟网络连接”。

    设置
    连接名称 hub-spoke-01
    枢纽 Hub-01
    资源组 fw-manager-rg
    虚拟网络 Spoke-01
  3. 选择“创建”。

  4. 重复上述步骤,使用以下设置连接 Spoke-02 虚拟网络:

    设置
    连接名称 hub-spoke-02
    枢纽 Hub-01
    资源组 fw-manager-rg
    虚拟网络 Spoke-02

部署服务器

  1. 在 Azure 门户中,选择“创建资源”。

  2. 搜索 Ubuntu Server 22.04 LTS 并选择它。

  3. 选择“ 创建>虚拟机”。

  4. 输入虚拟机的以下值:

    设置
    资源组 fw-manager-rg
    虚拟机名称 Srv-workload-01
    区域 (美国)中国东部
    图像 Ubuntu Server 22.04 LTS - x64 Gen2
    身份验证类型 SSH 公钥
    用户名 azureuser
    SSH 公钥源 生成新密钥对
    密钥对名称 srv-workload-01_key
  5. 在“入站端口规则”下,对于“公共入站端口”,选择“无” 。

  6. 接受其他默认值,然后选择“下一步:磁盘”

  7. 接受磁盘默认值,然后选择“下一步:网络”。

  8. 选择“Spoke-01”作为虚拟网络,并选择“Workload-01-SN”作为子网 。

  9. 对于“公共 IP”,请选择“无”。

  10. 接受其他默认值,然后选择“下一步:管理”

  11. 选择“下一步: 监视”。

  12. 选择“禁用”以禁用启动诊断。

  13. 接受其他默认值,然后选择“查看 + 创建”。

  14. 检查摘要页上的设置,然后选择“创建”。

  15. 出现提示时,下载并保存私钥文件(例如 srv-workload-01_key.pem)。

使用下表中的信息配置名为 Srv-Workload-02 的另一台虚拟机。 其余配置与 Srv-workload-01 虚拟机相同,但使用不同的密钥对名称,例如 srv-workload-02_key

设置
虚拟网络 Spoke-02
子网 Workload-02-SN

部署服务器后,选择服务器资源,并记下“网络”中每个服务器的专用 IP 地址。

在服务器上安装 Nginx

部署虚拟机后,在两台服务器上安装 Nginx,以稍后验证 Web 连接。

  1. 在 Azure 门户中,导航到 Srv-workload-01 虚拟机。

  2. 选择 “运行”命令>RunShellScript

  3. 运行下面的命令:

    sudo apt-get update && sudo apt-get install -y nginx && echo '<h1>Srv-workload-01</h1>' | sudo tee /var/www/html/index.html
    
  4. Srv-workload-02 重复相同的步骤,替换 echo 命令中的主机名:

    sudo apt-get update && sudo apt-get install -y nginx && echo '<h1>Srv-workload-02</h1>' | sudo tee /var/www/html/index.html
    

部署 Azure Bastion

在 Spoke-01 虚拟网络中部署 Azure Bastion,以安全地连接到虚拟机。

  1. 在 Azure 门户中,搜索 Bastions 并选择它。

  2. 选择“创建”。

  3. 使用以下设置配置 Bastion:

    设置
    订阅 选择订阅
    资源组 fw-manager-rg
    名称 Bastion-01
    区域 中国东部
    开发人员
    虚拟网络 Spoke-01
    子网 AzureBastionSubnet (10.0.2.0/26)
  4. 选择查看 + 创建,然后选择创建

注意

Azure Bastion 部署可能需要大约 10 分钟才能完成。

创建防火墙策略并保护中心

防火墙策略定义规则集合,以在一个或多个安全虚拟中心上定向流量。 创建防火墙策略,然后保护你的中心。

  1. 从防火墙管理器中,选择“Azure 防火墙策略”。

  2. 选择“创建 Azure 防火墙策略”。

  3. 对于资源组,请选择 fw-manager-rg

  4. 在“策略详细信息”下,针对“名称”键入“Policy-01”并针对“区域”选择“中国东部”。

  5. 对于“策略层”,选择“标准”。

  6. 选择下一步:DNS 设置

  7. 选择“下一步:TLS 检查”。

  8. 选择下一步:规则

  9. 在“规则”选项卡上,选择“添加规则集合”。

  10. 在“添加规则集合”页上,输入以下信息。

    设置
    名称 App-RC-01
    规则集合类型 应用程序
    优先度 100
    规则集合操作 允许
    规则名称 Allow-msft
    源类型 IP 地址
    来源 *
    协议 http、https
    目标类型 FQDN
    目的地 *.microsoft.com
  11. 选择 添加

  12. 添加 网络规则 以允许辐射型虚拟网络之间的 SSH 和 HTTP 流量。

  13. 选择“添加规则集合”并输入以下信息。

    设置
    名称 vnet-access
    规则集合类型 网络
    优先度 100
    规则集合操作 允许
    规则名称 Allow-SSH-HTTP
    源类型 IP 地址
    来源 10.0.0.0/16,10.1.0.0/16
    协议 TCP
    目标端口 22,80
    目标类型 IP 地址
    目的地 10.0.0.0/16,10.1.0.0/16
  14. 选择“添加”,然后选择“下一步:IDPS”

  15. 在“IDPS”页上,选择“下一步: 威胁情报”

  16. 在“威胁情报”页中,接受默认设置并选择“查看并创建”:

  17. 查看以确认选择,然后选择“创建”。

关联策略

将防火墙策略与中心关联。

  1. 从防火墙管理器中,选择 Azure 防火墙策略
  2. 选择 Policy-01 复选框。
  3. 选择“管理关联”、“关联中心”。
  4. 选择“hub-01”。
  5. 选择 添加

测试防火墙

若要测试防火墙规则,请使用 Azure Bastion 连接到 Srv-Workload-01 ,并验证应用程序和网络规则是否正常工作。

测试应用程序规则

现在,测试防火墙以确认它可按预期工作。

  1. 将远程桌面连接到防火墙公共 IP 地址,然后进行登录。

  2. 打开 Internet Explorer 并浏览到 https://www.microsoft.com

  3. 出现 Internet Explorer 安全警报时,请选择“确定”“关闭”。

    应会看到 Azure 主页。

  4. 浏览到 https://www.baidu.com

    防火墙应该会阻止此操作。

现已验证防火墙应用程序规则可正常工作:

  • 可以浏览到一个允许的 FQDN,但不能浏览到其他任何 FQDN。

测试网络规则

现在,使用 HTTP 从 Srv-Workload-01 连接到 Srv-Workload-02 来测试网络规则。

  1. Srv-Workload-02 上测试与 Nginx Web 服务器的 HTTP 连接:

    curl http://<Srv-Workload-02-private-IP>
    

    应会看到 Web 服务器返回的状态。

清理资源

完成防火墙资源测试后,删除 fw-manager-rg 资源组,以删除所有与防火墙相关的资源。

后续步骤