Udostępnij za pośrednictwem


Szybki start: konfigurowanie dzienników przepływu sieciowej grupy zabezpieczeń usługi Azure Network Watcher przy użyciu szablonu usługi Azure Resource Manager (ARM)

Z tego przewodnika Szybki start dowiesz się, jak włączyć dzienniki przepływu sieciowej grupy zabezpieczeń przy użyciu szablonu usługi Azure Resource Manager (ARM) i programu Azure PowerShell. Aby uzyskać więcej informacji, zobacz Co to jest usługa Azure Resource Manager? i omówienie dzienników przepływów sieciowej grupy zabezpieczeń.

Szablon usługi Azure Resource Manager to plik JavaScript Object Notation (JSON), który definiuje infrastrukturę i konfigurację projektu. W szablonie używana jest składnia deklaratywna. Możesz opisać zamierzone wdrożenie bez konieczności pisania sekwencji poleceń programowania w celu utworzenia wdrożenia.

Zaczynamy od omówienia właściwości obiektu dziennika przepływu sieciowej grupy zabezpieczeń. Udostępniamy przykładowe szablony. Następnie użyjemy lokalnego wystąpienia programu Azure PowerShell do wdrożenia szablonu.

Jeśli Twoje środowisko spełnia wymagania wstępne i masz doświadczenie w korzystaniu z szablonów ARM, wybierz przycisk Wdróż na platformie Azure. Szablon zostanie otwarty w witrynie Azure Portal.

Przycisk wdrażania szablonu usługi Resource Manager na platformie Azure.

Wymagania wstępne

Konto platformy Azure z aktywną subskrypcją. Jeśli nie masz subskrypcji, przed rozpoczęciem utwórz bezpłatne konto.

Przegląd szablonu

Szablon używany w tym przewodniku Szybki start pochodzi z szablonów szybkiego startu platformy Azure.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.9.1.41621",
      "templateHash": "14580725600461536175"
    }
  },
  "parameters": {
    "networkWatcherName": {
      "type": "string",
      "defaultValue": "[format('NetworkWatcher_{0}', parameters('location'))]",
      "metadata": {
        "description": "Name of the Network Watcher attached to your subscription. Format: NetworkWatcher_<region_name>"
      }
    },
    "flowLogName": {
      "type": "string",
      "defaultValue": "FlowLog1",
      "metadata": {
        "description": "Name of your Flow log resource"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Region where you resources are located"
      }
    },
    "existingNSG": {
      "type": "string",
      "metadata": {
        "description": "Resource ID of the target NSG"
      }
    },
    "retentionDays": {
      "type": "int",
      "defaultValue": 0,
      "maxValue": 365,
      "minValue": 0,
      "metadata": {
        "description": "Retention period in days. Default is zero which stands for permanent retention. Can be any Integer from 0 to 365"
      }
    },
    "flowLogsVersion": {
      "type": "int",
      "defaultValue": 2,
      "allowedValues": [
        1,
        2
      ],
      "metadata": {
        "description": "FlowLogs Version. Correct values are 1 or 2 (default)"
      }
    },
    "storageAccountType": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_ZRS"
      ],
      "metadata": {
        "description": "Storage Account type"
      }
    }
  },
  "variables": {
    "storageAccountName": "[format('flowlogs{0}', uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2021-09-01",
      "name": "[variables('storageAccountName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageAccountType')]"
      },
      "kind": "StorageV2",
      "properties": {}
    },
    {
      "type": "Microsoft.Network/networkWatchers",
      "apiVersion": "2022-01-01",
      "name": "[parameters('networkWatcherName')]",
      "location": "[parameters('location')]",
      "properties": {}
    },
    {
      "type": "Microsoft.Network/networkWatchers/flowLogs",
      "apiVersion": "2022-01-01",
      "name": "[format('{0}/{1}', parameters('networkWatcherName'), parameters('flowLogName'))]",
      "location": "[parameters('location')]",
      "properties": {
        "targetResourceId": "[parameters('existingNSG')]",
        "storageId": "[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]",
        "enabled": true,
        "retentionPolicy": {
          "days": "[parameters('retentionDays')]",
          "enabled": true
        },
        "format": {
          "type": "JSON",
          "version": "[parameters('flowLogsVersion')]"
        }
      },
      "dependsOn": [
        "[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]"
      ]
    }
  ]
}

W szablonie zdefiniowano następujące zasoby:

Wyróżniony kod w poprzednim przykładzie przedstawia definicję zasobu przepływu sieciowej grupy zabezpieczeń.

Wdrażanie szablonu

W tym samouczku założono, że masz istniejącą grupę zasobów i sieciową grupę zabezpieczeń, dla której można włączyć rejestrowanie przepływu.

Możesz zapisać dowolny z przykładowych szablonów, które są wyświetlane w tym artykule lokalnie jako azuredeploy.json. Zaktualizuj wartości właściwości, aby wskazywały prawidłowe zasoby w subskrypcji.

Aby wdrożyć szablon, uruchom następujące polecenie w programie Azure PowerShell:

$context = Get-AzSubscription -SubscriptionId <subscription Id>
Set-AzContext $context
New-AzResourceGroupDeployment -Name EnableFlowLog -ResourceGroupName NetworkWatcherRG `
    -TemplateFile "C:\MyTemplates\azuredeploy.json"

Uwaga

Te polecenia wdrażają zasób w grupie zasobów NetworkWatcherRG , a nie do grupy zasobów zawierającej sieciową grupę zabezpieczeń.

Weryfikowanie wdrożenia

Istnieją dwie opcje, aby sprawdzić, czy wdrożenie zakończyło się pomyślnie:

  • Konsola programu PowerShell jest wyświetlana ProvisioningState jako Succeeded.
  • Przejdź do strony portalu dzienników przepływu sieciowej grupy zabezpieczeń, aby potwierdzić zmiany.

Jeśli wystąpiły problemy z wdrożeniem, zobacz Rozwiązywanie typowych błędów wdrażania platformy Azure w usłudze Azure Resource Manager.

Czyszczenie zasobów

Zasoby platformy Azure można usunąć przy użyciu pełnego trybu wdrażania. Aby usunąć zasób dziennika przepływu, określ wdrożenie w trybie pełnym bez dołączania zasobu, który chcesz usunąć. Przeczytaj więcej na temat pełnego trybu wdrażania.

Możesz również wyłączyć lub usunąć dziennik przepływu w witrynie Azure Portal:

  1. W polu wyszukiwania w górnej części portalu wprowadź network watcher. Wybierz pozycję Network Watcher z wyników wyszukiwania.

  2. W obszarze Dzienniki wybierz pozycję Dzienniki przepływu.

  3. W usłudze Network Watcher | Dzienniki przepływu, zaznacz pole wyboru dziennika przepływu, który chcesz usunąć.

  4. Wybierz pozycję Wyłącz lub Usuń. Aby uzyskać więcej informacji, zobacz Wyłączanie dziennika przepływu lub Usuwanie dziennika przepływu.

W tym przewodniku Szybki start przedstawiono sposób włączania dzienników przepływów sieciowej grupy zabezpieczeń przy użyciu szablonu usługi ARM. Następnie dowiesz się, jak wizualizować dane przepływu sieciowej grupy zabezpieczeń przy użyciu analizy ruchu: