Azure PowerShell を使用して NSG フロー ログを管理する
[アーティクル] 2024/09/26
1 人の共同作成者
フィードバック
この記事の内容
前提条件
Insights プロバイダーの登録
フロー ログの作成
フロー ログとトラフィック分析ワークスペースを作成する
フロー ログを変更する
リージョン内のすべてのフロー ログを一覧表示する
フロー ログ リソースの詳細を表示する
フローのログをダウンロードする
フロー ログを無効にする
フロー ログを削除する
関連するコンテンツ
さらに 7 個を表示
重要
2027 年 9 月 30 日にネットワーク セキュリティ グループ (NSG) フロー ログは廃止されます。 この提供終了の一環として、2025 年 6 月 30 日以降新しい NSG フロー ログを作成できなくなります。 NSG フロー ログの制限を克服するために、仮想ネットワーク フロー ログ に移行 することをお勧めします。 提供終了日を過ぎると、NSG フロー ログで有効になっているトラフィック分析がサポートされなくなり、サブスクリプション内の既存の NSG フロー ログ リソースが削除されます。 ただし、NSG フロー ログのレコードは削除されず、引き続きそれぞれのアイテム保持ポリシーに従います。 詳細については、公式告知 を参照してください。
ネットワーク セキュリティ グループのフロー ログは、ネットワーク セキュリティ グループを通過する IP トラフィックに関する情報をログに記録できる Azure Network Watcher の機能です。 ネットワーク セキュリティ グループのフロー ログの詳細については、NSG フロー ログの概要 に関するページを参照してください。
この記事では、Azure PowerShell を使用して NSG フロー ログを作成、変更、無効化、または削除する方法について説明します。 Azure portal 、Azure CLI 、REST API 、ARM テンプレート を使用して NSG フロー ログを管理する方法を説明します。
ネットワーク セキュリティ グループを通過するトラフィックを正しくログに記録するために、Microsoft.Insights プロバイダーが登録されている必要があります。 Microsoft.Insights プロバイダーが登録されているかどうか不明な場合は、Register-AzResourceProvider を使用して登録します。
# Register Microsoft.Insights provider.
Register-AzResourceProvider -ProviderNamespace 'Microsoft.Insights'
フロー ログを作成するネットワーク セキュリティ グループのプロパティと、作成したフロー ログの保存に使用するストレージ アカウントを、それぞれ Get-AzNetworkSecurityGroup と Get-AzStorageAccount を使用して取得します。
# 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'
注意
ストレージ アカウントが別のサブスクリプションにある場合は、ネットワーク セキュリティ グループとストレージ アカウントを同じ Azure Active Directory テナントに関連付ける必要があります。 各サブスクリプションで使用するアカウントは、必要なアクセス許可 を持っている必要があります。
New-AzNetworkWatcherFlowLog を使用してフロー ログを作成します。 フロー ログは、Network Watcher の既定のリソース グループ NetworkWatcherRG に作成されます。
# Create a version 1 NSG flow log.
New-AzNetworkWatcherFlowLog -Name 'myFlowLog' -Location 'eastus' -TargetResourceId $nsg.Id -StorageId $sa.Id -Enabled $true
フロー ログとトラフィック分析ワークスペースを作成する
フロー ログを作成するネットワーク セキュリティ グループのプロパティと、作成したフロー ログの保存に使用するストレージ アカウントを、それぞれ Get-AzNetworkSecurityGroup と Get-AzStorageAccount を使用して取得します。
# 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'
注意
ストレージ アカウントには、Microsoft サービスまたは特定の仮想ネットワークのみにネットワーク アクセスを制限するネットワーク規則を指定できません。
ストレージ アカウントが別のサブスクリプションにある場合は、ネットワーク セキュリティ グループとストレージ アカウントを同じ Azure Active Directory テナントに関連付ける必要があります。 各サブスクリプションで使用するアカウントは、必要なアクセス許可 を持っている必要があります。
New-AzOperationalInsightsWorkspace を使用して、トラフィック分析ワークスペースを作成します。
# Create a traffic analytics workspace and place its properties into a variable.
$workspace = New-AzOperationalInsightsWorkspace -Name 'myWorkspace' -ResourceGroupName 'myResourceGroup' -Location 'eastus'
New-AzNetworkWatcherFlowLog を使用してフロー ログを作成します。 フロー ログは、Network Watcher の既定のリソース グループ NetworkWatcherRG に作成されます。
# Create a version 1 NSG flow log with traffic analytics.
New-AzNetworkWatcherFlowLog -Name 'myFlowLog' -Location 'eastus' -TargetResourceId $nsg.Id -StorageId $sa.Id -Enabled $true -EnableTrafficAnalytics -TrafficAnalyticsWorkspaceId $workspace.ResourceId
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'
# Update the NSG flow log.
Set-AzNetworkWatcherFlowLog -Name 'myFlowLog' -Location 'eastus' -TargetResourceId $nsg.Id -StorageId $sa.Id -Enabled $true -FormatVersion 2
Get-AzNetworkWatcherFlowLog を使用して、サブスクリプション内の特定のリージョン内のすべての NSG フロー ログ リソースを一覧表示します。
# Get all NSG flow logs in East US region.
Get-AzNetworkWatcherFlowLog -Location 'eastus' | format-table Name
注意
Get-AzNetworkWatcherFlowLog
コマンドレットで -Location
パラメーターを使用するには、NetworkWatcherRG リソース グループに追加の閲覧者 アクセス許可が必要です。
Get-AzNetworkWatcherFlowLog を使用して、フロー ログ リソースの詳細を表示します。
# Get the details of a flow log.
Get-AzNetworkWatcherFlowLog -Name 'myFlowLog' -Location 'eastus'
注意
Get-AzNetworkWatcherFlowLog
コマンドレットで -Location
パラメーターを使用するには、NetworkWatcherRG リソース グループに追加の閲覧者 アクセス許可が必要です。
フローのログの保存場所は作成時に定義されます。 ストレージ アカウントからフロー ログにアクセスしてダウンロードするには、Azure Storage Explorer を使用できます。 詳細については、「Storage Explorer の概要 」を参照してください。
ストレージ アカウントに保存される 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 フロー ログのログ形式 に関するページを参照してください。
フロー ログを削除せずに一時的に無効にするには、-Enabled $false
パラメーターで 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'
# Update the NSG flow log.
Set-AzNetworkWatcherFlowLog -Enabled $false -Name 'myFlowLog' -Location 'eastus' -TargetResourceId $nsg.Id -StorageId $sa.Id
NSG フロー ログを完全に削除するには、Remove-AzNetworkWatcherFlowLog コマンドを使用します。 フロー ログを削除すると、その設定と関連付けがすべて削除されます。 同じネットワーク セキュリティ グループに対してフロー ログをもう一度開始するには、それに対して新しいフロー ログを作成する必要があります。
# Delete the flow log.
Remove-AzNetworkWatcherFlowLog -Name 'myFlowLog' -Location 'eastus'
注意
フロー ログを削除しても、ストレージ アカウントからフロー ログ データは削除されません。 ストレージ アカウントに格納されているフロー ログ データは、構成されたアイテム保持ポリシーに従います。