ネットワーク監視とフロー情報の基礎知識――AWS「VPCフローログ」設定の基本AWSで学ぶクラウド時代のネットワーク基礎知識(7)

これまであまり物理的なネットワークに触れてこなかったエンジニアを対象に、AWSを用いてネットワークの基礎知識を解説する連載。今回は、ネットワーク監視とフロー情報の基礎知識について解説し、「VPCフローログ」の設定を通して、通信内容のフロー情報を収集する方法を示す。

» 2023年03月09日 05時00分 公開
[東竜一ネットワンシステムズ]

 これまであまり物理的なネットワークに触れられてこなかったSEやサーバ管理者、情シスなどの方を対象にネットワークの基本を「Amazon Web Services」(AWS)を用いて解説する本連載「AWSで学ぶクラウド時代のネットワーク基礎知識」。

 今回は、ネットワーク監視について解説します。サーバなどの管理、監視にも利用される「Syslog」や「SNMP」(Simple Network Management Protocol)機能およびネットワークの監視に利用されるフロー情報を紹介した後に、AWSで利用できるフロー情報を利用したネットワークの監視機能について解説します。

ネットワークの監視

 ネットワーク管理に携わる皆さんは、ネットワークをどのように監視しているでしょうか。

 監視サーバやストレージなどと同様にネットワーク機器についても日々の運用や障害検知のためにSyslogを利用し、各機器で生成されるログ情報を収集していると思います。また「MIB」(Management Information Base)というデータベースに基づいて機器内のさまざまな情報を管理し、障害発生時には「Trap」という機能で通知するSNMPも利用していることでしょう。SNMPを利用すると、機器のインタフェースの通信量を定期的にポーリングして収集することで通信量を可視化することも可能です。一般的な企業で利用するネットワーク機器なら、これらの機能を標準的に利用できます。サーバなどの管理で利用している管理ツールでも管理できます。

通信情報のフロー化

 ただしSyslogやSNMPでは、通信情報までは確認できないので、ネットワークレベルの監視機能として、通信トラフィックを送信元/宛先IPアドレスやプロトコルなどの情報をキーとして異なる「フロー」に分類し、リスト形式で記録して管理する機能が存在します。各機器でフロー情報を生成し、「フローコレクタ」というサーバに送信させて収集することによって、過去から現在のフロー単位の通信量の可視化をはじめ、障害が発生していないかどうか、異常/セキュリティ的に問題のある通信が存在していないかどうかなど、対象ネットワークの通信情報を一元的に監視、管理することが可能になります。

 通信情報をフロー化し、収集する機能は、ネットワーク機器メーカーによって個々に実装されています。Cisco Systemsの「NetFlow」(RFC 3954で標準化)、Juniper Networksの「J-Flow」などです。RFC 3176、RFC 6526として標準公開されている「sFlow」「IPFIX」もあります。

フロー情報のみを収集する5つの理由

 なお、通信内容全ての記録と保管(通信パケットの全保管)が可能ならば、より詳細に情報を分析できますが、フロー情報のみを収集する理由としては次の5点が挙げられます。

  1. 通信内容を全て保管するには通信と同量のストレージが必要になる
  2. 各ネットワーク機器で転送される通信をドロップすることなく通信内容を保管するストレージに転送できる必要がある
  3. 通信内容全てを保管したとしても、その内容全てを分析するのは難しい
  4. 情報が流出した場合の影響が大きい
  5. 会社や団体のポリシーによっては通信内容の確認はポリシー違反になる可能性がある

 1については、フロー情報のみを保管する場合、詳細なユーザーデータまでは保管しないのでストレージの要求量は低くなりますが、通信内容全てとなるとその量に応じたストレージが必要となり、通信量が多い環境では現実的ではありません。

 2については、ネットワーク機器と通信内容を保管するストレージが直結されているなら、通信をストレージ宛てにコピーすればよいだけですが、離れている場合は何らかの方法で通信内容をストレージまで転送できるようにする必要があります。通常のネットワークを通す場合、ドロップされないようにネットワークに余剰の転送能力を確保しておく必要が生じます。あるいは通常のネットワークを通さないようにするために専用のネットワークが必要になるかもしれません。

 3については、通信内容全てを保管する場合、それらのデータは内容が異なっており、画一的なデータ分析は不可能です。データごとに分析の仕組みを作る必要があります。また大量のデータをリアルタイムに分析するコンピュータリソースが必要となり、現実的ではありません。

 4については、攻撃者からサイバー攻撃を受けるなどによって情報が流出した場合、通信内容が見られてしまい、非常に大きな問題になりかねません。その対策として、データ保存時に暗号化しておけば流出した際のリスクは低くなりますが、リアルタイムの暗号化処理に相応のコンピュータリソースが必要ですし、暗号鍵の管理を徹底する必要が生じます。

 5については、会社などのポリシーによっては通信情報を確認することは禁じられている可能性がありますが、フロー情報レベルであればユーザーデータまでは確認できないために許容される可能性が高くなります。

AWS環境でのネットワーク監視

 ここからはAWS環境でネットワークを監視するためにフロー情報を収集、監視する方法を紹介します。

VPCフローログとは

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。