使用 Azure 入口網站部署及設定 Azure 防火牆

控制輸出網路存取是整體網路安全性計畫的重要部分。 例如,您可以限制對網站的存取。 或者,限制可存取的輸出 IP 位址和連接埠。

您可從 Azure 子網路控制輸出網路存取的方式之一是使用 Azure 防火牆。 您可以使用 Azure 防火牆來設定:

  • 會定義可從子網路存取的完整網域名稱 (FQDN) 的應用程式規則。
  • 網路規則,用以定義來源位址、通訊協定、目的地連接埠和目的地位址。

當您將網路流量路由傳送至防火牆作為子網路預設閘道時,網路流量會受限於已設定的防火牆規則。

在本文中,您會建立具有兩個子網路的簡易單一虛擬網路,以便進行簡單部署。

對於生產環境部署,建議您使用中樞和支點模型,其中防火牆會位於自己的虛擬網路中。 工作負載伺服器位於相同區域中的對等互連虛擬網路,其中包含一個或多個子網路。

  • AzureFirewallSubnet - 防火牆位於此子網路。
  • Workload-SN - 工作負載伺服器位於此子網路。 此子網路的網路流量會通過防火牆。

網路基礎結構

在本文中,您將學會如何:

  • 設定測試網路環境
  • 部署防火牆
  • 建立預設路由
  • 設定允許存取 www.google.com 的應用程式規則
  • 設定允許存取外部 DNS 伺服器的網路規則
  • 設定 NAT 規則以允許遠端桌面連線至測試伺服器
  • 測試防火牆

注意

本文使用傳統防火牆規則來管理防火牆。 慣用方法為使用防火牆原則。 若要使用防火牆原則完成此程序,請參閱教學課程:使用 Azure 入口網站部署和設定 Azure 防火牆和原則

如果您想要的話,可以使用 Azure PowerShell 完成本程序。

必要條件

如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶

設定網路

首先,請建立資源群組,以包含部署防火牆所需的資源。 然後建立虛擬網路、子網路和測試伺服器。

建立資源群組

該資源群組包含此程序中使用的所有資源。

  1. 登入 Azure 入口網站
  2. 在 Azure 入口網站功能表上,選取 [資源群組],或從任何頁面搜尋並選取 [資源群組]。 然後選取建立
  3. 在 [訂閱] 的部分,選取您的訂閱。
  4. 在 [資源群組名稱] 中,鍵入 Test-FW-RG
  5. 針對 [區域],選取區域。 您建立的所有其他資源都必須位於相同區域。
  6. 選取 [檢閱 + 建立]。
  7. 選取 建立

建立虛擬網路

此虛擬網路有兩個子網路。

注意

AzureFirewallSubnet 子網路的大小是 /26。 如需有關子網路大小的詳細資訊,請參閱 Azure 防火牆的常見問題集

  1. 在 Azure 入口網站功能表上,或從 [首頁] 頁面搜尋虛擬網路
  2. 在結果窗格中選取 [虛擬網路]
  3. 選取 建立
  4. 在 [訂閱] 的部分,選取您的訂閱。
  5. 在 [資源群組] 中,選取 [Test-FW-RG]
  6. 針對 [虛擬網路名稱],輸入 Test-FW-VN
  7. 在 [區域] 中,選取您先前使用的相同區域。
  8. 選取 [下一步]。
  9. 在 [安全性] 索引標籤上,選取 [啟用 Azure 防火牆]
  10. 針對 [Azure 防火牆名稱],輸入 Test-FW01
  11. 針對 [Azure 防火牆公用 IP 位址],選取 [建立公用 IP 位址]
  12. 針對[名稱],輸入 fw-pip,然後選取 [確定]
  13. 選取 [下一步]。
  14. 針對 [位址空間],請接受預設的 10.0.0.0/16
  15. 在 [子網路] 底下,選取 [預設值],並將 [名稱] 變更為 Workload-SN
  16. 針對 [起始位址],將它變更為 10.0.2.0/24
  17. 選取 [儲存]。
  18. 選取 [檢閱 + 建立]。
  19. 選取 建立

建立虛擬機器

