Erstellen, Ändern, Aktivieren, Deaktivieren oder Löschen von Datenflussprotokollen für virtuelle Netzwerke mithilfe von Azure PowerShell

Die Datenflussprotokollierung für virtuelle Netzwerke ist eine Funktion von Azure Network Watcher, mit der Sie Informationen zu IP-Datenverkehr protokollieren können, der eine Netzwerksicherheitsgruppe durchläuft. Weitere Informationen zur Datenflussprotokollierung für virtuelle Netzwerke finden Sie in der Übersicht über VNet-Datenflussprotokolle.

In diesem Artikel erfahren Sie, wie Sie mithilfe von Azure PowerShell ein Datenflussprotokoll für ein virtuelles Netzwerk (VNet) erstellen, ändern, deaktivieren oder löschen. Lesen Sie ggf. auch die Artikel zum Verwalten eines VNet-Datenflussprotokolls im Azure-Portal oder mit der Azure-Befehlszeilenschnittstelle (Command Line Interface, CLI).

Voraussetzungen

Registrieren von Insights-Anbietern

Der Microsoft.Insights-Anbieter muss registriert sein, um den Datenverkehr erfolgreich in einem virtuellen Netzwerk protokollieren zu können. Wenn Sie nicht sicher sind, ob der Microsoft.Insights-Anbieter registriert ist, verwenden Sie Register-AzResourceProvider, um ihn zu registrieren.

# Register Microsoft.Insights provider.
Register-AzResourceProvider -ProviderNamespace Microsoft.Insights

Aktivieren von VNet-Datenflussprotokollen

Verwenden Sie New-AzNetworkWatcherFlowLog, um ein VNet-Datenflussprotokoll zu erstellen.

# Place the virtual network configuration into a variable.
$vnet = Get-AzVirtualNetwork -Name myVNet -ResourceGroupName myResourceGroup
# Place the storage account configuration into a variable.
$storageAccount = Get-AzStorageAccount -Name myStorageAccount -ResourceGroupName myResourceGroup

# Create a VNet flow log.
New-AzNetworkWatcherFlowLog -Enabled $true -Name myVNetFlowLog -NetworkWatcherName NetworkWatcher_eastus -ResourceGroupName NetworkWatcherRG -StorageId $storageAccount.Id -TargetResourceId $vnet.Id

Aktivieren von VNet-Datenflussprotokollen und Datenverkehrsanalysen

Verwenden Sie New-AzOperationalInsightsWorkspace, um einen Arbeitsbereich für die Datenverkehrsanalyse zu erstellen, und erstellen Sie dann mit New-AzNetworkWatcherFlowLog ein VNet-Datenflussprotokoll, das diesen Arbeitsbereich verwendet.

# Place the virtual network configuration into a variable.
$vnet = Get-AzVirtualNetwork -Name myVNet -ResourceGroupName myResourceGroup
# Place the storage account configuration into a variable.
$storageAccount = Get-AzStorageAccount -Name myStorageAccount -ResourceGroupName myResourceGroup

# Create a traffic analytics workspace and place its configuration into a variable.
$workspace = New-AzOperationalInsightsWorkspace -Name myWorkspace -ResourceGroupName myResourceGroup -Location EastUS

# Create a VNet flow log.
New-AzNetworkWatcherFlowLog -Enabled $true -Name myVNetFlowLog -NetworkWatcherName NetworkWatcher_eastus -ResourceGroupName NetworkWatcherRG -StorageId $storageAccount.Id -TargetResourceId $vnet.Id -EnableTrafficAnalytics -TrafficAnalyticsWorkspaceId $workspace.ResourceId -TrafficAnalyticsInterval 10

Auflisten aller Datenflussprotokolle in einer Region

Verwenden Sie Get-AzNetworkWatcherFlowLog, um alle Datenflussprotokollressourcen in einer bestimmten Region in Ihrem Abonnement aufzulisten.

# Get all flow logs in East US region.
Get-AzNetworkWatcherFlowLog -NetworkWatcherName NetworkWatcher_eastus -ResourceGroupName NetworkWatcherRG | format-table Name

Anzeigen einer VNet-Datenflussprotokollressource

Verwenden Sie Get-AzNetworkWatcherFlowLog, um Details zu einer Datenflussprotokollressource anzuzeigen.

# Get the flow log details.
Get-AzNetworkWatcherFlowLog -NetworkWatcherName NetworkWatcher_eastus -ResourceGroupName NetworkWatcherRG -Name myVNetFlowLog

Herunterladen eines Flowprotokolls

Um VNet-Datenflussprotokolle aus Ihrem Speicherkonto herunterzuladen, verwenden Sie das Cmdlet Get-AzStorageBlobContent.

VNet-Datenflussprotokolldateien werden im Speicherkonto unter dem folgenden Pfad gespeichert:

https://{storageAccountName}.blob.core.windows.net/insights-logs-flowlogflowevent/flowLogResourceID=/SUBSCRIPTIONS/{subscriptionID}/RESOURCEGROUPS/NETWORKWATCHERRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKWATCHERS/NETWORKWATCHER_{Region}/FLOWLOGS/{FlowlogResourceName}/y={year}/m={month}/d={day}/h={hour}/m=00/macAddress={macAddress}/PT1H.json

Hinweis

Sie können auch mithilfe des Azure Storage-Explorers auf VNet-Datenflussprotokolldateien zugreifen und diese aus dem Speicherkontocontainer herunterladen. Storage-Explorer ist eine eigenständige App, mit der Sie bequem auf Azure Storage-Daten zugreifen und diese verwenden können. Weitere Informationen finden Sie unter Erste Schritte mit dem Storage-Explorer.

Deaktivieren der Datenverkehrsanalyse für die Datenflussprotokollressource

Verwenden Sie Set-AzNetworkWatcherFlowLog, um die Datenverkehrsanalyse für die Datenflussprotokollressource zu deaktivieren und weiterhin VNet-Datenflussprotokolle zu generieren und im Speicherkonto zu speichern.

# Place the virtual network configuration into a variable.
$vnet = Get-AzVirtualNetwork -Name myVNet -ResourceGroupName myResourceGroup
# Place the storage account configuration into a variable.
$storageAccount = Get-AzStorageAccount -Name mynwstorageaccount -ResourceGroupName Storage

# Update the VNet flow log.
Set-AzNetworkWatcherFlowLog -Enabled $true -Name myVNetFlowLog -NetworkWatcherName NetworkWatcher_eastus -ResourceGroupName NetworkWatcherRG -StorageId $storageAccount.Id -TargetResourceId $vnet.Id

Deaktivieren der VNet-Datenflussprotokollierung

Um ein VNet-Datenflussprotokoll zu deaktivieren, ohne es zu löschen, damit Sie es später wieder aktivieren können, verwenden Sie Set-AzNetworkWatcherFlowLog.

# Place the virtual network configuration into a variable.
$vnet = Get-AzVirtualNetwork -Name myVNet -ResourceGroupName myResourceGroup
# Place the storage account configuration into a variable.
$storageAccount = Get-AzStorageAccount -Name mynwstorageaccount -ResourceGroupName Storage

# Disable the VNet flow log.
Set-AzNetworkWatcherFlowLog -Enabled $false -Name myVNetFlowLog -NetworkWatcherName NetworkWatcher_eastus -ResourceGroupName NetworkWatcherRG -StorageId $storageAccount.Id -TargetResourceId $vnet.Id

Löschen einer VNet-Datenflussprotokollressource

Verwenden Sie Remove-AzNetworkWatcherFlowLog, um eine VNet-Datenflussprotokollressource zu löschen.

# Delete the VNet flow log.
Remove-AzNetworkWatcherFlowLog -Name myVNetFlowLog -NetworkWatcherName NetworkWatcher_eastus -ResourceGroupName NetworkWatcherRG