IBM Cloud Docs
IBM Cloud Flow Logs for VPC について

IBM Cloud Flow Logs for VPC について

IBM Cloud® Flow Logs for VPC を使用すると、仮想プライベート・クラウド (VPC) 内のネットワーク・インターフェースを出入りするインターネット・プロトコル (IP) トラフィックについての情報の収集、保管、表示が可能になります。

フロー・ログは、以下のようないくつかの作業に役立ちます。

  • 特定のトラフィックがインスタンスに到達しない理由のトラブルシューティング。これは、制限的なセキュリティー・グループ・ルールを診断する際に役立ちます
  • インスタンスに到達するメタデータ・ネットワーク・トラフィックの記録
  • ネットワーク・インターフェースの送信元トラフィックと宛先トラフィックの判別
  • コンプライアンス規制への準拠
  • 根本原因分析の支援

フィーチャーの概要

  • 世界中のすべての IBM Cloud マルチゾーン・リージョン (MZR) で使用可能であり、グローバル・ソリューションを提供する
  • ネットワーク中心のライフサイクルと運用の管理を行う
  • コレクター・アクティビティーの中断 (停止) および再開 (開始)
  • コレクター出力を IBM Cloud® Object Storage に簡単に保管
  • ネットワーク・パフォーマンスへの影響がない
  • 標準装備のフォールト・トレランス
  • フロー・ログ・ターゲットごとに収集されたメタデータ量の GB を単位とする従量制課金

フロー・ログ・コレクターの構成

さまざまな収集範囲のフロー・ログ・コレクターを構成できます。 例えば、VPC をターゲットとするコレクターは、その VPC の_すべての_ネットワーク・インターフェースから転送中データを集めます。 また、仮想サーバー・インスタンスをターゲットとするコレクターは、その仮想サーバー・インスタンスのネットワーク・インターフェース_のみ_から転送中データを集めます。 データが収集された後、フローログは IBM Cloud® Object Storage バケットに保存されます。このバケットは、フローログコレクターを作成するときに設定します。

以下のターゲット・スコープにフロー・ログ・コレクターの細分度を設定できます。 サブネットまたは VPC のフロー・ログを作成する際には、そのサブネットまたは VPC 内の各ネットワーク・インターフェースがモニターされることに注意してください。

フローログの対象スコープ
ターゲット 収集対象データ
VPC 特定の VPC 上のすべてのネットワーク・インターフェースのデータを収集します。
サブネット 特定のサブネット上のすべてのネットワーク・インターフェースのデータを収集します。
インスタンス 特定の仮想サーバー上のすべてのネットワーク・インターフェースのデータを収集します。
インターフェース 特定の仮想サーバー上の特定のネットワーク・インターフェースのデータを収集します。

コレクターのアップロード間隔ごとに、ネットワークインターフェースごとに2つのフローログ(イングレスとイグレス)が指定された Object Storage バケットに書き込まれる。

細分度の最も高いものが優先

フロー・ログ・ターゲットごとにフロー・ログ・コレクターを 1 つ作成できるので、オーバーラップが発生する可能性があります。 細分度の最も高いから順に、以下に例を示します。

  • 仮想サーバー・インスタンス・インターフェースにはフロー・ログ・コレクターが設定されている可能性があります。
  • そのインターフェースが接続している仮想サーバー・インスタンスに、別のフロー・ログ・コレクターが設定されている可能性があります。
  • その仮想サーバー・インスタンスが接続しているサブネットに、専用のフロー・ログ・コレクターが設定されている可能性があります。
  • そのサブネットが含まれている VPC に、専用のフロー・ログ・コレクターが設定されている可能性があります。

オーバーラップが存在する場合、最もターゲットを絞ったフロー・ログ・コレクターが優先されます。 各フロー・ログ・コレクターは異なる Object Storage バケットにログを記録する可能性があり、フロー・ログ・データが保存される場所は仮想サーバー・インスタンスの存続期間中に変更される可能性があるため、この優先順位は重要です。

始めに

