這很重要
網路安全群組(NSG)流程日誌將於 2027 年 9 月 30 日退休。 由於此功能即將退休,不再支援新的 NSG 流程日誌建立。
遷移 至 虛擬網路流日誌,以解決 NSG 流量日誌的限制。 退休日期過後,Azure 將不再支援啟用 NSG 流程日誌的流量分析功能,並且會刪除你訂閱中現有的 NSG 流程日誌資源。 不過,Azure 並不會從 Azure 儲存體 刪除現有的 NSG 流程日誌紀錄,且仍會依照設定的保留政策執行。 如需詳細資訊,請參閱官方公告。
網路安全群組流量記錄是 Azure 網路監看員 的一項功能,你可以用來記錄透過網路安全群組流經的 IP 流量資訊。 如需網路安全組流量記錄的詳細資訊,請參閱 NSG 流量記錄概觀。
在本文中,您將學習如何透過 Azure 入口網站、PowerShell 和 Azure CLI 來更改、啟用、停用或刪除現有的網路安全群組流程日誌。
先決條件
註冊數據洞察提供商
要記錄通過網路安全群組的流量,您必須註冊 Microsoft。洞察提供者。 如果你不確定 Microsoft。Insights 提供者已註冊,請依照以下步驟在 Azure 入口網站查詢其狀態:
在入口網站頂端的搜尋方塊中,輸入訂用帳戶。 從搜尋結果,選取 [訂用帳戶]。
在訂用帳戶中,選取您想要啟用提供者的 Azure 訂用帳戶。
在 [設定] 下,選取 [資源提供者]。
在篩選方塊中輸入深入解析。
確認顯示的提供者狀態為 [已註冊]。 如果狀態是 NotRegistered,請選擇 Microsoft。Insights 提供者,然後選擇註冊。
要記錄通過網路安全群組的流量,您必須註冊 Microsoft。洞察提供者。 如果你不確定 Microsoft。Insights 提供者已註冊,請使用 Register-AzResourceProvider cmdlet 來註冊。
# Register Microsoft.Insights provider.
Register-AzResourceProvider -ProviderNamespace 'Microsoft.Insights'
要記錄通過網路安全群組的流量,您必須註冊 Microsoft。洞察提供者。 如果你不確定 Microsoft。Insights 提供者已註冊,請使用 az provider register 指令來註冊它。
# Register Microsoft.Insights provider.
az provider register --namespace 'Microsoft.Insights'
啟用或停用流量分析
啟用流量記錄的流量分析,以分析流量記錄資料。 流量分析可讓您深入了解虛擬網路的流量模式。 您可以隨時啟用或停用流日志的分析功能。
備註
除了啟用或停用使用分析之外,您也可以變更其他流量記錄設定。
若要啟用流量記錄的流量分析,請遵循下列步驟:
在入口網站頂端的搜尋方塊中,輸入網路監看員。 從搜尋結果中,選取 [網路監看員]。
在 [記錄] 底下,選取 [流量記錄]。
在 [網路監看員 | 流量記錄] 中,選取您要啟用流量分析的流量記錄。
在 [流量記錄設定] 的 [流量分析] 下,勾選 [啟用流量分析] 核取方塊。
輸入或選取下列值:
| 設定 |
價值觀 |
| 訂閱 |
選取 Log Analytics 工作區的 Azure 訂用帳戶。 |
| Log Analytics 工作區 |
選取 Log Analytics 工作區。 根據預設,Azure 入口網站會在 defaultresourcegroup-{Region} 資源群組中建立 DefaultWorkspace-{SubscriptionID}-{Region} Log Analytics 工作區。 |
| 流量記錄間隔 |
選取您偏好的處理間隔,可用的選項如下:[每 1 小時] 和 [每 10 分鐘]。 預設處理間隔是每一小時一次。 如需詳細資訊,請參閱流量分析。 |
選取儲存以套用變更。
若要停用流量記錄的流量分析,請採取先前的步驟 1-3,然後取消勾選 [啟用流量分析] 核取方塊,然後選取 [儲存]。
要啟用流量日誌資源的流量分析,請使用 Set-AzNetworkWatcherFlowLog 指令檔。
# Place the network security group properties into a variable.
$nsg = Get-AzNetworkSecurityGroup -Name 'myNSG' -ResourceGroupName 'myResourceGroup'
# Place the storage account properties into a variable.
$sa = Get-AzStorageAccount -Name 'myStorageAccount' -ResourceGroupName 'myResourceGroup'
# Place the workspace configuration into a variable.
$workspace = Get-AzOperationalInsightsWorkspace -Name 'myWorkspace' -ResourceGroupName 'myResourceGroup'
# Update the NSG flow log.
Set-AzNetworkWatcherFlowLog -Enabled $true -Name 'myFlowLog' -Location 'eastus' -TargetResourceId $nsg.Id -StorageId $sa.Id -EnableTrafficAnalytics -TrafficAnalyticsWorkspaceId $workspace.ResourceId -FormatVersion 2
若要停用流量日誌資源的流量分析,並繼續產生並儲存流量日誌到儲存帳號,請使用 Set-AzNetworkWatcherFlowLog 指令檔。
# Place the network security group properties into a variable.
$nsg = Get-AzNetworkSecurityGroup -Name 'myNSG' -ResourceGroupName 'myResourceGroup'
# Place the storage account configuration into a variable.
$sa = Get-AzStorageAccount -Name 'myStorageAccount' -ResourceGroupName 'myResourceGroup'
# Update the NSG flow log.
Set-AzNetworkWatcherFlowLog -Enabled $true -Name 'myFlowLog' -Location 'eastus' -TargetResourceId $nsg.Id -StorageId $sa.Id -FormatVersion 2
要啟用流量日誌資源的流量分析,請使用 az network watcher flow-log update 指令。
# Update the NSG flow log.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --traffic-analytics true --workspace 'myWorkspace' --log-version '2'
若要停用流量日誌資源的流量分析,並繼續產生並儲存流量日誌到儲存帳號,請使用 az network watcher flow-log update 指令。
# Update the NSG flow log.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --traffic-analytics false --log-version '2'
列出所有流量記錄
您可以列出訂用帳戶或訂用帳戶群組中的所有流程記錄(Azure 入口網站)。 您也可以列出區域中的所有流量記錄。
在入口網站頂端的搜尋方塊中,輸入網路監看員。 從搜尋結果中,選取 [網路監看員]。
在 [記錄] 底下,選取 [流量記錄]。
選擇訂閱等 值篩選器 ,可選擇一個或多個訂閱項目。 您可以套用其他篩選,例如 位置等於 列出區域中的所有流程記錄。
使用 Get-AzNetworkWatcherFlowLog 指令檔來列出你訂閱中特定區域內的所有流量日誌資源。
# Get all flow logs in East US region.
Get-AzNetworkWatcherFlowLog -Location 'eastus' | format-table Name
備註
若要使用 -Location 參數與 Get-AzNetworkWatcherFlowLog Cmdlet,則需要 NetworkWatcherRG 資源群組的額外讀者權限。
請使用 az network watcher flow-log list 指令,列出你訂閱中特定區域內的所有流量日誌資源。
# Get all flow logs in East US region.
az network watcher flow-log list --location 'eastus' --out table
檢視流量記錄資源的詳細資料
您可以檢視流程記錄檔的詳細數據。
在入口網站頂端的搜尋方塊中,輸入網路監看員。 從搜尋結果中,選取 [網路監看員]。
在 [記錄] 底下,選取 [流量記錄]。
在 [網路監看員 | 流量記錄],選取您要查看的流量記錄。
在 流量日誌設定中,查看流量日誌資源的設定。
選取 [取消] 關閉設定頁面,而不進行變更。
使用 Get-AzNetworkWatcherFlowLog 指令檔來查看流量日誌資源的詳細資訊。
# Get the details of a flow log.
Get-AzNetworkWatcherFlowLog -Name 'myFlowLog' -Location 'eastus'
備註
若要使用 -Location 參數與 Get-AzNetworkWatcherFlowLog Cmdlet,則需要 NetworkWatcherRG 資源群組的額外讀者權限。
使用 az network watcher flow-log show 指令來查看流量日誌資源的詳細資訊。
# Get the details of a flow log.
az network watcher flow-log show --name 'myFlowLog' --resource-group 'NetworkWatcherRG' --location 'eastus'
下載流程記錄檔
你可以從儲存流量日誌的儲存帳號下載流量記錄資料。
在入口網站頂端的搜尋方塊中,輸入儲存體帳戶。 選取搜尋結果中的 [儲存體帳戶]。
選取您用來儲存記錄的儲存體帳戶。
在 [資料儲存體] 下選取 [容器]。
選取 insights-logs-networksecuritygroupflowevent 容器。
在 insights-logs-networksecuritygroupflowevent 中,瀏覽資料夾階層,直到您到達您想要下載的 PT1H.json 檔案為止。 NSG 流量記錄檔遵循下列路徑:
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
選擇檔案右側PT1H.json的省略號......然後選擇下載。
要從你的儲存帳號下載 NSG 流程日誌,請使用 Get-AzStorageBlobContent 指令檔。 如需詳細資訊,請參閱 下載 Blob。
儲存至儲存體帳戶的 NSG 流量記錄檔遵循以下路徑:
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
要從你的儲存帳號下載 NSG 流程日誌,請使用 az storage blob download 指令。 如需詳細資訊,請參閱 下載 Blob。
儲存至儲存體帳戶的 NSG 流量記錄檔遵循以下路徑:
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
如需關於流量記錄結構的資訊,請參閱 NSG 流量記錄的記錄格式。
停用流量記錄
您可以暫時停用流程記錄,而不刪除它。 停用流量記錄會停止相關網路安全性群組的流量記錄。 然而,流量記錄資源會保留其所有設定和關聯。 您可以隨時重新啟用,繼續進行已設定的網路安全性群組的流量記錄。
在入口網站頂端的搜尋方塊中,輸入網路監看員。 從搜尋結果中,選取 [網路監看員]。
在 [記錄] 底下,選取 [流量記錄]。
在 [網路監看員 | 流量記錄],選取您所要停用流量記錄的核取方塊。
選取「停用」。
使用 Set-AzNetworkWatcherFlowLog cmdlet 來停用流量日誌。
# Place the network security group properties into a variable.
$nsg = Get-AzNetworkSecurityGroup -Name 'myNSG' -ResourceGroupName 'myResourceGroup'
# Place the storage account properties into a variable.
$sa = Get-AzStorageAccount -Name 'myStorageAccount' -ResourceGroupName 'myResourceGroup'
# Update the NSG flow log.
Set-AzNetworkWatcherFlowLog -Enabled $false -Name 'myFlowLog' -Location 'eastus' -TargetResourceId $nsg.Id -StorageId $sa.Id
使用 az network watcher flow-log update 指令來停用流量日誌。
# Disable the flow log.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --enabled false
備註
如果你啟用流量日誌的流量分析功能,必須先停用它,才能關閉流量日誌。 若要停用流量分析,請參閱啟用或停用流量分析。
刪除流量記錄
你可以永久刪除 NSG 的流程日誌。 刪除流程日誌會移除所有設定和關聯。 要重新開始同一資源的流量記錄,必須建立新的流程日誌。
在入口網站頂端的搜尋方塊中,輸入網路監看員。 從搜尋結果中,選取 [網路監看員]。
在 [記錄] 底下,選取 [流量記錄]。
在 [網路監看員 | 流量記錄],選取您要刪除之流量記錄的核取方塊。
選擇 刪除。
備註
刪除流量記錄不會從儲存體帳戶刪除流量記錄資料。 儲存在儲存帳號中的流程日誌資料會遵循設定的保留政策,或是會一直存放在儲存帳號,直到你手動刪除它。
相關內容