練習 -通過 Azure 防火牆來路由傳送網路流量

已完成

在先前的練習中,您已部署 Azure 防火牆。 現在,您需要通過防火牆來路由傳送所有網路流量,並使用防火牆規則來篩選流量。 完成後,Azure 防火牆將會保護 Azure 虛擬桌面的輸出網路流量。

路由傳送所有流量通過防火牆

針對主機集區所使用的子網,設定輸出預設路由以通過防火牆。 您將完成下列三個步驟:

  1. 在與您的主機集區 VM 和防火牆相同的資源群組中建立路由表。
  2. 將路由表關聯至主機集區 VM 所使用的子網路。
  3. 在路由表上,新增通往防火牆的路由。

完成這些步驟之後,所有流量都會路由傳送至 Azure 防火牆。

建立路由表

首先,您將建立名為 firewall-route 的路由表。

  1. Azure 入口網站中,搜尋並選取 [路由表]

  2. 選取 + 建立

  3. 使用下列值:

    欄位
    訂用帳戶 您的訂用帳戶
    資源群組 learn-firewall-rg
    區域 選取您先前使用的相同位置。
    名稱 firewall-route

    Screenshot that shows the information to include when creating a route table.

  4. 選取 [檢閱 + 建立]>[建立]

  5. 完成部署後,選取 [移至資源]

將路由表關聯至工作負載的子網路

現在,您會將 firewall-route 關聯至主機集區的子網路。

  1. 在 [firewall-route] 的 [設定] 下,選取 [子網路]Screenshot that shows the subnet option under settings for the firewall route.

  2. 選取 [+ 建立關聯]

  3. 選取下列值:

    欄位
    虛擬網路 hostVNet
    子網路 hostSubnet
  4. 選取 [ 確定 ],等到加入關聯為止。

在路由表中新增路由

最後一個步驟是在路由表上新增通往 Azure 防火牆的路由。 完成此步驟之後,主機集區虛擬網路上的所有網路流量都會可以經由路由通過 Azure 防火牆。

  1. 在 [設定] 下,選取 [路由]

    Screenshot that shows the routes option under settings on the firewall route table.

  2. 選取 [+ 新增]。

  3. 輸入下列值:

    欄位
    路由名稱 fw-rt
    目的地類型 IP 位址
    目的地 IP 位址/CIDR 範圍 0.0.0.0/0
    下一個躍點類型 虛擬設備
    下一個躍點位址 貼上先前練習單元中的 [防火牆私人 IP 位址]。 您可以在 [防火牆] 頁面底下找到此 IP (列為 [防火牆私人 IP])。

    Screenshot that shows the information to include when adding a route.

  4. 選取新增

建立應用程式規則集合

根據預設,防火牆會拒絕對所有內容的存取,因此您必須設定允許流量通過防火牆的條件。

建立應用程式規則集合,並於其中新增規則以允許 Azure 虛擬桌面存取數個完整網域名稱 (FQDN)。

  1. 在 Azure 入口網站中,搜尋並選取 [防火牆]

  2. 選取 [learn-fw] 防火牆。

  3. 在 [設定] 底下,選取 [規則 (傳統)]Screenshot that shows the rules classic option under settings in the firewall.

  4. 選取 [應用程式規則集合] 索引標籤,然後選取 [新增應用程式規則集合]Screenshot that shows the application rule collection tab with the add application rule collection option.

  5. 輸入下列資訊:

    欄位
    名稱 app-coll01
    優先順序 200
    動作 允許
  6. 在 [規則] 下的 [FQDN 標籤] 區段中,輸入下列資訊:

    欄位
    名稱 allow-virtual-desktop
    來源類型 IP 位址
    Source hostVNet 的位址空間,例如 10.0.0.0/16
    FQDN 標籤 Windows 虛擬桌面
  7. 在 [規則] 下的 [目標 FQDN] 區段中,輸入下列資訊:

    欄位
    名稱 allow-storage-service-bus-accounts
    來源類型 IP 位址
    Source hostVNet 的位址空間,例如 10.0.0.0/16
    通訊協定:連接埠 https
    目標 FQDN *xt.blob.core.windows.net、 、 *eh.servicebus.windows.net*xt.table.core.windows.net
  8. 完成後,表單會如下圖所示:Screenshot that shows the application rule collection form filled out.

  9. 選取新增

建立網路規則集合

假設我們的案例使用 Microsoft Entra Domain Services (Microsoft Entra Domain Services),所以您不需要建立網路規則來允許 DNS。 然而,您需要建立規則來允許流量從 Azure 虛擬桌面 VM 流向 Windows 啟用服務。 為了讓我們的網路規則允許金鑰管理服務 (KMS),請使用適用於 Azure 全球雲端的 KMS 伺服器目的地 IP 位址。

  1. 在 [learn-fw]>[規則 (傳統)] 上,選取 [網路規則集合]

  2. 選取 [網路規則集合] 索引標籤,然後選取 [新增網路規則集合]Screenshot that shows the network rule collection tab with the add network rule collection option.

  3. 輸入下列資訊:

    欄位
    名稱 net-coll01
    優先順序 200
    動作 允許
  4. 在 [規則] 下的 [IP 位址] 區段中,輸入下列資訊:

    欄位
    名稱 allow-kms
    通訊協定 TCP
    來源類型 IP 位址
    Source hostVNet 的位址空間,例如 10.0.0.0/16
    目的地類型 IP 位址
    目的地位址 23.102.135.246
    目的地連接埠 1688
  5. 完成後,表單會如下圖所示:Screenshot that shows the network rule collection form filled out.

  6. 選取新增

檢查您的工作

至此,您已通過防火牆來路由傳送 Azure 虛擬桌面的所有網路流量。 讓我們確認防火牆是否如預期般運作。 來自主機集區的輸出網路流量應該會通過防火牆,並路由傳送至 Azure 虛擬桌面服務。 您可以藉由檢查服務元件的狀態,確認防火牆允許流量通過該服務。

  1. 在 Azure Cloud Shell 中執行下列命令:

    "rdgateway", "rdbroker","rdweb"|% `
    {Invoke-RestMethod -Method:Get `
    -Uri https://$_.wvd.microsoft.com/api/health}|ft `
    -Property Health,TimeStamp,ClusterUrl
    
  2. 您應該會得到類似下列結果的情形,也就是列出的三個元件服務全都狀況良好:

    Health               TimeStamp           ClusterUrl
    ------               ---------           ----------
    RDGateway is Healthy 7/2/2021 6:00:00 PM https://rdgateway-c101-cac-r1.wvd.microsoft.com/
    RDBroker is Healthy  7/2/2021 6:00:00 PM https://rdbroker-c100-cac-r1.wvd.microsoft.com/
    RDWeb is Healthy     7/2/2021 6:00:00 PM https://rdweb-c100-cac-r1.wvd.microsoft.com/
    

    如果有一或多個元件狀況不良,則表示防火牆未如預期般運作。