フロー・ログ・コレクターを初めて使用するときには、以下の手順に従います。

  1. IBM Cloud Flow Logs を注文する前に、すべての前提条件を満たしておきます。
  2. 収集スコープを決定し、フロー・ログ・コレクターを 1 つ以上作成します
  3. 生成されたフロー・ログを確認します。 詳しくは、フロー・ログ・オブジェクトの表示を参照してください。

フロー・ログの作成または削除は、ネットワーク・パフォーマンスに影響しません。 フロー・ログのデータは、ネットワーク・トラフィックのパスの外部で収集されるので、ネットワークの待ち時間やスループットに影響を与えません。

フロー・ログのユース・ケース

IBM Cloud Flow Logs for VPC を使用すると、ネットワーク接続とデータが宛先ターゲットに正常に到達していることを検証し、正常に到達していない場合にはトラブルシューティングすることができます。 セキュリティー・グループのルール、拒否されたフローなどを診断するのに便利です。

使用例1:最も細かい粒度の勝利を設定する

以下の図は、フロー・ログ・コレクターの構成方法として考えられる方法を示しています。 この例では、同じ VPC の中に定義されたさまざまなフロー・ログ・ターゲットに注目し、各コレクターがデータを収集するインスタンスを表しています。 以下に例を示します。

  • VPC のフロー・ログ・コレクター (青色) は、包括的なコレクターです。 この VPC に現在または将来含まれるインスタンスは、他に Bucket-E をターゲットとするコレクターがなければ、このバケットにフローします。

  • サブネットのフロー・ログ・コレクター (緑色) も包括的なコレクターですが、VPC 内の特定の 1 つのサブネットを対象とします。 このサブネットに現在または将来含まれるインスタンスは、Bucket-C にフローします。

  • インスタンスのフロー・ログ・コレクター (赤色) は、さらに高い細分度を必要とする場合に使用します。 例えば、Instance-5 が Bucket-E を使用しているときに、特定のインスタンスの接続の問題をトラブルシューティングするとします。 そのインスタンスのためだけのフロー・ログ・コレクターを作成し、一定期間、そのすべてのトラフィックを別のバケットに送信してトラブルシューティングを絞り込むことができます。

    最も細かい粒度が勝利する
    細かい粒度が勝利する
    最も細かい粒度が勝利する例最も細かい粒度が勝利する例

使用例 2:セキュリティグループとネットワーク ACL のトラブルシューティング

使用例1と同様に、この使用例では、異なるターゲットスコープに対してフローログコレクターの粒度を設定する方法を説明します。 また、もう一歩踏み込んで、セキュリティー・グループとネットワーク ACL (NACL) を使用したトラブルシューティングにフロー・ログがどのように役立つかについても示しています。

シナリオ:

  1. サブネット 3 の NACL 2 が、そのサブネットでの Web サーバーの実行を妨げています。 このネットワーク ACL が受信を許可し、送信を拒否していることに注意してください。
  2. サブネット 2 の仮想サーバー・インスタンス (NACL 1 は受信と送信を許可しています) が、サブネット 3 で稼働している Web サーバーにクエリーを実行しようとします。
  3. クエリーが送信され、そのトラフィックがサブネット 3 への入力パスで受け入れられ、仮想サーバー・インスタンス 31 に届いたことを確認できます。
  4. 要求を受け取った仮想サーバー・インスタンス 31 は、応答を生成し、その応答を送信しようとします。 残念ながら、応答を戻すことはできないので、サブネット 2 で接続がハングし、最終的にタイムアウトになります。
  5. フロー・ログから、要求が送信されたこと、仮想サーバー・インスタンス 31 で許可されたことがわかります。 フロー・ログから、応答トラフィックが拒否されたことがわかります。

セキュリティグループとネットワーク
*のトラブルシューティング セキュリティグループとネットワーク ACL
のトラブルシューティング

ユースケース3:ポートの脆弱性の検出

攻撃者がさまざまな TCP ポートへの接続を開始したとします。 そして、それらの接続は、セキュリティー・グループ・フィルターによってブロックされました。 フローログは、セキュリティグループによって拒否されたすべてのフローを収集し、 IBM Cloud® Object Storage に報告する。

ポートの脆弱性を検出する例{: caption="性を検出する例ポートの" caption-side="bottom}性を検出する例ポートの脆弱性を検出する例