Dela via


Hantera NSG-flödesloggar med hjälp av Azure CLI

Flödesloggning för nätverkssäkerhetsgrupp är en funktion i Azure Network Watcher som gör att du kan logga information om IP-trafik som flödar genom en nätverkssäkerhetsgrupp. Mer information om flödesloggning för nätverkssäkerhetsgrupper finns i Översikt över NSG-flödesloggar.

I den här artikeln får du lära dig hur du skapar, ändrar, inaktiverar eller tar bort en NSG-flödeslogg med hjälp av Azure CLI. Du kan lära dig hur du hanterar en NSG-flödeslogg med hjälp av Azure-portalen, PowerShell, REST API eller ARM-mallen.

Förutsättningar

Registrera Insights-providern

Microsoft.Insights-providern måste vara registrerad för att kunna logga trafik som flödar via en nätverkssäkerhetsgrupp. Om du inte är säker på om Microsoft.Insights-providern är registrerad använder du az provider register för att registrera den.

# Register Microsoft.Insights provider.
az provider register --namespace 'Microsoft.Insights'

Skapa en flödeslogg

Skapa en flödeslogg med az network watcher flow-log create. Flödesloggen skapas i nätverksbevakarens standardresursgrupp NetworkWatcherRG.

# Create a version 1 NSG flow log.
az network watcher flow-log create --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount'

Kommentar

  • Om lagringskontot finns i en annan prenumeration måste nätverkssäkerhetsgruppen och lagringskontot associeras med samma Azure Active Directory-klientorganisation. Det konto som du använder för varje prenumeration måste ha nödvändiga behörigheter.
  • Om lagringskontot finns i en annan resursgrupp eller prenumeration måste du ange lagringskontots fullständiga ID i stället för bara dess namn. Om lagringskontot myStorageAccount till exempel finns i en resursgrupp med namnet StorageRG medan nätverkssäkerhetsgruppen finns i resursgruppen myResourceGroup, måste du använda /subscriptions/{SubscriptionID}/resourceGroups/RG-Storage/providers/Microsoft.Storage/storageAccounts/myStorageAccount för parametern i stället för --storage-accountmyStorageAccount.
# Place the storage account resource ID into a variable.
sa=$(az storage account show --name 'myStorageAccount' --query 'id' --output 'tsv')

# Create a version 1 NSG flow log (the storage account is in a different resource group).
az network watcher flow-log create --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account $sa

Skapa en arbetsyta för flödesloggar och trafikanalyser

  1. Skapa en Log Analytics-arbetsyta med az monitor log-analytics workspace create.

    # Create a Log Analytics workspace.
    az monitor log-analytics workspace create --name 'myWorkspace' --resource-group 'myResourceGroup'
    
  2. Skapa en flödeslogg med az network watcher flow-log create. Flödesloggen skapas i nätverksbevakarens standardresursgrupp NetworkWatcherRG.

    # Create a version 1 NSG flow log and enable traffic analytics for it.
    az network watcher flow-log create --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --traffic-analytics 'true' --workspace 'myWorkspace'
    

Kommentar

  • Lagringskontot kan inte ha nätverksregler som begränsar nätverksåtkomsten till endast Microsoft-tjänster eller specifika virtuella nätverk.
  • Om lagringskontot finns i en annan prenumeration måste nätverkssäkerhetsgruppen och lagringskontot associeras med samma Azure Active Directory-klientorganisation. Det konto som du använder för varje prenumeration måste ha nödvändiga behörigheter.
  • Om lagringskontot finns i en annan resursgrupp eller prenumeration måste det fullständiga ID:t för lagringskontot användas. Om lagringskontot myStorageAccount till exempel finns i en resursgrupp med namnet StorageRG medan nätverkssäkerhetsgruppen finns i resursgruppen myResourceGroup, måste du använda /subscriptions/{SubscriptionID}/resourceGroups/RG-Storage/providers/Microsoft.Storage/storageAccounts/myStorageAccount för parametern i stället för --storage-accountmyStorageAccount.
# Place the storage account resource ID into a variable.
sa=$(az storage account show --name 'myStorageAccount' --query 'id' --output 'tsv')

# Create a Log Analytics workspace.
az monitor log-analytics workspace create --name 'myWorkspace' --resource-group 'myResourceGroup'

# Create a version 1 NSG flow log and enable traffic analytics for it (the storage account is in a different resource group).
az network watcher flow-log create --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account $sa --traffic-analytics 'true' --workspace 'myWorkspace'

Ändra en flödeslogg

Du kan använda az network watcher flow-log update för att ändra egenskaperna för en flödeslogg. Du kan till exempel ändra flödesloggversionen eller inaktivera trafikanalys.

# Update the flow log.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --traffic-analytics 'false' --log-version '2'

Visa en lista över alla flödesloggar i en region

Använd az network watcher flow-log list för att visa alla NSG-flödesloggresurser i en viss region i din prenumeration.

# Get all NSG flow logs in East US region.
az network watcher flow-log list --location 'eastus' --out table

Visa information om en flödesloggresurs

Använd az network watcher flow-log show för att se information om en flödesloggresurs.

# Get the details of a flow log.
az network watcher flow-log show --name 'myFlowLog' --resource-group 'NetworkWatcherRG' --location 'eastus'

Ladda ned en flödeslogg

Lagringsplatsen för en flödeslogg definieras när den skapas. Om du vill komma åt och ladda ned flödesloggar från ditt lagringskonto kan du använda Azure Storage Explorer. Mer information finns i Komma igång med Storage Explorer.

NSG-flödesloggfiler som sparats på ett lagringskonto följer den här sökvägen:

https://{storageAccountName}.blob.core.windows.net/insights-logs-networksecuritygroupflowevent/resourceId=/SUBSCRIPTIONS/{subscriptionID}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/{NetworkSecurityGroupName}/y={year}/m={month}/d={day}/h={hour}/m=00/macAddress={macAddress}/PT1H.json

Information om strukturen för en flödeslogg finns i Loggformat för NSG-flödesloggar.

Inaktivera en flödeslogg

Om du tillfälligt vill inaktivera en flödeslogg utan att ta bort den använder du kommandot az network watcher flow-log update . Om du inaktiverar en flödeslogg stoppas flödesloggningen för den associerade nätverkssäkerhetsgruppen. Flödesloggresursen finns dock kvar med alla inställningar och associationer. Du kan återaktivera den när som helst för att återuppta flödesloggningen för den konfigurerade nätverkssäkerhetsgruppen.

Kommentar

Om trafikanalys är aktiverat för en flödeslogg måste den inaktiveras innan du kan inaktivera flödesloggen.

# Disable traffic analytics log if it's enabled.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --traffic-analytics 'false' --workspace 'myWorkspace'

# Disable the flow log.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --enabled 'false'

Ta bort en flödeslogg

Om du vill ta bort en flödeslogg permanent använder du kommandot az network watcher flow-log delete . Om du tar bort en flödeslogg tas alla inställningar och associationer bort. Om du vill börja flödesloggningen igen för samma nätverkssäkerhetsgrupp måste du skapa en ny flödeslogg för den.

# Delete the flow log.
az network watcher flow-log delete --name 'myFlowLog' --location 'eastus' --no-wait 'true'

Kommentar

Om du tar bort en flödeslogg tas inte flödesloggdata bort från lagringskontot. Flödesloggdata som lagras i lagringskontot följer den konfigurerade kvarhållningsprincipen.