現在,建立工作負載虛擬機器並放在 Workload-SN 子網路中。

  1. 從 Azure 入口網站功能表或 [首頁] 頁面,選取 [建立資源]。

  2. 選取 [Windows Server 2019 Datacenter]

  3. 依虛擬機器輸入這些值:

    設定
    資源群組 Test-FW-RG
    虛擬機器名稱 Srv-Work
    區域 同前
    映像 Windows Server 2019 Datacenter
    系統管理員使用者名稱 輸入使用者名稱
    密碼 輸入密碼
  4. 在 [輸入連接埠規則] 下,針對 [公用輸入連接埠] 選取 [無]

  5. 接受其他預設值,然後選取 [下一步: 磁碟]

  6. 接受磁碟預設值,然後選取 [下一步: 網路]

  7. 確定您已選取 [Test-FW-VN] 作為虛擬網路,而且子網路是 [Workload-SN]

  8. 在 [公用 IP] 中,選取 [無]

  9. 接受其他預設值,然後選取 [下一步: 管理]

  10. 接受預設值,然後選取 [下一步: 監視]

  11. 針對 [開機診斷],選取 [停用] 以停用開機診斷。 接受其他預設值,然後選取 [檢閱 + 建立]

  12. 檢閱摘要頁面上的設定,然後選取 [建立]

  13. 部署完成後,選取 [前往資源],並記下您稍後需要使用的 Srv-Work 私人 IP 位址。

注意

Azure 會針對未獲指派公用 IP 位址或位於內部基本 Azure 負載平衡器後端集區中的 VM,提供預設輸出存取 IP。 預設輸出存取 IP 機制能提供無法自行設定的輸出 IP 位址。

發生下列其中一個事件時,會停用預設輸出存取 IP:

  • 系統會指派公用 IP 位址給 VM。
  • 無論有沒有輸出規則,都會將 VM 放在標準負載平衡器的後端集區中。
  • Azure NAT 閘道資源會指派給 VM 的子網。

在彈性協調流程模式中使用虛擬機器擴展集建立的 VM 不會有預設輸出存取。

如需 Azure 中輸出連線的詳細資訊,請參閱 Azure 中的預設對外存取針對輸出連線使用來源網路位址轉譯 (SNAT)

檢查防火牆

  1. 移至資源群組,並選取防火牆。
  2. 請注意防火牆的私人和公用 IP 位址。 您稍後將會用到這些位址。

建立預設路由

建立通過防火牆輸出和輸入連線的路由時,虛擬裝置私人 IP 的預設路由 0.0.0.0/0 可作為下一個躍點。 這會透過防火牆引導任何傳出和傳入的連線。 例如:若防火牆正在完成 TCP 交握並回應傳入的要求,便會將回應導向傳送流量的 IP 位址。 這是原廠設定。

因此,不需要建立另一個使用者定義的路由來包含 AzureFirewallSubnet IP 範圍。 這可能會導致捨棄連線。 原始的預設路由已足夠。

Workload-SN 子網路中,設定通過防火牆的輸出預設路由。

  1. 在 Azure 入口網站上,搜尋路由表
  2. 在結果窗格中選取 [路由表]
  3. 選取 建立
  4. 在 [訂閱] 的部分,選取您的訂閱。
  5. 在 [資源群組] 中,選取 [Test-FW-RG]
  6. 針對 [區域],選取您先前使用的相同位置。
  7. 在 [名稱] 中,鍵入 Firewall-route
  8. 選取 [檢閱 + 建立]。
  9. 選取 建立

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

  1. 在 [防火牆路由] 頁面上,選取 [子網路],然後選取 [關聯]

  2. 針對 [虛擬網路],選取 Test-FW-VN

  3. 在 [子網路] 中,選取 [Workload-SN]。 請確定您只為此路由選取 Workload-SN 子網路,否則防火牆將無法正常運作。

  4. 選取 [確定]。

  5. 選取 [路由],然後選取 [確定]

  6. 在 [路由名稱] 中,鍵入 fw-dg

  7. 針對 [目的地類型],選取 [IP 位址]

  8. 在 [目的地 IP 位址/CIDR 範圍] 中,輸入 [0.0.0.0/0]

  9. 在 [下一個躍點類型] 中,選取 [虛擬設備]

    Azure 防火牆實際上是受管理的服務,但虛擬設備可在此情況下運作。

  10. 在 [下一個躍點位址] 中,鍵入您先前記下的防火牆私人 IP 位址。

  11. 選取 [新增]。

設定應用程式規則

此應用程式規則允許對 www.google.com 進行輸出存取。

  1. 開啟 Test-FW-RG,然後選取 Test-FW01 防火牆。
  2. [Test-FW01] 頁面的 [設定] 下,選取 [規則 (傳統)]
  3. 選取 [應用程式規則集合] 索引標籤。
  4. 選取 [新增應用程式規則集合]
  5. 在 [名稱] 中,鍵入 App-Coll01
  6. 在 [優先順序] 中,鍵入 200
  7. 在 [動作] 中,選取 [允許]
  8. 在 [規則]、[目標 FQDN] 底下,針對 [名稱] 輸入 Allow-Google
  9. 針對 [來源類型],選取 [IP 位址]
  10. 針對 [來源],輸入 10.0.2.0/24
  11. 在 [通訊協定:連接埠] 中,鍵入 http、https
  12. 針對 [目標 FQDN],輸入 www.google.com
  13. 選取 [新增]。

Azure 防火牆包含一組內建規則集合,適用於預設為允許的基礎結構 FQDN。 這些 FQDN 為平台所特有,無法用於其他用途。 如需詳細資訊,請參閱基礎結構 FQDN

設定網路規則

此網路規則允許透過連接埠 53,對兩個 IP 位址進行輸出存取 (DNS)。

  1. 選取 [網路規則集合] 索引標籤。

  2. 選取 [新增網路規則集合]

  3. 在 [名稱] 中,鍵入 Net-Coll01

  4. 在 [優先順序] 中,鍵入 200

  5. 在 [動作] 中,選取 [允許]

  6. 在 [規則]、[IP 位址] 底下,針對 [名稱] 輸入 Allow-DNS

  7. 在 [通訊協定] 中,選取 [UDP]

  8. 針對 [來源類型],選取 [IP 位址]

  9. 針對 [來源],輸入 10.0.2.0/24

  10. 針對 [目的地類型],選取 [IP 位址]

  11. 針對 [目的地位址],輸入 209.244.0.3,209.244.0.4

    這些是由 Level3 運作的公用 DNS 伺服器。

  12. 在 [目的地連接埠] 中,鍵入 53

  13. 選取 [新增]。

設定 DNAT 規則

此規則可讓您透過防火牆將遠端桌面連線至 Srv-Work 虛擬機器。

  1. 選取 [NAT 規則集合] 索引標籤。
  2. 選取 [新增 NAT 規則集合]
  3. 針對 [名稱] 輸入 rdp
  4. 在 [優先順序] 中,鍵入 200
  5. 在 [規則] 下的 [名稱] 中,輸入 rdp-nat
  6. 在 [通訊協定] 中,選取 [TCP]
  7. 針對 [來源類型],選取 [IP 位址]
  8. 針對 [來源],輸入 *
  9. 在 [目的地位址] 中,輸入防火牆的公用 IP 位址。
  10. 在 [目的地連接埠] 中,輸入 3389
  11. 針對 [轉譯的位址] 中,輸入 Srv-work 私人 IP 位址。
  12. 在 [轉譯的連接埠] 中,輸入 3389
  13. 選取 [新增]。

變更 Srv-Work 網路介面的主要和次要 DNS 位址

基於測試目的,設定伺服器的主要和次要 DNS 位址。 這不是一般的 Azure 防火牆需求。

  1. 在 Azure 入口網站功能表上,選取 [資源群組],或從任何頁面搜尋並選取 [資源群組]。 選取 Test-FW-RG 資源群組。
  2. 選取 Srv-Work 虛擬機器的網路介面。
  3. 選取 [設定] 底下的 [DNS 伺服器]
  4. 選取 [DNS 伺服器] 底下的 [自訂]
  5. 在 [新增 DNS 伺服器] 文字輸入框中,輸入 209.244.0.3 然後按 Enter,並在下一個文字輸入框中輸入 209.244.0.4
  6. 選取 [儲存]。
  7. 重新啟動 Srv-Work 虛擬機器。

測試防火牆

現在請測試防火牆,以確認其運作符合預期。

  1. 將遠端桌面連線至防火牆公用 IP 位址,並登入 Srv-Work 虛擬機器。

  2. 開啟 Internet Explorer 並瀏覽至 https://www.google.com

  3. 在 Internet Explorer 安全性警示上,選取 [確認]>[關閉]

    您應該會看到 Google 首頁。

  4. 瀏覽至 https://www.microsoft.com

    防火牆應該會封鎖您。

現在您已驗證防火牆規則正在運作:

  • 您可使用 RDP 連線到虛擬機器。
  • 您可以瀏覽至允許 FQDN 的防火牆規則,但不可瀏覽至任何其他的防火牆規則。
  • 您可以使用設定的外部 DNS 伺服器來解析 DNS 名稱。

清除資源

您可保留防火牆資源以便繼續測試。若不再需要,則可刪除 Test-FW-RG 資源群組,以刪除所有防火牆相關資源。

下一步