Hantera NSG-flödesloggar med hjälp av en Azure Resource Manager-mall
Viktigt!
Den 30 september 2027 dras nätverkssäkerhetsgruppens flödesloggar tillbaka. Som en del av den här tillbakadragningen kommer du inte längre att kunna skapa nya NSG-flödesloggar från och med den 30 juni 2025. Vi rekommenderar att du migrerar till flödesloggar för virtuella nätverk, vilket övervinner begränsningarna i NSG-flödesloggar. Efter slutdatumet stöds inte längre trafikanalys som är aktiverad med NSG-flödesloggar, och befintliga NSG-flödesloggresurser i dina prenumerationer tas bort. NSG-flödesloggposter tas dock inte bort och fortsätter att följa deras respektive kvarhållningsprinciper. Mer information finns i det officiella meddelandet.
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 hanterar NSG-flödesloggar programmatiskt med hjälp av en Azure Resource Manager-mall och Azure PowerShell. Du kan lära dig hur du hanterar en NSG-flödeslogg med hjälp av Azure Portal, PowerShell, Azure CLI eller REST API.
En Azure Resource Manager-mall är en JSON-fil (JavaScript Object Notation) som definierar infrastrukturen och konfigurationen för projektet med deklarativ syntax.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
NSG-flödesloggobjekt
NSG-flödesloggobjektet med alla parametrar visas i följande exempel. En fullständig översikt över objektegenskaperna finns i mallreferensen för NSG-flödesloggar.
{
"name": "string",
"type": "Microsoft.Network/networkWatchers/flowLogs",
"location": "string",
"apiVersion": "2022-07-01",
"properties": {
"targetResourceId": "string",
"storageId": "string",
"enabled": "boolean",
"flowAnalyticsConfiguration": {
"networkWatcherFlowAnalyticsConfiguration": {
"enabled": "boolean",
"workspaceResourceId": "string",
"trafficAnalyticsInterval": "integer"
},
"retentionPolicy": {
"days": "integer",
"enabled": "boolean"
},
"format": {
"type": "string",
"version": "integer"
}
}
}
}
Om du vill skapa en Microsoft.Network/networkWatchers/flowLogs-resurs lägger du till ovanstående JSON i resursavsnittet i mallen.
Skapa mallen
Mer information om hur du använder Azure Resource Manager-mallar finns i:
- Distribuera resurser med Resource Manager-mallar och Azure PowerShell
- Självstudie: Skapa och distribuera din första Azure Resource Manager-mall
I följande exempel finns fullständiga mallar för att aktivera NSG-flödesloggar.
Exempel 1
Exempel 1 använder den enklaste versionen av ARM-mallen med minimiparametrar som har godkänts. Följande mall aktiverar NSG-flödesloggar i en målnätverkssäkerhetsgrupp och lagrar dem i ett visst lagringskonto.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"apiProfile": "2019-09-01",
"resources": [
{
"name": "myNSG-myresourcegroup-flowlog",
"type": "Microsoft.Network/networkWatchers/FlowLogs/",
"location": "eastus",
"apiVersion": "2022-11-01",
"properties": {
"targetResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNSG",
"storageId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
"enabled": true,
"flowAnalyticsConfiguration": {},
"retentionPolicy": {},
"format": {}
}
}
]
}
Kommentar
targetResourceId
är resurs-ID för målnätverkssäkerhetsgruppen.storageId
är resurs-ID för mållagringskontot.
Exempel 2
Exempel 2 använder följande mall för att aktivera NSG-flödesloggar (version 2) med kvarhållning på 5 dagar och trafikanalys med ett bearbetningsintervall på 10 minuter.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"apiProfile": "2019-09-01",
"resources": [
{
"name": "myNSG-myresourcegroup-flowlog",
"type": "Microsoft.Network/networkWatchers/FlowLogs/",
"location": "eastus",
"apiVersion": "2022-11-01",
"properties": {
"targetResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNSG",
"storageId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount",
"enabled": true,
"flowAnalyticsConfiguration": {
"networkWatcherFlowAnalyticsConfiguration": {
"enabled": true,
"workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/defaultresourcegroup-eus/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e-EUS",
"trafficAnalyticsInterval": 10
}
},
"retentionPolicy": {
"days": 5,
"enabled": true
},
"format": {
"type": "JSON",
"version": 2
}
}
}
]
}
Kommentar
targetResourceId
är resurs-ID för målnätverkssäkerhetsgruppen.storageId
är resurs-ID för mållagringskontot.workspaceResourceId
är resurs-ID för arbetsytan för trafikanalys.
Distribuera din Azure Resource Manager-mall
Den här självstudien förutsätter att du har en befintlig resursgrupp och en nätverkssäkerhetsgrupp som du kan aktivera flödesloggning på.
Du kan spara någon av ovanstående exempelmallar lokalt som azuredeploy.json
. Uppdatera egenskapsvärdena så att de pekar på giltiga resurser i din prenumeration.
Om du vill distribuera mallen kör du följande kommando i PowerShell.
$context = Get-AzSubscription -SubscriptionId <SubscriptionId>
Set-AzContext $context
New-AzResourceGroupDeployment -Name EnableFlowLog -ResourceGroupName NetworkWatcherRG `
-TemplateFile "C:\MyTemplates\azuredeploy.json"
Kommentar
Föregående kommandon distribuerar en resurs till resursgruppen NetworkWatcherRG och inte till den resursgrupp som innehåller nätverkssäkerhetsgruppen.
Verifiera distributionen
Det finns ett par sätt att kontrollera om distributionen har lyckats. PowerShell-konsolen bör visa "ProvisioningState" som "Lyckades". Dessutom kan du gå till portalsidan för Flödesloggar för att bekräfta dina ändringar. Om det uppstod problem med distributionen kan du läsa Felsöka vanliga Azure-distributionsfel med Azure Resource Manager.
Ta bort resursen
Azure aktiverar borttagning av resurser via läget Slutför distribution. Om du vill ta bort en flödesloggresurs anger du en distribution i fullständigt läge utan att inkludera den resurs som du vill ta bort. Mer information finns i Slutför distributionsläge.
Nästa steg
- Information om hur du använder inbyggda Azure-principer för att granska eller distribuera NSG-flödesloggar finns i Hantera NSG-flödesloggar med Azure Policy.
- Mer information om trafikanalys finns i Trafikanalys.