Partager via

教程:使用 Azure DDoS Protection 保护公共负载均衡器

Azure DDoS Protection支持增强的 DDoS 缓解功能,例如自适应优化、攻击警报通知和监视,以保护公共负载均衡器免受大规模 DDoS 攻击。

重要

使用网络保护 SKU 时,Azure DDoS Protection会产生费用。 仅在租户中受保护的公共 IP 超过 100 个时,才会收取超额费用。 如果将来不使用本教程中的资源,请确保将其删除。 有关定价的信息,请参阅 Azure DDoS Protection 定价。 有关Azure DDoS protection的详细信息,请参阅 什么是 Azure DDoS Protection?

本教程中,您将学习如何:

  • 创建 DDoS 防护计划。
  • 创建启用了 DDoS 保护和 Bastion 服务的virtual network。
  • 使用前端 IP、运行状况探测、后端配置和负载均衡规则创建标准 SKU 公共负载均衡器。
  • 为后端池创建出站互联网访问的NAT网关。
  • 创建虚拟机,然后在 VM 上安装和配置 IIS,以演示端口转发和负载均衡规则。

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

先决条件

  • 具有活动订阅的Azure帐户。

创建 DDoS 防护计划

  1. 登录到 Azure portal

  2. 在门户顶部的搜索框中,输入“DDoS 防护”。 在搜索结果中选择“DDoS 防护计划”,然后选择“+创建”。

  3. 在“创建 DDoS 防护计划”页的“基本信息”选项卡上,输入或选择以下信息:

    屏幕截图显示如何创建 DDoS 防护计划。

    设置 价值
    项目详细信息
    订阅 选择Azure订阅。
    资源组 选择“新建”。
    输入 TutorLoadBalancer-rg
    选择“确定”。
    实例详细信息
    名称 输入“myDDoSProtectionPlan”。
    区域 选择“(亚太)中国东部”。
  4. 请选择“审核 + 创建”,然后选择“创建”以部署 DDoS 防护计划。

创建虚拟网络

在本部分中,你将创建一个virtual network、子网、Azure Bastion主机,并关联 DDoS 防护计划。 虚拟网络和子网包含负载均衡器和虚拟机。 堡垒主机用于安全地管理虚拟机,并安装 IIS(Internet Information Services)以测试负载均衡器。 DDoS 保护计划将保护virtual network中的所有公共 IP 资源。

  1. 在门户顶部的搜索框中,输入 Virtual network。 在搜索结果中,选择“虚拟网络”。

  2. 在“虚拟网络”中,选择“+ 创建” 。

  3. Create virtual network 中,在 Basics 选项卡中输入或选择以下信息:

    设置 价值
    项目详细信息
    订阅 选择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”下,选择“启用”。 输入此信息:

    设置 价值
    堡垒名称 输入“myBastionHost”
    AzureBastionSubnet 地址空间 输入“10.1.1.0/26”
    公共 IP 地址 选择“新建”。
    对于名称,请输入 myBastionIP
    选择“确定”。
  11. 在“DDoS 网络保护”下,选择“启用”。 然后从下拉菜单中选择“myDDoSProtectionPlan”。

    启用DDoS时创建虚拟网络的截图。

  12. 选择“查看 + 创建” 选项卡,或选择“查看 + 创建” 按钮。

  13. 选择 创建

    注释

    虚拟网络和子网会立即创建。 堡垒主机的创建将作为任务提交,并将在 10 分钟内完成。 在创建堡垒主机的同时,您可以继续执行后续步骤。

创建负载均衡器

在本部分中,你将创建一个对虚拟机进行负载均衡的区域冗余负载均衡器。 在使用区域冗余的情况下,一个或多个可用区可能会失效,只要该区域中的至少一个可用区保持正常,数据路径就能够继续运作。

在创建负载均衡器期间,您需要配置:

  • 前端 IP 地址
  • 后端池
  • 入站负载均衡规则
  • 健康探针
  1. 在门户顶部的搜索框中,输入 Load balancer。 在搜索结果中选择“负载均衡器”。

  2. Load balancer 页中,选择 + Create

  3. 创建负载均衡器 页面上的 基础 选项卡中,输入或选择以下信息:

    设置 价值
    项目详细信息
    订阅 选择订阅。
    资源组 选择“TutorLoadBalancer-rg”。
    实例详细信息
    名称 输入 myLoadBalancer
    区域 选择“中国东部”。
    SKU 保留默认值“标准”。
    类型 选择公共
    保留默认值“Regional”

    创建标准负载均衡器基础选项卡的屏幕截图。

  4. 在页面底部选择“下一步: 前端 IP 配置”。

  5. 在“前端 IP 配置”中,选择“+ 添加前端 IP 配置”。

  6. 在“名称”中输入“myFrontend”。

  7. 对于“IP 版本”,选择“IPv4” 。

  8. 对于“IP 类型”,选择“IP 地址”。

  9. 在“公共 IP 地址”中选择“新建”。

  10. 在“添加公共 IP 地址”窗口中,将“名称”输入为“myPublicIP”。

  11. 在“可用性区域”中选择“区域冗余”。

    注释

    在包含Availability Zones的区域中,您可以选择无可用区(默认选项)、特定可用区或区域冗余。 请根据特定的域故障要求做出选择。 在没有Availability Zones的区域中,不会显示此字段。
    有关可用性区域的详细信息,请参阅 可用性区域概述

  12. 选择“确定”

  13. 选择 并添加

  14. 在页面底部选择“下一步: 后端池”。

  15. 在“后端池”选项卡上,选择“+ 添加后端池” 。

  16. 请在“添加后端池”的“名称”字段中输入“myBackendPool”。

  17. 虚拟网络 中选择 myVNet

  18. 在“后端池配置”中选择“IP 地址”。

  19. 选择“保存”

  20. 选择页面底部的“下一步: 入站规则”。

  21. 在“入站规则”选项卡的“负载均衡规则”下,选择“+ 添加负载均衡规则”。

  22. 在“添加负载均衡规则”中,输入或选择以下信息:

    设置 价值
    名称 输入“myHTTPRule”
    IP 版本 根据你的要求选择“IPv4”或“IPv6” 。
    前端 IP 地址 选择 myFrontend(待创建)。
    后端池 选择“myBackendPool”。
    协议 选择TCP
    港口 输入 80
    后端端口 输入 80
    健康探针 选择“新建”。
    名称中,输入 myHealthProbe
    在“协议”中选择“TCP”。
    将剩余的字段保留为默认值,然后选择“确定”。
    会话持久性 选择
    空闲超时(分钟) 输入或选择“15”
    TCP 重置 选择启用
    浮动IP地址 选择“已禁用”。
    出站源网络地址转换 (SNAT) 保留默认设置 (推荐)使用出站规则为后端池成员提供访问互联网的权限。
  23. 选择 并添加

  24. 选择页面底部的“查看 + 创建”蓝色按钮。

  25. 选择 创建

    注释

    在此示例中,我们将创建一个 NAT 网关来提供出站互联网访问。 我们绕过了配置中的出站规则选项卡,因为它是可选选项,且 NAT 网关不需要它。 有关 Azure NAT 网关的详细信息,请参阅 什么是 Azure Virtual Network NAT? 有关Azure中的出站连接的详细信息,请参阅源网络地址转换(SNAT)以获取出站连接

