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

快速入门:使用ARM 模板创建和配置 Azure DDoS 网络保护

此快速入门介绍如何使用 Azure 资源管理器模板(ARM 模板)创建分布式拒绝服务 (DDoS) 防护计划和虚拟网络 (VNet),然后为 VNet 启用防护计划。 Azure DDoS 网络保护计划跨订阅定义一组已启用 DDoS 防护的虚拟网络。 可以为组织配置一个 DDoS 防护计划,然后从多个订阅将虚拟网络链接到相同计划。

Azure 资源管理器模板是定义项目基础结构和配置的 JavaScript 对象表示法 (JSON) 文件。 模板使用声明性语法。 你可以在不编写用于创建部署的编程命令序列的情况下,描述预期部署。

如果你的环境满足先决条件,并且你熟悉如何使用 ARM 模板,请选择“部署到 Azure”按钮。 Azure 门户中会打开模板。

Button to deploy the Resource Manager template to Azure.

先决条件

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

查看模板

本快速入门中使用的模板来自 Azure 快速启动模板

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.5.6.12127",
      "templateHash": "14909118711877377105"
    }
  },
  "parameters": {
    "ddosProtectionPlanName": {
      "type": "string",
      "metadata": {
        "description": "Specify a DDoS protection plan name."
      }
    },
    "virtualNetworkName": {
      "type": "string",
      "metadata": {
        "description": "Specify a DDoS virtual network name."
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Specify a location for the resources."
      }
    },
    "vnetAddressPrefix": {
      "type": "string",
      "defaultValue": "172.17.0.0/16",
      "metadata": {
        "description": "Specify the virtual network address prefix"
      }
    },
    "subnetPrefix": {
      "type": "string",
      "defaultValue": "172.17.0.0/24",
      "metadata": {
        "description": "Specify the virtual network subnet prefix"
      }
    },
    "ddosProtectionPlanEnabled": {
      "type": "bool",
      "defaultValue": true,
      "metadata": {
        "description": "Enable DDoS protection plan."
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.Network/ddosProtectionPlans",
      "apiVersion": "2021-05-01",
      "name": "[parameters('ddosProtectionPlanName')]",
      "location": "[parameters('location')]"
    },
    {
      "type": "Microsoft.Network/virtualNetworks",
      "apiVersion": "2021-05-01",
      "name": "[parameters('virtualNetworkName')]",
      "location": "[parameters('location')]",
      "properties": {
        "addressSpace": {
          "addressPrefixes": [
            "[parameters('vnetAddressPrefix')]"
          ]
        },
        "subnets": [
          {
            "name": "default",
            "properties": {
              "addressPrefix": "[parameters('subnetPrefix')]"
            }
          }
        ],
        "enableDdosProtection": "[parameters('ddosProtectionPlanEnabled')]",
        "ddosProtectionPlan": {
          "id": "[resourceId('Microsoft.Network/ddosProtectionPlans', parameters('ddosProtectionPlanName'))]"
        }
      },
      "dependsOn": [
        "[resourceId('Microsoft.Network/ddosProtectionPlans', parameters('ddosProtectionPlanName'))]"
      ]
    }
  ]
}

该模板定义了两个资源:

部署模板

在本示例中,模板会新建资源组、DDoS 防护计划和 VNet。

  1. 要登录到 Azure 并打开模板,请选择“部署到 Azure”按钮。

    Button to deploy the Resource Manager template to Azure.

  2. 输入值以新建资源组、DDoS 防护计划和 VNet 名称。

    DDoS quickstart template.

    • 订阅:在其中部署资源的 Azure 区域的名称。
    • 资源组:选择现有资源组或创建新资源组。
    • 区域:在其中部署资源组的区域,例如美国东部。
    • Ddos 防护计划名称:新 DDoS 防护计划的名称。
    • 虚拟网络名称:创建新 VNet 的名称。
    • 位置:使用资源组所在区域部署资源的函数。
    • Vnet 地址前缀:使用默认值或输入 VNet 地址。
    • 子网前缀:使用默认值或输入 VNet 子网。
    • 启用 Ddos 防护计划:默认为 true,以启用 DDoS 防护计划。
  3. 选择“查看 + 创建”。

  4. 验证是否已通过模板验证,然后选择“创建”以开始部署。

查看已部署的资源

要复制 Azure CLI 或 Azure PowerShell 命令,请选择“复制”按钮。 单击“试用”按钮打开 Azure Cloud Shell 并运行命令。

az network ddos-protection show \
  --resource-group MyResourceGroup \
  --name MyDdosProtectionPlan

输出显示新资源。

{
  "etag": "W/\"abcdefgh-1111-2222-bbbb-987654321098\"",
  "id": "/subscriptions/b1111111-2222-3333-aaaa-012345678912/resourceGroups/MyResourceGroup/providers/Microsoft.Network/ddosProtectionPlans/MyDdosProtectionPlan",
  "location": "eastus",
  "name": "MyDdosProtectionPlan",
  "provisioningState": "Succeeded",
  "resourceGroup": "MyResourceGroup",
  "resourceGuid": null,
  "tags": null,
  "type": "Microsoft.Network/ddosProtectionPlans",
  "virtualNetworks": [
    {
      "id": "/subscriptions/b1111111-2222-3333-aaaa-012345678912/resourceGroups/MyResourceGroup/providers/Microsoft.Network/virtualNetworks/MyVNet",
      "resourceGroup": "MyResourceGroup"
    }
  ]
}

清理资源

完成后,可以删除资源。 该命令将删除资源组及其包含的所有资源。

az group delete --name MyResourceGroup

后续步骤

要了解如何查看和配置 DDoS 防护计划的遥测,请继续阅读教程。