ネットワーク セキュリティ グループのフローのログ記録の概要Introduction to flow logging for network security groups

はじめにIntroduction

ネットワーク セキュリティ グループ (NSG) のフロー ログは、NSG を使用した IP トラフィックに関する情報をログに記録できる Azure Network Watcher の機能です。Network security group (NSG) flow logs is a feature of Azure Network Watcher that allows you to log information about IP traffic flowing through an NSG. フロー データは、アクセスできる場所から Azure Storage アカウントに送信され、選択した視覚化ツール (SIEM またはIDS) にエクスポートされます。Flow data is sent to Azure Storage accounts from where you can access it as well as export it to any visualization tool, SIEM, or IDS of your choice.

フロー ログの概要

フロー ログを使用する理由Why use Flow Logs?

妥協のないセキュリティ、コンプライアンス、パフォーマンスを実現するには、独自のネットワークを監視、管理し、把握することが不可欠です。It is vital to monitor, manage, and know your own network for uncompromised security, compliance, and performance. 独自の環境を保護および最適化するうえで最も重要なのは、環境を理解することです。Knowing your own environment is of paramount importance to protect and optimize it. 多くの場合、ネットワークの現在の状態、接続しているユーザーとその接続先、接続元、インターネットに対して開いているポート、想定されたネットワークの動作、不規則なネットワークの動作、トラフィックの急激な増加を把握する必要があります。You often need to know the current state of the network, who is connecting, where they're connecting from, which ports are open to the internet, expected network behavior, irregular network behavior, and sudden rises in traffic.

フロー ログは、クラウド環境内のすべてのネットワーク アクティビティの信頼できるソースです。Flow logs are the source of truth for all network activity in your cloud environment. ご自身がリソースの最適化を試みるスタートアップ企業であろうと、侵入の検出を試みる大企業であろうと、フロー ログは最善の方法です。Whether you're an upcoming startup trying to optimize resources or large enterprise trying to detect intrusion, Flow logs are your best bet. フロー ログは、ネットワーク フローの最適化、スループットの監視、コンプライアンスの検証、侵入の検出などに使用できます。You can use it for optimizing network flows, monitoring throughput, verifying compliance, detecting intrusions and more.

一般的なユース ケースCommon use cases

ネットワーク監視:不明または不要なトラフィックを特定します。Network Monitoring: Identify unknown or undesired traffic. トラフィック レベルと帯域幅の消費を監視します。Monitor traffic levels and bandwidth consumption. アプリケーションの動作を把握するために、フロー ログを IP およびポートでフィルター処理します。Filter flow logs by IP and port to understand application behavior. 監視用ダッシュボードを設定するために、選択した分析および視覚化ツールにフロー ログをエクスポートします。Export Flow Logs to analytics and visualization tools of your choice to set up monitoring dashboards.

使用状況の監視と最適化:ネットワークのトップ トーカーを特定します。Usage monitoring and optimization: Identify top talkers in your network. GeoIP データと組み合わせて、リージョン間のトラフィックを識別します。Combine with GeoIP data to identify cross-region traffic. 容量の予測用にトラフィックの増加について把握します。Understand traffic growth for capacity forecasting. データを使用して、明らかに制限の厳しいトラフィック規則を削除します。Use data to remove overtly restrictive traffic rules.

コンプライアンス:フロー データを使用して、ネットワークの分離とエンタープライズ アクセス規則への準拠を検証しますCompliance: Use flow data to verify network isolation and compliance with enterprise access rules

ネットワーク フォレンジクスとセキュリティ分析:侵害された IP とネットワーク インターフェイスからのネットワーク フローを分析します。Network forensics & Security analysis: Analyze network flows from compromised IPs and network interfaces. 選択した SIEM または IDS ツールにフロー ログをエクスポートします。Export flow logs to any SIEM or IDS tool of your choice.

ログ記録のしくみHow logging works

キーのプロパティKey Properties

  • フロー ログは第 4 層で動作し、NSG との間で送受信されるすべての IP フローを記録しますFlow logs operate at Layer 4 and record all IP flows going in and out of an NSG
  • ログは Azure プラットフォームを通じて 1 分間隔 で収集され、顧客のリソースやネットワークのパフォーマンスには一切影響しません。Logs are collected at 1-min interval through the Azure platform and do not affect customer resources or network performance in any way.
  • ログは JSON 形式で書き込まれ、NSG ルールごとに送信フローと受信フローを表示します。Logs are written in the JSON format and show outbound and inbound flows on a per NSG rule basis.
  • 各ログ レコードには、フローが適用されたネットワーク インターフェイス (NIC)、5 タプル情報、トラフィックに関する決定、スループット情報 (バージョン 2 のみ) が含まれています。Each log record contains the network interface (NIC) the flow applies to, 5-tuple information, the traffic decision & (Version 2 only) throughput information. 詳しくは、以下の ログ形式 をご覧ください。See Log Format below for full details.
  • フロー ログには、作成後最長 1 年間ログを自動的に削除できる保持機能があります。Flow Logs have a retention feature that allows automatically deleting the logs up to a year after their creation.

注意

保持機能は、汎用 v2 ストレージ アカウント (GPv2) を使用している場合にのみ利用できます。Retention is available only if you use General purpose v2 Storage accounts (GPv2).

主要な概念Core concepts

  • ソフトウェア定義ネットワークは、仮想ネットワーク (VNet) とサブネットを中心に編成されています。Software defined networks are organized around Virtual Networks (VNETs) and subnets. これらの VNet とサブネットのセキュリティは、NSG を使用して管理できます。The security of these VNets and subnets can be managed using an NSG.
  • ネットワーク セキュリティ グループ (NSG) には、それが接続されているリソース内でネットワーク トラフィックを許可または拒否する一連の セキュリティ規則 が含まれています。A Network security group (NSG) contains a list of security rules that allow or deny network traffic in resources it is connected to. NSG はサブネットや個々の VM に関連付けることができるほか、Resource Manager モデルについては VM にアタッチされた個々のネットワーク インターフェイス (NIC) に関連付けることができます。NSGs can be associated with subnets, individual VMs, or individual network interfaces (NIC) attached to VMs (Resource Manager). 詳細については、ネットワーク セキュリティ グループの概要に関する記事をご覧ください。For more information, see Network security group overview.
  • ネットワーク内のすべてのトラフィック フローは、該当する NSG のルールを使用して評価されます。All traffic flows in your network are evaluated using the rules in the applicable NSG.
  • これらの評価の結果が NSG フロー ログです。The result of these evaluations is NSG Flow Logs. フロー ログは Azure プラットフォームを通じて収集され、顧客のリソースに変更を加える必要はありません。Flow logs are collected through the Azure platform and don't require any change to the customer resources.
  • 注:ルールには、終了するものと、終了しないものの 2 つの種類があり、それぞれログ記録の動作が異なります。Note: Rules are of two types - terminating & non-terminating, each with different logging behaviors.
    • NSG の拒否ルールは終了するルールです。NSG Deny rules are terminating. トラフィックを拒否する NSG は、これをフロー ログに記録し、この場合の処理は、NSG がトラフィックを拒否した後に停止されます。The NSG denying the traffic will log it in Flow logs and processing in this case would stop after any NSG denies traffic.
    • NSG の許可ルールは終了しないルールです。つまり、1 つの NSG で許可された場合でも、処理は次の NSG に進みます。NSG Allow rules are non-terminating, which means even if one NSG allows it, processing will continue to the next NSG. トラフィックを許可する最後の NSG によって、トラフィックがフロー ログに記録されます。The last NSG allowing traffic will log the traffic to Flow logs.
  • NSG フロー ログは、アクセスできる場所からストレージ アカウントに書き込まれます。NSG Flow Logs are written to storage accounts from where they can be accessed.
  • TA、Splunk、Grafana、Stealthwatch などのツールを使用して、フロー ログをエクスポート、処理、分析、視覚化することができます。You can export, process, analyze, and visualize Flow Logs using tools like TA, Splunk, Grafana, Stealthwatch, etc.

ログの形式Log format

フローのログには、次のプロパティが含まれています。Flow logs include the following properties:

  • time - イベントがログに記録された時間time - Time when the event was logged
  • systemId - ネットワーク セキュリティ グループのシステム ID。systemId - Network Security Group system ID.
  • category - イベントのカテゴリです。category - The category of the event. カテゴリは常に NetworkSecurityGroupFlowEvent となります。The category is always NetworkSecurityGroupFlowEvent
  • resourceid - NSG のリソース IDresourceid - The resource ID of the NSG
  • operationName -常に NetworkSecurityGroupFlowEventsoperationName - Always NetworkSecurityGroupFlowEvents
  • properties - フローのプロパティのコレクションproperties - A collection of properties of the flow
    • Version - フロー ログ イベントのスキーマのバージョン番号Version - Version number of the Flow Log event schema
    • flows - フローのコレクション。flows - A collection of flows. このプロパティには異なるルールに対して複数のエントリがありますThis property has multiple entries for different rules
      • rule - フローが一覧表示されているルールrule - Rule for which the flows are listed
        • flows - フローのコレクションflows - a collection of flows
          • mac - フローが収集された VM の NIC の MAC アドレスmac - The MAC address of the NIC for the VM where the flow was collected
          • flowTuples - コンマで区切る形式で表現されたフローの組に対して複数のプロパティを含む文字列flowTuples - A string that contains multiple properties for the flow tuple in comma-separated format
            • Time Stamp - UNIX epoch 形式でフローが発生した際のタイム スタンプTime Stamp - This value is the time stamp of when the flow occurred in UNIX epoch format
            • Source IP - 発信元 IPSource IP - The source IP
            • Destination IP - 宛先 IPDestination IP - The destination IP
            • Source Port - 発信ポートSource Port - The source port
            • Destination Port - 宛先ポートDestination Port - The destination Port
            • Protocol - フローのプロトコル。Protocol - The protocol of the flow. 有効な値は TCP の T と UDP の U ですValid values are T for TCP and U for UDP
            • Traffic Flow - トラフィック フローの方向。Traffic Flow - The direction of the traffic flow. 有効な値は受信の I と送信の O です。Valid values are I for inbound and O for outbound.
            • Traffic Decision - トラフィックが許可された、または拒否された。Traffic Decision - Whether traffic was allowed or denied. 有効な値は許可の A と拒否の D です。Valid values are A for allowed and D for denied.
            • Flow State - バージョン 2 のみ - フローの状態をキャプチャします。Flow State - Version 2 Only - Captures the state of the flow. 次の状態があります。B:開始。フローが作成された時点です。Possible states are B: Begin, when a flow is created. 統計は提供されません。Statistics aren't provided. C: 継続中。フローが進行中です。C: Continuing for an ongoing flow. 5 分間隔で統計が提供されます。Statistics are provided at 5-minute intervals. E:終了。フローが終了した時点です。E: End, when a flow is terminated. 統計が提供されます。Statistics are provided.
            • Packets - Source to destination - バージョン 2 のみ - 最後の更新以降に送信元から宛先に送信された TCP または UDP パケットの総数。Packets - Source to destination - Version 2 Only The total number of TCP or UDP packets sent from source to destination since last update.
            • Bytes sent - Source to destination - バージョン 2 のみ - 最後の更新以降に送信元から宛先に送信された TCP または UDP パケット バイトの総数。Bytes sent - Source to destination - Version 2 Only The total number of TCP or UDP packet bytes sent from source to destination since last update. パケットのバイト数には、パケット ヘッダーとペイロードが含まれます。Packet bytes include the packet header and payload.
            • Packets - Destination to source - バージョン 2 のみ - 最後の更新以降に宛先から送信元に送信された TCP または UDP パケットの総数。Packets - Destination to source - Version 2 Only The total number of TCP or UDP packets sent from destination to source since last update.
            • Bytes sent - Destination to source - バージョン 2 のみ - 最後の更新以降に宛先から送信元に送信された TCP および UDP パケット バイトの総数。Bytes sent - Destination to source - Version 2 Only The total number of TCP and UDP packet bytes sent from destination to source since last update. パケットのバイト数には、パケット ヘッダーとペイロードが含まれます。Packet bytes include packet header and payload.

NSG フロー ログ バージョン 2 (バージョン 1 との比較)NSG flow logs Version 2 (vs Version 1)

ログのバージョン 2 ではフロー状態の概念が導入されています。Version 2 of the logs introduces the concept of flow state. 受信するフロー ログのバージョンを構成することができます。You can configure which version of flow logs you receive.

フローが開始されると、フロー状態 B が記録されます。Flow state B is recorded when a flow is initiated. フロー状態 C およびフロー状態 E は、それぞれフローの継続とフローの終了を示す状態です。Flow state C and flow state E are states that mark the continuation of a flow and flow termination, respectively. C 状態と E 状態のどちらにも、トラフィックの帯域幅情報が含まれます。Both C and E states contain traffic bandwidth information.

サンプル ログ レコードSample log records

以下のテキストはフロー ログの例です。The text that follows is an example of a flow log. ご覧の通り、前のセクションで説明されているプロパティの一覧に従って、複数のレコードが存在します。As you can see, there are multiple records that follow the property list described in the preceding section.

注意

flowTuples プロパティの値は、コンマで区切られたリストです。Values in the flowTuples property are a comma-separated list.

バージョン 1 NSG フロー ログ形式のサンプルVersion 1 NSG flow log format sample

{
    "records": [
        {
            "time": "2017-02-16T22:00:32.8950000Z",
            "systemId": "2c002c16-72f3-4dc5-b391-3444c3527434",
            "category": "NetworkSecurityGroupFlowEvent",
            "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
            "operationName": "NetworkSecurityGroupFlowEvents",
            "properties": {
                "Version": 1,
                "flows": [
                    {
                        "rule": "DefaultRule_DenyAllInBound",
                        "flows": [
                            {
                                "mac": "000D3AF8801A",
                                "flowTuples": [
                                    "1487282421,42.119.146.95,10.1.0.4,51529,5358,T,I,D"
                                ]
                            }
                        ]
                    },
                    {
                        "rule": "UserRule_default-allow-rdp",
                        "flows": [
                            {
                                "mac": "000D3AF8801A",
                                "flowTuples": [
                                    "1487282370,163.28.66.17,10.1.0.4,61771,3389,T,I,A",
                                    "1487282393,5.39.218.34,10.1.0.4,58596,3389,T,I,A",
                                    "1487282393,91.224.160.154,10.1.0.4,61540,3389,T,I,A",
                                    "1487282423,13.76.89.229,10.1.0.4,53163,3389,T,I,A"
                                ]
                            }
                        ]
                    }
                ]
            }
        },
        {
            "time": "2017-02-16T22:01:32.8960000Z",
            "systemId": "2c002c16-72f3-4dc5-b391-3444c3527434",
            "category": "NetworkSecurityGroupFlowEvent",
            "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
            "operationName": "NetworkSecurityGroupFlowEvents",
            "properties": {
                "Version": 1,
                "flows": [
                    {
                        "rule": "DefaultRule_DenyAllInBound",
                        "flows": [
                            {
                                "mac": "000D3AF8801A",
                                "flowTuples": [
                                    "1487282481,195.78.210.194,10.1.0.4,53,1732,U,I,D"
                                ]
                            }
                        ]
                    },
                    {
                        "rule": "UserRule_default-allow-rdp",
                        "flows": [
                            {
                                "mac": "000D3AF8801A",
                                "flowTuples": [
                                    "1487282435,61.129.251.68,10.1.0.4,57776,3389,T,I,A",
                                    "1487282454,84.25.174.170,10.1.0.4,59085,3389,T,I,A",
                                    "1487282477,77.68.9.50,10.1.0.4,65078,3389,T,I,A"
                                ]
                            }
                        ]
                    }
                ]
            }
        },
    "records":
    [
        
        {
             "time": "2017-02-16T22:00:32.8950000Z",
             "systemId": "2c002c16-72f3-4dc5-b391-3444c3527434",
             "category": "NetworkSecurityGroupFlowEvent",
             "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
             "operationName": "NetworkSecurityGroupFlowEvents",
             "properties": {"Version":1,"flows":[{"rule":"DefaultRule_DenyAllInBound","flows":[{"mac":"000D3AF8801A","flowTuples":["1487282421,42.119.146.95,10.1.0.4,51529,5358,T,I,D"]}]},{"rule":"UserRule_default-allow-rdp","flows":[{"mac":"000D3AF8801A","flowTuples":["1487282370,163.28.66.17,10.1.0.4,61771,3389,T,I,A","1487282393,5.39.218.34,10.1.0.4,58596,3389,T,I,A","1487282393,91.224.160.154,10.1.0.4,61540,3389,T,I,A","1487282423,13.76.89.229,10.1.0.4,53163,3389,T,I,A"]}]}]}
        }
        ,
        {
             "time": "2017-02-16T22:01:32.8960000Z",
             "systemId": "2c002c16-72f3-4dc5-b391-3444c3527434",
             "category": "NetworkSecurityGroupFlowEvent",
             "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
             "operationName": "NetworkSecurityGroupFlowEvents",
             "properties": {"Version":1,"flows":[{"rule":"DefaultRule_DenyAllInBound","flows":[{"mac":"000D3AF8801A","flowTuples":["1487282481,195.78.210.194,10.1.0.4,53,1732,U,I,D"]}]},{"rule":"UserRule_default-allow-rdp","flows":[{"mac":"000D3AF8801A","flowTuples":["1487282435,61.129.251.68,10.1.0.4,57776,3389,T,I,A","1487282454,84.25.174.170,10.1.0.4,59085,3389,T,I,A","1487282477,77.68.9.50,10.1.0.4,65078,3389,T,I,A"]}]}]}
        }
        ,
        {
             "time": "2017-02-16T22:02:32.9040000Z",
             "systemId": "2c002c16-72f3-4dc5-b391-3444c3527434",
             "category": "NetworkSecurityGroupFlowEvent",
             "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
             "operationName": "NetworkSecurityGroupFlowEvents",
             "properties": {"Version":1,"flows":[{"rule":"DefaultRule_DenyAllInBound","flows":[{"mac":"000D3AF8801A","flowTuples":["1487282492,175.182.69.29,10.1.0.4,28918,5358,T,I,D","1487282505,71.6.216.55,10.1.0.4,8080,8080,T,I,D"]}]},{"rule":"UserRule_default-allow-rdp","flows":[{"mac":"000D3AF8801A","flowTuples":["1487282512,91.224.160.154,10.1.0.4,59046,3389,T,I,A"]}]}]}
        }
        
        

バージョン 2 NSG フロー ログ形式のサンプルVersion 2 NSG flow log format sample

 {
    "records": [
        {
            "time": "2018-11-13T12:00:35.3899262Z",
            "systemId": "a0fca5ce-022c-47b1-9735-89943b42f2fa",
            "category": "NetworkSecurityGroupFlowEvent",
            "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
            "operationName": "NetworkSecurityGroupFlowEvents",
            "properties": {
                "Version": 2,
                "flows": [
                    {
                        "rule": "DefaultRule_DenyAllInBound",
                        "flows": [
                            {
                                "mac": "000D3AF87856",
                                "flowTuples": [
                                    "1542110402,94.102.49.190,10.5.16.4,28746,443,U,I,D,B,,,,",
                                    "1542110424,176.119.4.10,10.5.16.4,56509,59336,T,I,D,B,,,,",
                                    "1542110432,167.99.86.8,10.5.16.4,48495,8088,T,I,D,B,,,,"
                                ]
                            }
                        ]
                    },
                    {
                        "rule": "DefaultRule_AllowInternetOutBound",
                        "flows": [
                            {
                                "mac": "000D3AF87856",
                                "flowTuples": [
                                    "1542110377,10.5.16.4,13.67.143.118,59831,443,T,O,A,B,,,,",
                                    "1542110379,10.5.16.4,13.67.143.117,59932,443,T,O,A,E,1,66,1,66",
                                    "1542110379,10.5.16.4,13.67.143.115,44931,443,T,O,A,C,30,16978,24,14008",
                                    "1542110406,10.5.16.4,40.71.12.225,59929,443,T,O,A,E,15,8489,12,7054"
                                ]
                            }
                        ]
                    }
                ]
            }
        },
        {
            "time": "2018-11-13T12:01:35.3918317Z",
            "systemId": "a0fca5ce-022c-47b1-9735-89943b42f2fa",
            "category": "NetworkSecurityGroupFlowEvent",
            "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
            "operationName": "NetworkSecurityGroupFlowEvents",
            "properties": {
                "Version": 2,
                "flows": [
                    {
                        "rule": "DefaultRule_DenyAllInBound",
                        "flows": [
                            {
                                "mac": "000D3AF87856",
                                "flowTuples": [
                                    "1542110437,125.64.94.197,10.5.16.4,59752,18264,T,I,D,B,,,,",
                                    "1542110475,80.211.72.221,10.5.16.4,37433,8088,T,I,D,B,,,,",
                                    "1542110487,46.101.199.124,10.5.16.4,60577,8088,T,I,D,B,,,,",
                                    "1542110490,176.119.4.30,10.5.16.4,57067,52801,T,I,D,B,,,,"
                                ]
                            }
                        ]
                    }
                ]
            }
        }
        

ログ タプルの説明Log tuple explained

フロー ログ タプル

帯域幅の計算のサンプルSample bandwidth calculation

185.170.185.105:35370 と 10.2.0.4:23 間の TCP 通信のフロー タプル:Flow tuples from a TCP conversation between 185.170.185.105:35370 and 10.2.0.4:23:

"1493763938,185.170.185.105,10.2.0.4,35370,23,T,I,A,B,,,," "1493695838,185.170.185.105,10.2.0.4,35370,23,T,I,A,C,1021,588096,8005,4610880" "1493696138,185.170.185.105,10.2.0.4,35370,23,T,I,A,E,52,29952,47,27072""1493763938,185.170.185.105,10.2.0.4,35370,23,T,I,A,B,,,," "1493695838,185.170.185.105,10.2.0.4,35370,23,T,I,A,C,1021,588096,8005,4610880" "1493696138,185.170.185.105,10.2.0.4,35370,23,T,I,A,E,52,29952,47,27072"

継続の C と終了の E の各フロー状態では、バイト数とパケット数は、前のフロー タプル レコードの時点から集計した数です。For continuation C and end E flow states, byte and packet counts are aggregate counts from the time of the previous flow tuple record. 前の例の通信では、転送されたパケットの総数は 1021+52+8005+47 = 9125 です。Referencing the previous example conversation, the total number of packets transferred is 1021+52+8005+47 = 9125. 転送された合計バイト数は 588096+29952+4610880+27072 = 5256000 です。The total number of bytes transferred is 588096+29952+4610880+27072 = 5256000.

NSG フロー ログの有効化Enabling NSG Flow Logs

フロー ログを有効にするためのガイドについては、以下の関連リンクをご使用ください。Use the relevant link from below for guides on enabling flow logs.

パラメーターの更新Updating parameters

Azure PortalAzure portal

Azure portal で、Network Watcher の [NSG フロー ログ] セクションに移動します。On the Azure portal, navigate to the NSG Flow Logs section in Network Watcher. 次に、NSG の名前をクリックします。Then click the name of the NSG. フロー ログの設定ウィンドウが表示されます。This will bring up the settings pane for the Flow log. 必要なパラメーターを変更し、 [保存] をクリックして変更内容をデプロイ ます。Change the parameters you want and hit Save to deploy the changes.

PS/CLI/REST/ARMPS/CLI/REST/ARM

コマンドライン ツールでパラメーターを更新するには、フロー ログの有効化に使用されたものと同じコマンド (上記) を使用しますが、変更する更新済みのパラメーターも指定します。To update parameters via command-line tools, use the same command used to enable Flow Logs (from above) but with updated parameters that you want to change.

フロー ログの操作Working with Flow logs

フロー ログの読み取りとエクスポートRead and Export flow logs

フロー ログは NSG を対象としていますが、その他のログと同じようには表示されません。While flow logs target NSGs, they are not displayed the same as the other logs. フロー ログは、次の例で示すようにストレージ アカウント内と下記のログ記録パスにのみ格納されます。Flow logs are stored only within a storage account and follow the logging path shown in the following example:

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

フロー ログの視覚化Visualize flow Logs

NSG フロー ログ記録の考慮事項NSG flow logging considerations

ストレージ アカウントに関する考慮事項:Storage account considerations:

  • 場所:使用するストレージ アカウントは、NSG と同じリージョンに存在する必要があります。Location: The storage account used must be in the same region as the NSG.
  • パフォーマンス レベル:現在、Standard レベルのストレージ アカウントしかサポートされていません。Performance Tier: Currently, only standard tier storage accounts are supported.
  • キー ローテーションの自己管理: アクセス キーをストレージ アカウントに変更/ローテーションすると、NSG フローログの動作が停止します。Self-manage key rotation: If you change/rotate the access keys to your storage account, NSG Flow Logs will stop working. この問題を修正するには、NSG フロー ログを無効にしてから再度有効にする必要があります。To fix this issue, you must disable and then re-enable NSG Flow Logs.

フロー ログ記録のコスト:NSG フロー ログ記録は、生成されたログの量に対して課金されます。Flow Logging Costs: NSG flow logging is billed on the volume of logs produced. トラフィック量が多いと、フロー ログの量が大きくなり、それに関連してコストがかかる可能性があります。High traffic volume can result in large flow log volume and the associated costs. NSG フロー ログの価格には、基礎となるストレージのコストは含まれていません。NSG Flow log pricing does not include the underlying costs of storage. 保持ポリシー機能と NSG フロー ログ記録を併用すると、長期間にわたって個別のストレージ コストが発生します。Using the retention policy feature with NSG Flow Logging means incurring separate storage costs for extended periods of time. アイテム保持ポリシー機能が不要な場合は、この値を 0 に設定することをお勧めします。If you do not require the retention policy feature, we recommend that you set this value to 0. 詳細については、「Network Watcher の価格」 と 「Azure Storage の価格」 を参照してください。For more information, see Network Watcher Pricing and Azure Storage Pricing for additional details.

ユーザー定義の受信 TCP ルールの問題:ネットワークセキュリティグループ (NSGs) ステートフルファイアウォール として実装されます。Issues with User-defined Inbound TCP rules: Network Security Groups (NSGs) are implemented as a Stateful firewall. ただし、現行のプラットフォームの制限により、受信 TCP フローを制御するユーザー定義ルールはステートレスな方法で実装されます。However, due to current platform limitations, user-defined rules that affect inbound TCP flows are implemented in a stateless fashion. これに起因し、ユーザー定義受信ルールに制御されるフローは終了しなくなります。Due to this, flows affected by user-defined inbound rules become non-terminating. また、これらのフローのバイト数やパケット数は記録されません。Additionally byte and packet counts are not recorded for these flows. 結果として、NSG フローログ (および Traffic Analytics) で報告されるバイト数とパケット数は、実際の数とは異なる可能性があります。Consequently the number of bytes and packets reported in NSG Flow Logs (and Traffic Analytics) could be different from actual numbers. これらの問題を修正するオプトイン フラグは遅くとも 2020 年 12 月までに利用できるようになります。An opt-in flag that fixes these issues is scheduled to be available by December 2020 latest. その間、お客様がこの動作に起因する深刻な問題に直面した場合は、サポート経由でオプトインをリクエストできます。[Network Watcher] の [NSG フロー ログ] でサポート リクエストを提出してください。In the interim, customers facing severe issues due to this behavior can request opting-in via Support, please raise a support request under Network Watcher > NSG Flow Logs.

インターネット IP からパブリック IP のない VM へのインバウンド フローのログ記録:インスタンスレベル パブリック IP として NIC に関連付けられているパブリック IP アドレス経由で割り当てられたパブリック IP アドレスがない VM、または基本的なロード バランサー バックエンド プールの一部である VM では、既定の SNAT が使用され、アウトバウンド接続を容易にするために Azure によって割り当てられた IP アドレスがあります。Inbound flows logged from internet IPs to VMs without public IPs: VMs that don't have a public IP address assigned via a public IP address associated with the NIC as an instance-level public IP, or that are part of a basic load balancer back-end pool, use default SNAT and have an IP address assigned by Azure to facilitate outbound connectivity. その結果、フローが SNAT に割り当てられたポート範囲内のポートに向かう場合、インターネット IP アドレスからのフローのフロー ログ エントリが表示されることがあります。As a result, you might see flow log entries for flows from internet IP addresses, if the flow is destined to a port in the range of ports assigned for SNAT. Azure では VM へのこれらのフローは許可されませんが、試行はログに記録され、設計上、Network Watcher の NSG フロー ログに表示されます。While Azure won't allow these flows to the VM, the attempt is logged and appears in Network Watcher's NSG flow log by design. 不要なインバウンド インターネット トラフィックは、NSG で明示的にブロックすることをお勧めします。We recommend that unwanted inbound internet traffic be explicitly blocked with NSG.

Application Gateway V2 サブネット NSG の問題: Application Gateway V2 サブネット NSG のフロー ログは、現時点では サポートされていませんIssue with Application Gateway V2 Subnet NSG: Flow logging on the application gateway V2 subnet NSG is not supported currently. この問題は Application Gateway V1 には影響しません。This issue does not affect Application Gateway V1.

互換性のないサービス:プラットフォームの現行の制約に起因し、一部の Azure サービスは NSG フロー ログでサポートされていません。Incompatible Services: Due to current platform limitations, a small set of Azure services are not supported by NSG Flow Logs. 互換性のないサービスには現在、次が含まれます。The current list of incompatible services is

ベスト プラクティスBest practices

重要な VNet/サブネットで有効にする:フロー ログは、監査機能とセキュリティのベスト プラクティスとして、サブスクリプション内のすべての重要な VNet/サブネットで有効にする必要があります。Enable on critical VNETs/Subnets: Flow Logs should be enabled on all critical VNETs/subnets in your subscription as an auditability and security best practice.

リソースに接続されているすべての NSG 上で NSG フロー ログ記録を有効にする:Azure のフロー ログ記録は NSG リソースに対して構成されています。Enable NSG Flow Logging on all NSGs attached to a resource: Flow logging in Azure is configured on the NSG resource. 1 つのフローは 1 つの NSG ルールにのみ関連付けられます。A flow will only be associated to one NSG Rule. 複数の NSG が利用されるシナリオでは、リソースのサブネットまたはネットワーク インターフェイスで適用されるすべての NSG で NSG フロー ログを有効にして、すべてのトラフィックを確実に記録することをお勧めします。In scenarios where multiple NSGs are utilized, we recommend enabling NSG flow logs on all NSGs applied at the resource's subnet or network interface to ensure that all traffic is recorded. 詳細については、「ネットワーク セキュリティ グループ」の「トラフィックの評価方法」 をご覧ください。For more information, see how traffic is evaluated in Network Security Groups.

一般的なシナリオは次のとおりです。Few common scenarios:

  1. VM での複数の NIC:複数の NIC が仮想マシンに接続されている場合は、そのすべてでフロー ログを有効にする必要がありますMultiple NICs at a VM: In case multiple NICs are attached to a virtual machine, flow logging must be enabled on all of them
  2. NIC とサブネット レベルの両方で NSG: NIC およびサブネット レベルで NSG が構成されている場合は、両方の NSG でフロー ログを有効にする必要があります。Having NSG at both NIC and Subnet Level: In case NSG is configured at the NIC as well as the Subnet level, then flow logging must be enabled at both the NSGs.

ストレージのプロビジョニング:ストレージは、想定されるフロー ログ ボリュームでチューニングする必要があります。Storage provisioning: Storage should be provisioned in tune with expected Flow Log volume.

名前付け: NSG 名は最大 80 文字で、NSG 規則名は最大 65 文字である必要があります。Naming: The NSG name must be upto 80 chars and the NSG rule names upto 65 chars. 名前が文字数の上限を超えると、ログ記録中に切り捨てられることがあります。If the names exceed their character limit, it may get truncated while logging.

一般的な問題のトラブルシューティングTroubleshooting common issues

NSG フロー ログを有効にできないI could not enable NSG Flow Logs

  • Microsoft.Insights リソース プロバイダーが登録されていませんMicrosoft.Insights resource provider is not registered

AuthorizationFailed または GatewayAuthenticationFailed エラーを受け取った場合は、サブスクリプションで Microsoft Insights リソース プロバイダーを有効にしていない可能性があります。If you received an AuthorizationFailed or a GatewayAuthenticationFailed error, you might have not enabled the Microsoft Insights resource provider on your subscription. こちらの指示に従って、Microsoft Insights プロバイダーを有効にしてください。Follow the instructions to enable the Microsoft Insights provider.

NSG フロー ログを有効にしたが、ストレージ アカウントにデータが表示されないI have enabled NSG Flow Logs but do not see data in my storage account

  • セットアップ時間Setup time

NSG フロー ログがストレージ アカウントに表示されるまでに、最大 5 分かかる場合があります (正しく構成されている場合)。NSG Flow Logs may take up to 5 minutes to appear in your storage account (if configured correctly). PT1H.json が表示されます。このファイルには、こちらの説明に従ってアクセスできます。A PT1H.json will appear which can be accessed as described here.

  • NSG にトラフィックがないNo Traffic on your NSGs

お使いの VM がアクティブでないか、アプリ ゲートウェイまたは他のデバイスに NSG へのトラフィックをブロックしているアップストリーム フィルターがあるために、ログが表示されない場合があります。Sometimes you will not see logs because your VMs are not active or there are upstream filters at an App Gateway or other devices that are blocking traffic to your NSGs.

NSG フロー ログを自動化したいI want to automate NSG Flow Logs

現在、ARM テンプレートを使用した 自動化のサポートは、NSG フロー ログでは使用できません。Support for automation via ARM templates is currently not available for NSG Flow Logs. 詳細については、機能のお知らせを参照してください。Read the feature announcement for more information.

よく寄せられる質問FAQ

NSG フロー ログでは何ができますか?What does NSG Flow Logs do?

Azure ネットワーク リソースは、ネットワーク セキュリティ グループ (NSG) を使用して結合および管理できます。Azure network resources can be combined and managed through Network Security Groups (NSGs). NSG フロー ログを使用すると、NSG を介してすべてのトラフィックに関する 5 組のフロー情報をログに記録できます。NSG Flow Logs enable you to log 5-tuple flow information about all traffic through your NSGs. 未処理のフロー ログは Azure ストレージ アカウントに書き込まれ、必要に応じてさらに処理、分析、クエリ実行、またはエクスポートできます。The raw flow logs are written to an Azure Storage account from where they can be further processed, analyzed, queried, or exported as needed.

フロー ログを使用すると、ネットワークの待機時間やパフォーマンスに影響しますか?Does using Flow Logs impact my network latency or performance?

フロー ログのデータは、ネットワーク トラフィックのパスの外部で収集されるため、ネットワークのスループットや待機時間には影響しません。Flow logs data is collected outside of the path of your network traffic, and therefore does not affect network throughput or latency. ネットワーク パフォーマンスに影響を及ぼす危険性がまったく生じずに、フロー ログを作成または削除できます。You can create or delete flow logs without any risk of impact to network performance.

ファイアウォールの背後にあるストレージ アカウントで NSG フロー ログを使用するにはどうしたらよいですか?How do I use NSG Flow Logs with a Storage account behind a firewall?

ファイアウォールの背後にあるストレージ アカウントを使用するには、信頼できる Microsoft サービスからストレージ アカウントにアクセスするための例外を指定する必要があります。To use a Storage account behind a firewall, you have to provide an exception for Trusted Microsoft Services to access your storage account:

  • ポータルのグローバル検索でストレージ アカウントの名前を入力するか、[ストレージ アカウント] のページから、ストレージ アカウントに移動しますNavigate to the storage account by typing the storage account's name in the global search on the portal or from the Storage Accounts page
  • [設定] セクションで、 [ファイアウォールと仮想ネットワーク] を選択しますUnder the SETTINGS section, select Firewalls and virtual networks
  • [許可するアクセス元] で、 [選択されたネットワーク] を選択します。In Allow access from, select Selected networks. 次に、 [例外] 下で、[****信頼された Microsoft サービスによるこのストレージ アカウントに対するアクセスを許可します****] の横にあるボックスにチェックを付けますThen under Exceptions, tick the box next to ****Allow trusted Microsoft services to access this storage account****
  • 既に選択されている場合、変更は必要ありません。If it is already selected, no change is needed.
  • NSG フロー ログの概要ページでターゲットの NSG を見つけて、上記のストレージ アカウントを選択した状態で NSG フロー ログを有効にします。Locate your target NSG on the NSG Flow Logs overview page and enable NSG Flow Logs with the above storage account selected.

数分後にストレージ ログを確認できます。TimeStamp が更新されていることや新しい JSON ファイルが作成されていることがわかります。You can check the storage logs after a few minutes, you should see an updated TimeStamp or a new JSON file created.

サービス エンドポイントの背後にあるストレージ アカウントで NSG フロー ログを使用するにはどうしたらよいですか?How do I use NSG Flow Logs with a Storage account behind a Service Endpoint?

NSG フロー ログはサービス エンドポイントと互換性があります。追加の構成は不要です。NSG Flow Logs are compatible with Service Endpoints without requiring any extra configuration. 仮想ネットワークのサービス エンドポイントを有効にする方法に関するチュートリアルをご覧ください。See the tutorial on enabling Service Endpoints in your virtual network.

フロー ログのバージョン 1 と 2 の違いは何ですか?What is the difference between flow logs versions 1 & 2?

フロー ログ バージョン 2 では、"フロー状態" という概念が導入されており、転送するバイトとパケットに関する情報が保存されます。Flow Logs version 2 introduces the concept of Flow State & stores information about bytes and packets transmitted. 詳細については、こちらを参照してください。Read more

価格Pricing

NSG フロー ログは、収集されるログ (GB 単位) ごとに課金され、1 つのサブスクリプションにつき 1 か月あたり 5 GB までは無料になります。NSG Flow Logs are charged per GB of logs collected and come with a free tier of 5 GB/month per subscription. お客様のリージョンでの現在の価格については、Network Watcher の価格に関するページをご覧ください。For the current pricing in your region, see the Network Watcher pricing page.

ログの保存には別途料金が発生します。関連する価格については、Azure Storage のブロック BLOB の価格に関するページをご覧ください。Storage of logs is charged separately, see Azure Storage Block blob pricing page for relevant prices.