NSG-folyamatnaplók kezelése REST API használatával
A hálózati biztonsági csoportok folyamatnaplózása az Azure Network Watcher egyik funkciója, amellyel naplózhatja a hálózati biztonsági csoporton áthaladó IP-forgalom adatait. A hálózati biztonsági csoportok folyamatnaplózásáról további információt az NSG-folyamatnaplók áttekintésében talál.
Ez a cikk bemutatja, hogyan használhatja a REST API-t a folyamatnaplók engedélyezésére, letiltására és lekérdezésére a REST API használatával. Megtudhatja, hogyan kezelheti az NSG-folyamatnaplókat az Azure Portal, a PowerShell, az Azure CLI vagy az ARM-sablon használatával.
Ebből a cikkből megtudhatja, hogyan:
- Folyamatnaplók engedélyezése (2. verzió)
- Folyamatnaplók letiltása
- Lekérdezési folyamat naplóinak állapota
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Fiók ingyenes létrehozása.
- ARMClient. Az ARMClient egy egyszerű parancssori eszköz az Azure Resource Manager API meghívásához. Az eszköz telepítéséhez tekintse meg az ARMClientet. Az NSG-folyamatnaplók REST API-jának részletes specifikációiért lásd : Flow Logs – REST API
Fontos
Amikor REST API-hívásokat indít a Network Watchernek, a kérelem URI-jában szereplő erőforráscsoport neve a Network Watchert tartalmazó erőforráscsoportra hivatkozik, nem pedig a diagnosztikai műveleteket végrehajtó erőforrásokra.
Bejelentkezés az ARMClient használatával
Jelentkezzen be az armclientbe az Azure-beli hitelesítő adataival.
armclient login
Insights-szolgáltató regisztrálása
Microsoft. Elemzések szolgáltatót regisztrálni kell a hálózati biztonsági csoporton áthaladó forgalom sikeres naplózásához. Ha nem biztos abban, hogy a Microsoft.Elemzések szolgáltató regisztrálva van, használja a Szolgáltatók – REST API regisztrálása lehetőséget.
$subscriptionId = "00000000-0000-0000-0000-000000000000"
armclient post "https://management.azure.com//subscriptions/${subscriptionId}/providers/Microsoft.Insights/register?api-version=2021-04-01"
NSG-folyamatnaplók engedélyezése
A folyamatnaplók 2. verziójának engedélyezésére szolgáló parancs az alábbi példában látható. Az 1. verzió esetében cserélje le a "verzió" mezőt az "1" mezőre:
$subscriptionId = "00000000-0000-0000-0000-000000000000"
$targetUri = "" # example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName/providers/Microsoft.Network/networkSecurityGroups/{nsgName}"
$storageId = "/subscriptions/00000000-0000-0000-0000-000000000000/{resourceGroupName/providers/Microsoft.Storage/storageAccounts/{saName}"
$resourceGroupName = "NetworkWatcherRG"
$networkWatcherName = "NetworkWatcher_westcentralus"
$requestBody = @"
{
'targetResourceId': '${targetUri}',
'properties': {
'storageId': '${storageId}',
'enabled': 'true',
'retentionPolicy' : {
days: 5,
enabled: true
},
'format': {
'type': 'JSON',
'version': 2
}
}
}
"@
armclient post "https://management.azure.com/subscriptions/${subscriptionId}/ResourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkWatchers/${networkWatcherName}/configureFlowLog?api-version=2022-11-01" $requestBody
Az előző példából visszaadott válasz a következő:
{
"targetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{nsgName}",
"properties": {
"storageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{saName}",
"enabled": true,
"retentionPolicy": {
"days": 5,
"enabled": true
},
"format": {
"type": "JSON",
"version": 2
}
}
}
Feljegyzés
- Az előző példában használt Network Watchers – Set Flow Log Configuration REST API régi, és hamarosan elavult lehet.
- A folyamatnaplók létrehozásához vagy frissítéséhez ajánlott az új Folyamatnaplók – REST API létrehozása vagy frissítése .
Az NSG-forgalom naplóinak letiltása
Az alábbi példában tiltsa le a folyamatnaplókat. A hívás megegyezik a folyamatnaplók engedélyezésével, kivéve, hogy a false értéke az engedélyezett tulajdonsághoz van beállítva.
$subscriptionId = "00000000-0000-0000-0000-000000000000"
$targetUri = "" # example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName/providers/Microsoft.Network/networkSecurityGroups/{nsgName}"
$storageId = "/subscriptions/00000000-0000-0000-0000-000000000000/{resourceGroupName/providers/Microsoft.Storage/storageAccounts/{saName}"
$resourceGroupName = "NetworkWatcherRG"
$networkWatcherName = "NetworkWatcher_westcentralus"
$requestBody = @"
{
'targetResourceId': '${targetUri}',
'properties': {
'storageId': '${storageId}',
'enabled': 'false',
'retentionPolicy' : {
days: 5,
enabled: true
},
'format': {
'type': 'JSON',
'version': 2
}
}
}
"@
armclient post "https://management.azure.com/subscriptions/${subscriptionId}/ResourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkWatchers/${networkWatcherName}/configureFlowLog?api-version=2022-11-01" $requestBody
Az előző példából visszaadott válasz a következő:
{
"targetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{nsgName}",
"properties": {
"storageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{saName}",
"enabled": false,
"retentionPolicy": {
"days": 5,
"enabled": true
},
"format": {
"type": "JSON",
"version": 2
}
}
}
Feljegyzés
- Az előző példában használt Network Watchers – Set Flow Log Configuration REST API régi, és hamarosan elavult lehet.
- Javasoljuk, hogy használja az új folyamatnaplókat – REST API létrehozása vagy frissítése a folyamatnaplók és a folyamatnaplók letiltásához – A REST API törlése a folyamatnapló-erőforrás törléséhez.
Lekérdezési folyamat naplói
A következő REST-hívás lekérdezi a hálózati biztonsági csoport folyamatnaplóinak állapotát.
$subscriptionId = "00000000-0000-0000-0000-000000000000"
$targetUri = "" # example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName/providers/Microsoft.Network/networkSecurityGroups/{nsgName}"
$resourceGroupName = "NetworkWatcherRG"
$networkWatcherName = "NetworkWatcher_westcentralus"
$requestBody = @"
{
'targetResourceId': '${targetUri}',
}
"@
armclient post "https://management.azure.com/subscriptions/${subscriptionId}/ResourceGroups/${resourceGroupName}/providers/Microsoft.Network/networkWatchers/${networkWatcherName}/queryFlowLogStatus?api-version=2022-11-01" $requestBody
Az alábbi példa a visszaadott választ mutatja be:
{
"targetResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{nsgName}",
"properties": {
"storageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{saName}",
"enabled": true,
"retentionPolicy": {
"days": 5,
"enabled": true
},
"format": {
"type": "JSON",
"version": 2
}
}
}
Feljegyzés
- Az előző példában használt Network Watchers – Folyamatnapló állapotának lekérése REST API-hoz további olvasói engedély szükséges a hálózati figyelő erőforráscsoportjában. Emellett ez az API régi, és hamarosan elavult lehet.
- Javasoljuk, hogy használja az új folyamatnaplókat – REST API lekérése a folyamatnaplók lekérdezéséhez.
Folyamatnapló letöltése
A folyamatnapló tárolási helye a létrehozáskor van meghatározva. A tárfiókba mentett folyamatnaplók elérésének kényelmes eszköze a Microsoft Azure Storage Explorer. További információ: A Storage Explorer használatának első lépései.
Ha meg van adva tárfiók, a csomagrögzítési fájlokat a rendszer a következő helyen menti egy tárfiókba:
https://{storageAccountName}.blob.core.windows.net/insights-logs-networksecuritygroupflowevent/resourceId=/SUBSCRIPTIONS/{subscriptionID}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/{nsgName}/y={year}/m={month}/d={day}/h={hour}/m=00/macAddress={macAddress}/PT1H.json
Következő lépések
- Ha tudni szeretné, hogyan használhatja az Azure beépített szabályzatait az NSG-folyamatnaplók naplózására vagy üzembe helyezésére, olvassa el az NSG-folyamatnaplók Azure Policy használatával történő kezelését ismertető témakört.
- A forgalomelemzéssel kapcsolatos további információkért lásd : Traffic analytics.