创建 NAT 网关

在本部分中,你将为虚拟网络中的资源创建NAT网关以提供出站的Internet访问。 有关出站规则的其他选项,请查看用于出站连接的网络地址转换 (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. Subnet 选项卡中的 Virtual network 中,选择 myVNet

  10. 在“子网名称”下选择“myBackendSubnet”。

  11. 选择页面底部的“查看 + 创建”蓝色按钮,或选择“查看 + 创建”选项卡。

  12. 选择 创建

创建虚拟机

在本部分中,你将在两个不同的区域(区域 1 和区域 2)中创建两个 VM(myVM1 和 myVM2)。

这些 VM 会被添加到先前创建的负载均衡器的后端池中。

  1. 在门户顶部的搜索框中,输入“虚拟机”。 在搜索结果中选择Virtual machines

  2. 虚拟机 中,选择 + 创建>Azure 虚拟机

  3. 在“创建虚拟机”中,在“基本信息”选项卡中输入或选择以下值:

    设置 价值
    项目详细信息
    订阅 选择Azure订阅
    资源组 选择“TutorLoadBalancer-rg”
    实例详细信息
    虚拟机名称 输入myVM1
    区域 选择 (亚太)中国东部)
    可用性选项 选择 可用区 (Availability zones)
    可用性区域 选择“区域 1”
    安全类型 选择“标准” 。
    图像 选择 Windows Server 2022 Datacenter: Azure Edition - Gen2
    尺寸 选择 VM 大小或采用默认设置
    管理员帐户
    用户名 输入用户名
    密码 输入密码
    确认密码 重新输入密码
    入站端口规则
    公共入站端口 选择“无”
  4. 选择网络选项卡,或选择下一步: 磁盘,然后选择下一步: 网络

  5. 在“网络”选项卡中,选择或输入以下信息:

    设置 价值
    网络接口
    虚拟网络 选择 “myVNet”
    子网 选择“myBackendSubnet”
    公网 IP 选择
    NIC 网络安全组 选择“高级”
    配置网络安全组 跳过此设置,直到完成其余设置为止。 在“选择后端池”后完成。
    删除 VM 时删除 NIC 保留默认值“未选中”
    高速网络 保留默认值“已选择”。
    负载均衡
    负载均衡选项
    负载均衡选项 选择 Azure 负载均衡器
    选择负载均衡器 选择myLoadBalancer
    选择后端池 选择“myBackendPool”
  6. 选择“查看 + 创建”

  7. 检查设置,然后选择创建

  8. 按照步骤 1 到 7 操作,使用以下值创建另一个 VM,所有其他设置均与 myVM1 相同:

    设置 VM 2
    名称 myVM2
    可用性区域 区域 2
    网络安全组 选择现有的“myNSG”

注释

Azure为未分配公共 IP 地址的虚拟机,或者位于内部基本 Azure 负载均衡器后端池中的虚拟机,提供默认的出站访问 IP。 默认出站访问 IP 机制提供一个无法配置的出站 IP 地址。

发生以下事件之一时,将禁用默认出站访问 IP:

  • 将公共 IP 地址分配给 VM。
  • 虚拟机被放置在标准负载均衡器的后端池中,可能包含或不包含出站规则。
  • Azure NAT 网关资源分配给 VM 的子网。

在灵活协调模式下使用虚拟机规模集创建的 VM 没有默认的出站访问。

有关 Azure 中的出站连接的详细信息,请参阅 Azure 默认出站访问使用源网络地址转换(SNAT)进行出站连接

安装 IIS

  1. 在门户顶部的搜索框中,输入“虚拟机”。 在搜索结果中选择Virtual machines

  2. 选择 myVM1

  3. 在“概述”页上,选择“连接”,然后选择“Bastion” 。

  4. 输入在 VM 创建过程中输入的用户名和密码。

  5. 选择 连接

  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 Web 服务器的自定义 VM 页会显示在浏览器中。

清理资源

如果不再需要资源组、load balancer和所有相关资源,请将其删除。 要执行此操作,请选择包含资源的资源组TutorLoadBalancer-rg,然后选择删除

后续步骤

转到下一篇文章,了解如何执行以下操作: