重要
2027 年 9 月 30 日に、ネットワーク セキュリティ グループ (NSG) フロー ログは廃止されます。 この提供終了の一環として、2025 年 6 月 30 日以降新しい NSG フロー ログを作成できなくなります。 NSG フロー ログの制限を克服するために、仮想ネットワーク フロー ログに移行することをお勧めします。 提供終了日を過ぎると、NSG フロー ログで有効になっているトラフィック分析はサポートされなくなり、サブスクリプション内の既存の NSG フロー ログ リソースが削除されます。 ただし、NSG フロー ログ のレコードは削除されないため、それぞれの保持ポリシーに従い続けます。 詳細については、公式告知を参照してください。
このクイックスタートでは、Bicep ファイルを使用して NSG フロー ログを有効にする方法について説明します。 詳細については、「 NSG フロー ログの概要 」および 「Azure Resource Manager とは」を参照してください。
Bicep は、宣言型の構文を使用して Azure リソースをデプロイするドメイン固有言語 (DSL) です。 簡潔な構文、信頼性の高いタイプ セーフ、およびコードの再利用のサポートが提供されます。 Bicep により、Azure のコード ソリューションとしてのインフラストラクチャに最適な作成エクスペリエンスが実現します。
[前提条件]
アクティブなサブスクリプションを持つ Azure アカウント。 アカウントをお持ちでない場合は、開始する前に 無料アカウント を作成してください。
コマンドレットを実行するためにローカルにインストールされた Azure PowerShell。 Connect-AzAccount コマンドレットを使用して Azure にサインインします。
Bicep ファイルを確認する
このクイック スタートでは、Azure クイック スタート テンプレートの NSG フロー ログ Bicep ファイルを作成します。
@description('Name of the Network Watcher attached to your subscription. Format: NetworkWatcher_<region_name>')
param networkWatcherName string = 'NetworkWatcher_${location}'
@description('Name of your Flow log resource')
param flowLogName string = 'FlowLog1'
@description('Region where you resources are located')
param location string = resourceGroup().location
@description('Resource ID of the target NSG')
param existingNSG string
@description('Retention period in days. Default is zero which stands for permanent retention. Can be any Integer from 0 to 365')
@minValue(0)
@maxValue(365)
param retentionDays int = 0
@description('FlowLogs Version. Correct values are 1 or 2 (default)')
@allowed([
1
2
])
param flowLogsVersion int = 2
@description('Storage Account type')
@allowed([
'Standard_LRS'
'Standard_GRS'
'Standard_ZRS'
])
param storageAccountType string = 'Standard_LRS'
var storageAccountName = 'flowlogs${uniqueString(resourceGroup().id)}'
resource storageAccount 'Microsoft.Storage/storageAccounts@2021-09-01' = {
name: storageAccountName
location: location
sku: {
name: storageAccountType
}
kind: 'StorageV2'
properties: {}
}
resource networkWatcher 'Microsoft.Network/networkWatchers@2022-01-01' = {
name: networkWatcherName
location: location
properties: {}
}
resource flowLog 'Microsoft.Network/networkWatchers/flowLogs@2022-01-01' = {
name: '${networkWatcherName}/${flowLogName}'
location: location
properties: {
targetResourceId: existingNSG
storageId: storageAccount.id
enabled: true
retentionPolicy: {
days: retentionDays
enabled: true
}
format: {
type: 'JSON'
version: flowLogsVersion
}
}
}
Bicep ファイルには、次のリソースが定義されています。
- Microsoft.Storage/storageAccounts
- Microsoft.Network ネットワークウォッチャー
- Microsoft.Network networkWatchers/flowLogs
前のサンプルで強調表示されているコードは、NSG フロー ログのリソース定義を示しています。
Bicep ファイルをデプロイする
このクイックスタートでは、フロー ログの記録を有効にできるネットワーク セキュリティ グループがあることを前提としています。
Bicep ファイルを main.bicep としてローカル コンピューターに保存します。
Bicep ファイルをデプロイします。
New-AzResourceGroup -Name 'exampleRG' -Location 'eastus' New-AzResourceGroupDeployment -ResourceGroupName 'exampleRG' -TemplateFile ./main.bicep
既存のネットワーク セキュリティ グループのリソース ID を入力するように求められます。 ネットワーク セキュリティ グループのリソース ID の構文は次のとおりです。
"/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Network/networkSecurityGroups/<network-security-group-name>"
デプロイが完了すると、デプロイが成功したことを示すメッセージが表示されます。
デプロイメントを検証する
デプロイが成功したかどうかを確認するには、次の 2 つのオプションがあります。
- コンソールで
ProvisioningState
がSucceeded
として表示されます。 - NSG フロー ログのポータル ページに移動して、変更内容を確認します。
デプロイに問題がある場合は、「Azure Resource Manager を使った一般的な Azure デプロイ エラーのトラブルシューティング」を参照してください。
リソースをクリーンアップする
完全デプロイ モードを使って Azure リソースを削除できます。 フロー ログ リソースを削除するには、削除するリソースを含めずに、完全モードでデプロイを指定します。 完全デプロイ モードの詳細をお読みください。
Azure portal で NSG フロー ログを無効にすることもできます。
Azure portal にサインインします。
ポータルの上部にある検索ボックスに、「network watcher」と入力します。 検索結果から Network Watcher を選択します。
[ログ] の下の [フロー ログ] を選択します。
フロー ログの一覧で、無効にするフロー ログを選びます。
無効にするを選択します。
関連コンテンツ
このクイックスタートでは、Bicep ファイルを使用して NSG フロー ログを有効にする方法について説明しました。 次に、トラフィック分析を使用して NSG フロー ログ データを視覚化する方法について説明します。