Creare, modificare, abilitare, disabilitare o eliminare i log dei flussi di rete virtuale con Azure PowerShell

La registrazione del flusso di rete virtuale è una funzionalità di Azure Network Watcher che consente di registrare informazioni sul traffico IP che scorre attraverso una rete virtuale di Azure. Per altre informazioni sulla registrazione dei flussi di rete virtuale, vedere Panoramica dei log dei flussi di rete virtuale.

Questo articolo illustra come creare, modificare, abilitare, disabilitare o eliminare un log del flusso di rete virtuale usando Azure PowerShell. Per informazioni su come gestire un log del flusso di rete virtuale, vedere l'interfaccia della riga di comando di Azure o portale di Azure.

Importante

La funzionalità log dei flussi di rete virtuale è attualmente in anteprima. Questa versione di anteprima viene fornita senza contratto di servizio, pertanto non è consigliabile usarla per carichi di lavoro in ambienti di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per le condizioni legali applicabili alle funzionalità di Azure in versione beta, in anteprima o non ancora rilasciate nella disponibilità generale, vedere Condizioni per l'utilizzo supplementari per le anteprime di Microsoft Azure.

Prerequisiti

Registrare il provider di informazioni dettagliate

Il provider Microsoft.Insights deve essere registrato per registrare correttamente il traffico in una rete virtuale. Se non si è certi che il provider Microsoft.Insights sia registrato, usare Register-AzResourceProvider per registrarlo.

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

Abilitare i log dei flussi di rete virtuale

Usare New-AzNetworkWatcherFlowLog per creare un log del flusso di rete virtuale.

# 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

Abilitare i log dei flussi della rete virtuale e l'analisi del traffico

Usare New-AzOperationalInsightsWorkspace per creare un'area di lavoro di analisi del traffico e quindi usare New-AzNetworkWatcherFlowLog per creare un log del flusso di rete virtuale che lo usa.

# 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

Elencare tutti i log di flusso in un'area

Usare Get-AzNetworkWatcherFlowLog per elencare tutte le risorse del log di flusso in una determinata area della sottoscrizione.

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

Visualizzare la risorsa del log del flusso di rete virtuale

Usare Get-AzNetworkWatcherFlowLog per visualizzare i dettagli di una risorsa del log del flusso.

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

Scaricare un log di flusso

Per scaricare i log dei flussi di rete virtuale dall'account di archiviazione, usare il cmdlet Get-Az Archiviazione BlobContent.

I file di log del flusso di rete virtuale vengono salvati nell'account di archiviazione nel percorso seguente:

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

Nota

È anche possibile accedere e scaricare i file dei log dei flussi di rete virtuale dal contenitore dell'account di archiviazione usando Archiviazione di Azure Explorer. Archiviazione Explorer è un'app autonoma che è possibile usare facilmente per accedere e usare i dati Archiviazione di Azure. Per altre informazioni, vedere Introduzione a Archiviazione Explorer.

Disabilitare l'analisi del traffico nella risorsa log di flusso

Per disabilitare l'analisi del traffico nella risorsa di log del flusso e continuare a generare e salvare i log dei flussi di rete virtuale nell'account di archiviazione, usare 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

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

Disabilitare la registrazione del flusso di rete virtuale

Per disabilitare un log del flusso di rete virtuale senza eliminarlo in modo da poterlo riabilitare in un secondo momento, usare 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

Eliminare una risorsa del log del flusso di rete virtuale

Per eliminare una risorsa di log del flusso di rete virtuale, usare Remove-AzNetworkWatcherFlowLog.

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