Filtrera flödesloggar för virtuellt nätverk

Flödesloggning för virtuella nätverk är en funktion i Azure Network Watcher som gör att du kan logga information om IP-trafik som flödar via ett virtuellt Azure-nätverk. Mer information om flödesloggning för virtuella nätverk finns i Översikt över flödesloggar för virtuella nätverk.

I den här artikeln får du lära dig mer om filtreringsfunktionen för virtuella nätverksflödesloggar. Filtreringsfunktionen ger användarna alternativ för att registrera trafik i ett virtuellt nätverk (intra-VNet-trafik) eller med två eller flera virtuella nätverk (trafik mellan virtuella nätverk). Det hjälper också användare att identifiera CIDR-intervallbaserad trafik, inkommande utgående trafik, Internettrafik och tillåten/nekad trafik.

Viktigt!

Filtrering av virtuella nätverksflödesloggar finns för närvarande i FÖRHANDSVERSION. Se kompletterande användningsvillkor för Microsoft Azure Previews för juridiska villkor som gäller för Azure-funktioner som är i betaversion, förhandsversion eller på annat sätt ännu inte har släppts i allmän tillgänglighet.

Fält som stöds

Fält Filtrera baserat på Example
Direction Trafikriktning Inkommande, utgående
SrcIP Källans IP-adress/CIDR-intervall 192.168.1.1, 2001:db8::1/64
SrcPort Källportintervall och -värden 1024-65535, 80, 443
DstIP Mål-IP-adresser/CIDR-intervall 192.168.2.1, 2001:db8::2/64
DstPort Målportintervall och -värden 22, 8080-8090
Protokoll Protokolltyp TCP, UDP
Encryption Krypteringsstatus Alla krypteringsvärden som stöds och NX_ALL (inte krypterade av någon anledning)

Alla fält kan använda kommaavgränsat värde som indata. Alla är skiftlägesokänsliga.

Åtgärder som stöds

Flödesloggar för virtuella nätverk stöder = och != för varje fält.

Operander som stöds

Flödesloggar för virtuella nätverk stöder logiska operander && och || mellan två fält.

Format som stöds

  • Fält kan anges i valfri kombination.
  • Hakparenteser stöds inte för närvarande.
  • Fält utvärderas efter logisk operandprioritet (AND före OR) från vänster till höger.
  • Den maximala längden på filtreringssträngen kan vara 1 000 tecken.

Aktivera filtrering

Om du vill skapa flödesloggar för virtuella nätverk med filtrering använder du cmdleten New-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 '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 with the following filtering criteria: dstip=20.252.145.59 || DstPort=443
New-AzNetworkWatcherFlowLog -Enabled $true -Name 'myVNetFlowLog' -NetworkWatcherName 'NetworkWatcher_eastus' `
    -ResourceGroupName 'NetworkWatcherRG' -StorageId $storageAccount.Id -TargetResourceId $vnet.Id `
    -FormatVersion 2 -EnabledFilteringCriteria 'dstip=20.252.145.59 || DstPort=54300-54400' `
    -EnableTrafficAnalytics -TrafficAnalyticsWorkspaceId $workspace.ResourceId `
    -EnableRetention $true -RetentionPolicyDays 15

Uppdatera befintlig filtrering

Du kan ändra befintliga filtreringsvillkor för virtuella nätverksflödesloggar med hjälp av cmdleten Set-AzNetworkWatcherFlowLog med uppdaterade villkor utan att behöva återskapa flödesloggen.

# 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'

# Place the workspace configuration into a variable.
$workspace = Get-AzOperationalInsightsWorkspace -Name 'myWorkspace' -ResourceGroupName 'myResourceGroup'

# Update the VNet flow log.
Set-AzNetworkWatcherFlowLog -Enabled $true -Name 'myVNetFlowLog' -NetworkWatcherName 'NetworkWatcher_eastus' `
    -ResourceGroupName 'NetworkWatcherRG' -StorageId $storageAccount.Id -TargetResourceId $vnet.Id `
    -FormatVersion 2 -EnabledFilteringCriteria 'dstip=20.252.145.59 || DstPort=443' `
    -EnableTrafficAnalytics -TrafficAnalyticsWorkspaceId $workspace.ResourceId `
    -EnableRetention $true -RetentionPolicyDays 15

Filtrering baserat på RecordTypes

Du kan filtrera flödesloggar för virtuella nätverk baserat på tillståndet för ett nätverksflöde. Flödestillståndet representerar livscykelsteget för en anslutning enligt Network Watcher, till exempel när ett flöde börjar, fortsätter, slutar eller nekas.

Använd parametern RecordTypes för att ange vilka flödestillstånd som du vill registrera. Parametern accepterar ett eller flera kommaavgränsade värden.

RecordType-värden som stöds

Värde Beskrivning
B Börja: när ett flöde skapas. Ingen statistik tillhandahålls.
C Fortsätter: ett kontinuerligt flöde. Statistik tillhandahålls med fem minuters intervall.
E Slut: när ett flöde avslutas. Statistik tillhandahålls.
D Neka: när ett flöde avvisas.

Exempelscenarier med RecordTypes

Scenario RecordTypes-värde
Fånga endast den nekade trafiken "D"
Fånga skapande och avslutande av flödeshändelser "B,E"
Samla endast in aktiv trafikstatistik "C"
Samla in hela flödeslivscykeln "B,C,E"

Hantera RecordTypes-filtreringsvillkor

Du kan aktivera RecordTypes-filtrering när flödesloggen skapas genom att välja vilka flödespostformat som ska samlas in för att skräddarsy loggningsutdata utan att generera onödiga data. Du kan också uppdatera RecordTypes-filtreringsvillkoret för en befintlig flödeslogg.

# Enable RecordTypes filtering while creating flowlog 
New-AzNetworkWatcherFlowLog `
  -Enabled $true -Name <FlowLog Name> `
  -NetworkWatcherName <Network Watcher Name> `
  -ResourceGroupName NetworkWatcherRG `
  -StorageId <Storage Account ID> `
  -TargetResourceId <Target Resource/VNet ID> `
  -RecordTypes "<Record Types>"
# Enable RecordTypes and EnabledFilteringCriteria filtering while creating flow log
New-AzNetworkWatcherFlowLog `
  -Enabled $true -Name <FlowLog Name> `
  -NetworkWatcherName <Network Watcher Name> `
  -ResourceGroupName <Resource Group Name> `
  -StorageId <Storage Account ID> `
  -TargetResourceId <Target Resource/VNet ID> `
  -EnabledFilteringCriteria "<Filtering Criteria Expression>" `
  -RecordTypes "<Record Types>"
# Update RecordTypes filtering condition on existing flow log
Set-AzNetworkWatcherFlowLog `
  -Enabled $true  -Name <FlowLog Name> `
  -NetworkWatcherName <Network Watcher Name> `
  -ResourceGroupName <Resource Group Name> `
  -StorageId <Storage Account ID> `
  -TargetResourceId <Target Resource/VNet ID> `
  -RecordTypes "<Record Types>"
# Remove RecordTypes filtering condition from existing flow log
Set-AzNetworkWatcherFlowLog `
  -Enabled $true  -Name <FlowLog Name> `
  -NetworkWatcherName <Network Watcher Name> `
  -ResourceGroupName <Resource Group Name> `
  -StorageId <Storage Account ID> `
  -TargetResourceId <Target Resource/VNet ID> `
  -RecordTypes ""