你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

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

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

重要

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

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

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

如果没有 Azure 订阅,请在开始之前创建一个免费帐户

先决条件

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

创建 DDoS 防护计划

  1. 登录 Azure 门户

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

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

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

    设置
    项目详细信息
    订阅 选择 Azure 订阅。
    资源组 选择“新建”。
    输入“TutorLoadBalancer-rg”。
    选择“确定”。
    实例详细信息
    名称 输入“myDDoSProtectionPlan”。
    区域 选择“(US)美国东部”。
  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. 选择“创建”。

    注意

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

创建负载均衡器

本部分将创建一个对虚拟机进行负载均衡的区域冗余负载均衡器。 使用区域冗余时,一个或多个可用性区域可能会发生故障,而数据路径可以幸存,但前提是该区域中有一个局部区域保持正常。

在创建负载均衡器的过程中,你将配置:

  • 前端 IP 地址
  • 后端池
  • 入站负载均衡规则
  • 运行状况探测
  1. 在门户顶部的搜索框中,输入“负载均衡器”。 在搜索结果中选择“负载均衡器”。

  2. 在“负载均衡器”页上,选择“+ 创建” 。

  3. 在“创建负载均衡器”页的“基本信息”选项卡中,输入或选择以下信息 :

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

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

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

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

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

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

  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) 保留默认值“(建议)使用出站规则为后端池成员提供对 Internet 的访问权限。”
  24. 选择 添加

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

  26. 选择“创建”。

    注意

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

创建 NAT 网关

在此部分中,你将为虚拟网络中的资源创建用于出站 Internet 访问的 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(myVM1 和 myVM2)。

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

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

  2. 在“虚拟机”中,选择“+ 创建”>“Azure 虚拟机”。

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

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

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

    设置
    网络接口
    虚拟网络 选择 myVNet
    子网 选择“myBackendSubnet”
    公共 IP 选择
    NIC 网络安全组 选择“高级”
    配置网络安全组 跳过此设置,直到完成其余设置为止。 在“选择后端池”后完成。
    删除 VM 时删除 NIC 保留默认值“未选中”。
    加速网络 保留默认值“已选择”。
    负载均衡
    负载均衡选项
    负载均衡选项 选择“Azure 负载均衡器”
    选择负载均衡器 选择“myLoadBalancer”
    选择后端池 选择“myBackendPool”
    配置网络安全组 选择“新建”。
    在“创建网络安全组”的“名称”中输入“myNSG”。
    在“入站规则”下,选择“+ 添加入站规则”。
    在“服务”下,选择“HTTP”。
    在“优先级”下,输入“100”。
    在“名称”中,输入“myNSGRule”
    选择“添加”
    选择“确定”
  6. 选择“查看 + 创建”。

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

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

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

注意

Azure 会为未分配公共 IP 地址的 VM 或位于内部基本 Azure 负载均衡器的后端池中的 VM 提供默认出站访问 IP。 默认出站访问 IP 机制会提供不可配置的出站 IP 地址。

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

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

在灵活业务流程模式下通过使用虚拟机规模集创建的 VM 没有默认的出站访问权限。

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

安装 IIS

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

  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 页会显示在浏览器中。

    负载均衡器测试的屏幕截图。

清理资源

若不再需要资源组、负载均衡器以及所有相关资源,请将其删除。 为此,请选择包含资源的“TutorLoadBalancer-rg”资源组,然后选择“删除”。

后续步骤

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