教學課程:使用 Azure DDoS 保護來保護公用負載平衡器

Azure DDoS 保護可啟用增強的 DDoS 風險降低功能,例如自適性調整、攻擊警示通知和監視,以保護公用負載平衡器免於大規模 DDoS 攻擊。

重要

使用網路保護 SKU 時,會衍生 Azure DDoS 保護的成本。 只有在租用戶中保護超過 100 個公用 IP 時,才會收取超額費用。 如果您未來不會使用這些資源,請務必刪除本教學課程中的資源。 如需定價的相關資訊,請參閱 Azure DDoS 保護定價。 如需 Azure DDoS 保護的詳細資訊,請參閱什麼是 Azure DDoS 保護?

在本教學課程中,您會了解如何:

  • 建立 DDoS 保護計劃。
  • 建立已啟用 DDoS 保護和 Bastion 服務的虛擬網路。
  • 使用前端 IP、健全狀態探查、後端設定和負載平衡規則,建立標準 SKU 公用負載平衡器。
  • 為後端集區建立用於輸出網際網路存取的 NAT 閘道。
  • 建立虛擬機器,然後在 VM 上安裝並設定 IIS,以示範連接埠轉送和負載平衡規則。

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

必要條件

  • 具有有效訂用帳戶的 Azure 帳戶。

建立 DDoS 保護計劃

  1. 登入 Azure 入口網站

  2. 在入口網站頂端的搜尋方塊中,輸入 DDoS 保護。 在搜尋結果中選取 [DDoS 保護計劃],然後選取 [+ 建立]

  3. 在 [建立 DDoS 保護計劃] 頁面的 [基本] 索引標籤中,輸入或選取下列資訊:

    建立 DDoS 保護方案的螢幕快照。

    設定
    專案詳細資料
    訂用帳戶 選取 Azure 訂閱。
    資源群組 選取 [新建]
    輸入 TutorLoadBalancer-rg
    選取 [確定]。
    [執行個體詳細資料]
    名稱 輸入 myDDoSProtectionPlan
    區域 選取 [(美國) 美國東部]
  4. 選取 [檢閱 + 建立],然後選取 [建立] 以部署 DDoS 保護計劃。

建立虛擬網路

在本節中,您將建立虛擬網路、子網路、Azure Bastion 主機,並產生與 DDoS 保護計劃的關聯。 虛擬網路和子網路包含負載平衡器和虛擬機器。 堡壘主機能用來安全管理虛擬機器,並安裝 IIS 來測試負載平衡器。 DDoS 保護計劃會保護虛擬網路中的所有公用 IP 資源。

重要

每小時定價從 Bastion 部署的那一刻開始,不論輸出資料使用量為何。 如需詳細資訊,請參閱價格SKU。 如果您要將 Bastion 部署為教學課程或測試的一部份,建議您在使用完畢後刪除此資源。

  1. 在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。

  2. 在 [虛擬網路] 中選取 [+ 建立]。

  3. 在 [建立虛擬網路] 的 [基本] 索引標籤中,輸入或選取下列資訊:

    設定
    專案詳細資料
    訂用帳戶 選取 Azure 訂閱。
    資源群組 選取 [TutorLoadBalancer-rg]
    [執行個體詳細資料]
    名稱 輸入 myVNet
    區域 選取 [美國東部]
  4. 選取 [IP 位址] 索引標籤,或頁面底部的 [下一步:IP 位址] 按鈕。

  5. 在 [IP 位址] 索引標籤中,輸入這項資訊:

    設定
    IPv4 位址空間 輸入 10.1.0.0/16
  6. 在 [子網路名稱] 下,選取 [預設] 一詞。 如果子網路不存在,請選取 [+ 新增子網路]

  7. 在 [編輯子網路] 中,輸入這項資訊:

    設定
    子網路名稱 輸入 myBackendSubnet
    子網路位址範圍 輸入 10.1.0.0/24
  8. 選取 [儲存] 或 [新增]

  9. 選取安全性索引標籤。

  10. 在 [BastionHost] 底下,選取 [啟用]。 輸入此資訊:

    設定
    Bastion 名稱 輸入 myBastionHost
    AzureBastionSubnet 位址空間 輸入 10.1.1.0/26
    公用 IP 位址 選取 [新建]
    在 [名稱] 中輸入 myBastionIP
    選取 [確定]。
  11. 在 [DDoS 網路保護] 下,選取 [啟用]。 然後從下拉式功能表中,選取 [myDDoSProtectionPlan]

    在虛擬網路建立期間啟用 DDoS 的螢幕快照。

  12. 選取 [檢閱 + 建立] 索引標籤,或選取 [檢閱 + 建立] 按鈕。

  13. 選取 建立

    注意

    虛擬網路和子網路會立即建立。 Bastion 主機的建立會以作業的形式提交,並於 10 分鐘內完成。 建立 Bastion 主機時,您可以繼續進行後續步驟。

建立負載平衡器

在本節中,您會建立區域備援負載平衡器以平衡虛擬機器的負載。 透過區域備援,即便有一或多個可用性區域可能失敗,但是地區中只要有一個區域維持良好狀況,資料路徑就得以存留。

建立負載平衡器期間,您將會設定:

  • 前端 IP 位址
  • 後端集區
  • 輸入負載平衡規則
  • 健康狀態探查
  1. 在入口網站頂端的搜尋方塊中,輸入負載平衡器。 在搜尋結果中選取 [負載平衡器]。

  2. 在 [負載平衡器] 頁面中,選取 [+ 建立]。

  3. 在 [建立負載平衡器] 頁面的 [基本] 索引標籤中,輸入或選取下列資訊:

    設定
    專案詳細資料
    訂用帳戶 選取您的訂用帳戶。
    資源群組 選取 [TutorLoadBalancer-rg]
    [執行個體詳細資料]
    名稱 輸入 myLoadBalancer
    區域 選取 [美國東部]
    SKU 保留預設值 [標準]
    類型 選取 [公用]
    保留預設值 [區域]。

    建立標準負載平衡器基本數據索引標籤的螢幕快照。

  4. 在頁面底端選取 [下一步:前端 IP 設定]。

  5. 在 [前端 IP 設定] 中,選取 [+ 新增前端 IP 設定]

  6. 在 [名稱] 中輸入 MyFrontEnd

  7. 選取 [IPv4] 作為 [IP 版本]

  8. 選取 [IP 位址] 作為 [IP 類型]。

    注意

    如需 IP 首碼的詳細資訊,請參閱 Azure 公用 IP 位址首碼

  9. 選取 [公用 IP 位址] 中的 [新建]。

  10. 在 [新增公用 IP 位址] 中,輸入 myPublicIP 作為 [名稱]。

  11. 選取 [可用性區域] 中的 [區域備援]。

    注意

    在具有可用性區域的區域中,您可以選取 [無區域] (預設選項)、特定區域或區域備援。 選擇將取決於您的特定網域失敗需求。 在沒有可用性區域的區域中,不會出現此欄位。
    如需關於可用性區域的詳細資訊,請參閱可用性區域概觀

  12. 針對 [路由喜好設定] 保留 [Microsoft 網路] 的預設值。

  13. 選取 [確定]。

  14. 選取 [新增]。

  15. 選取頁面底部的 [下一步:後端集區]。

  16. 在 [後端集區] 索引標籤中選取 [+ 新增後端集區]。

  17. 在 [新增後端集區] 中輸入 myBackendPool 作為 [名稱]。

  18. 在 [虛擬網路] 中,選取 [myVNet]

  19. 針對 [後端集區設定] 選取 [IP 位址]

  20. 選取 [儲存]。

  21. 選取頁面底部的 [下一步:輸入規則]

  22. 在 [輸入規則] 索引標籤中的 [負載平衡規則] 底下,選取 [+ 新增負載平衡規則]

  23. 在 [新增負載平衡規則] 中輸入或選取以下資訊:

    設定
    名稱 輸入 myHTTPRule
    IP 版本 根據需求選擇 [IPv4] 或 [IPv6]。
    前端 IP 位址 選取 [myFrontend (尚待建立)]
    後端集區 選取 [myBackendPool]
    通訊協定 選取 [TCP]。
    連接埠 輸入 80
    後端連接埠 輸入 80
    健康狀態探查 選取 [新建]
    在 [名稱] 中輸入 myHealthProbe
    在 [通訊協定] 中選取 [TCP]
    保留其餘的預設值,然後選取 [確定]。
    工作階段持續性 選取 [無]。
    閒置逾時 (分鐘) 輸入或選取 [15]。
    TCP 重設 選取 [啟用] 。
    浮動 IP 選取 [已停用]
    輸出來源網路位址轉譯 (SNAT) 保留預設值 [(建議) 使用輸出規則,對後端集區成員提供網際網路的存取權]。
  24. 選取 [新增]。

  25. 選取頁面底部的 [檢閱 + 建立] 藍色按鈕。

  26. 選取 建立

    注意

    此範例將會建立 NAT 閘道,來提供輸出網際網路的存取。 設定中的 [輸出規則] 索引標籤會略過,因為這是選擇性選項,而 NAT 閘道不需要這項選擇。 如需 Azure NAT 閘道的詳細資訊,請參閱什麼是 Azure 虛擬網路 NAT?如需 Azure 中輸出連線的詳細資訊,請參閱輸出連線的來源網路位址轉譯 (SNAT)

建立 NAT 閘道

在本節中,您將建立 NAT 閘道,針對虛擬網路中的資源進行輸出網際網路存取。 如需輸出規則的其他選項,請參閱輸出連線的網路位址轉譯 (SNAT)

  1. 在入口網站頂端的搜尋方塊中,輸入 NAT 閘道。 在搜尋結果中,選取 [NAT 閘道]。

  2. 在 [NAT 閘道] 中,選取 [+ 建立]。

  3. 在 [建立網路位址轉譯 (NAT) 閘道] 中,輸入或選取下列資訊:

    設定
    專案詳細資料
    訂用帳戶 選取您的訂用帳戶。
    資源群組 選取 [TutorLoadBalancer-rg]
    [執行個體詳細資料]
    NAT 閘道名稱 輸入 myNATgateway
    區域 選取 [美國東部]
    可用性區域 選取 [無]。
    閒置逾時 (分鐘) 輸入 15
  4. 選取 [輸出 IP] 索引標籤,或選取頁面底部的 [下一步: 輸出 IP] 按鈕。

  5. 在 [輸出 IP] 中,選取 [公用 IP 位址] 旁邊的 [建立新的公用 IP 位址]。

  6. 在 [名稱] 中,輸入 myNATgatewayIP

  7. 選取 [確定]。

  8. 選取 [子網路] 索引標籤,或選取頁面底部的 [下一步:子網路] 按鈕。

  9. 在 [子網路] 索引標籤的 [虛擬網路] 中,選取 [myVNet]。

  10. 選取 [子網路名稱] 底下的 [myBackendSubnet]。

  11. 選取頁面底部的 [檢閱 + 建立] 藍色按鈕,或是選取 [檢閱 + 建立] 索引標籤。

  12. 選取 建立

建立虛擬機器

在本節中,會在兩個不同區域 (區域 1區域 2) 中建立兩個 VM (myVM1myVM2)。

這些 VM 會新增至先前建立之負載平衡器的後端集區。

  1. 在入口網站頂端的搜尋方塊中,輸入虛擬機器。 在搜尋結果中,選取 [虛擬機器]。

  2. 在 [虛擬機器] 中,選取 [+ 建立]>[Azure 虛擬機器]

  3. 在 [建立虛擬機器] 中,輸入或選取 [基本資訊] 索引標籤中的下列值:

    設定
    專案詳細資料
    訂用帳戶 選取您的 Azure 訂用帳戶
    資源群組 選取 [TutorLoadBalancer-rg]
    [執行個體詳細資料]
    虛擬機器名稱 輸入 myVM1
    區域 選取 [(美國) 美國東部]
    可用性選項 選取 [可用性區域]
    可用性區域 選取 [區域 1]
    安全性類型 選取 [標準]。
    映像 選取 [Windows Server 2022 Datacenter:Azure Edition - Gen2]
    Azure Spot 執行個體 保留預設值 [未核取]。
    大小 選擇 VM 大小或接受預設設定
    系統管理員帳戶
    使用者名稱 輸入使用者名稱
    密碼 輸入密碼
    確認密碼 再次輸入密碼
    輸入連接埠規則
    公用輸入連接埠 選取 [無]
  4. 選取 [網路] 索引標籤,或選取 [下一步: 磁碟],然後選取 [下一步: 網路]

  5. 在 [網路] 索引標籤中,選取或輸入下列資訊:

    設定
    網路介面
    虛擬網路 選取 [myVNet]
    子網路 選取 [myBackendSubnet]
    公用 IP 選取 [無]。
    NIC 網路安全性群組 選取 [進階]
    設定網路安全性群組 在其餘設定完成之前,請略過此設定。 選取後端集區之後完成。
    在刪除 VM 時,就將 NIC 予以刪除 將預設保留為未選取
    加速網路 將預設保留為未選取
    負載平衡
    負載平衡選項
    負載平衡選項 選取 [Azure Load Balancer]
    選取負載平衡器 選取 [myLoadBalancer]
    選取後端集區 選取 [myBackendPool]
    設定網路安全性群組 選取 [新建]
    在 [建立網路安全性群組] 的 [名稱] 中,輸入 myNSG
    在 [輸入規則] 下,選取 [+新增輸入規則]。
    在 [服務] 下,選取 [HTTP]。
    在 [優先順序] 下,輸入 100
    在 [名稱] 中,輸入 MyNSGRule
    選取 [新增]
    選取 [確定]
  6. 選取 [檢閱 + 建立]。

  7. 檢閱設定,然後選取 [建立]

  8. 依照步驟 1 到 7,使用下列值以及與 myVM1 相同的其他設定,來建立另一個 VM:

    設定 VM 2
    名稱 myVM2
    可用性區域 區域 2
    網路安全性群組 選取現有的 myNSG

注意

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

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

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

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

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

安裝 IIS

  1. 在入口網站頂端的搜尋方塊中,輸入虛擬機器。 在搜尋結果中,選取 [虛擬機器]。

  2. 選取 [myVM1]。

  3. 在 [概觀] 頁面上,選取 [連線],然後選 [Bastion]。

  4. 輸入在 VM 建立期間輸入的使用者名稱和密碼。

  5. 選取 Connect

  6. 在伺服器桌面上,瀏覽至 [開始]>[Windows PowerShell]>[Windows PowerShell]

  7. 在 PowerShell 視窗中執行下列命令,以便:

    • 安裝 IIS 伺服器
    • 移除預設的 iisstart.htm 檔案
    • 新增顯示 VM 名稱的新 iisstart.htm 檔案:
     # Install IIS server role
     Install-WindowsFeature -name Web-Server -IncludeManagementTools
    
     # Remove default htm file
     Remove-Item  C:\inetpub\wwwroot\iisstart.htm
    
     # Add a new htm file that displays server name
     Add-Content -Path "C:\inetpub\wwwroot\iisstart.htm" -Value $("Hello World from " + $env:computername)
    
    
  8. 關閉 myVM1 的 Bastion 工作階段。

  9. 重複步驟 1 到 8,在 myVM2 上安裝 IIS 與更新的 iisstart.htm 檔案。

測試負載平衡器

  1. 在入口網站頂端的搜尋方塊中,輸入公用 IP。 在搜尋結果中,選取 [公用 IP 位址]

  2. 在 [公用 IP 位址] 中,選取 [myPublicIP]

  3. 複製 [IP 位址] 中的項目。 將該公用 IP 貼入您瀏覽器的網址列。 IIS 網頁伺服器的自訂 VM 頁面會顯示在瀏覽器中。

    負載平衡器測試的螢幕快照。

清除資源

若不再需要,可刪除資源群組、負載平衡器和所有相關資源。 若要這樣做,選取含有該資源的資源群組 TutorLoadBalancer-rg,然後選取 [刪除]

下一步

請前往下一篇文章以了解如何: