2020年9月28日月曜日

クラウドのネットワークトラフィックをリアルタイム分析・見える化する方法

これまで、オンプレミスの見える化についてご紹介してきましたが、今回はAWS VPC(Virtual Private Cloud)を流れるトラフィックの高速分析、見える化を実現する方法をご紹介したいと思います。

文:ジュピターテクノロジー よしひろ

今回のAWS VPCは以下の通り、最もシンプルな構成を利用します。


図1 AWS VPC構成

今回トラフィックを収集するENI(Elastic Network Interface)は、公開Webサーバーの外部向けインタフェースです。
こちらのENIを送信元、ntopngをインストールするEC2(Amazon Elastic Compute Cloud)のENIを宛先としてトラフィックを送信します。

ntopngは、自ENIを流れるトラフィックからフロー情報を生成し、ntopngのデーターベースに直接保管することができます。
よって、今回の構成ではnProbeの様なNetFlowプローブは不要です。

ntopng用 EC2インスタンスの準備

ntopng用のEC2インスタンスを準備します。
AWSマネージメントコンソールで、EC2の管理画面に遷移します。
インスタンス起動ボタンを押してください。

ステップ1: Amazonマシンイメージ(AMI)

「Ubuntu Server 18.04 LTS(HVM),SSD Volude Type(無料枠の対象)」を選択してください。

図2 ステップ1: Amazonマシーンイメージ(AMI)


ステップ2:インスタンスタイプの選択

今回は検証環境なので「t2.micro(無料枠の対象)」の選択で良いでしょう。


ステップ3: インスタンスの詳細の設定

「ネットワーク」に対象VPC、「サブネット」に公開Webサーバーと同じサブネットを設定してください。


ステップ4:ストレージの追加

こちらも検証環境なので、デフォルト8GiB、汎用SSDを選択してください。


ステップ5:タグの追加

こちらはスキップして結構です。


ステップ6:セキュリティグループの設定

デフォルトSSHの他に「タイプ」にカスタムTCP、「ポート範囲」3000を追加し「ソース」はカスタムで0.0.0.0/0を選択してください。

図3 ステップ6: セキュリティグループの設定


ステップ7: インスタンスの作成の確認

設定した内容に間違いなければ起動ボタンを押してインスタンスを起動してください。
「既存のキーペアを選択するか、新しいキーペアを作成します。」と聞かれますので、既にキーペアを作成済みの場合は既存を選択し、存在しない場合は新しく作成してください。
以上で、ntopng用のEC2インスタンスの作成と起動は完了です。


ntopngインストール

あらかじめインストールシェルを弊社ソフトウェアダウンロードページから取得しておいてください。こちらのリンクから登録をお願いします。
登録完了後、ダウンロード用URLを含むメールが送信されます。
受信後、メール内のリンクを押すとダウンロードリスト画面が表示されます。
ntopngのリンクを押して、ntopng_stable_ubuntu1804.shシェルをダウンロードしてください。

次にEC2インスタンス作成のステップ7で作成したキーペアを使って、インスタンスにログインしてください。
ユーザー名は、ubuntuとなります。
ログインが成功したら、取得した自動インストールシェルをコピー&ペーストして実行します。
途中でYes/Noの選択を聞かれたら、Yesと答えてインストールを続行してください。

インストールが終了したら、お手持ちのWebブラウザからntopngにアクセスします。
http://"EC2パブリックIP4アドレス":3000 
を入力すれば、図4のログイン画面が表示されます。

図4 ntopngログイン画面


ユーザー名とパスワードは、いずれもadminです。
ログインボタンを押すとパスワード変更画面が表示されますので、
新しいパスワードと言語を選択し、"Change Password"ボタンを押してください。


図5 パスワード、言語変更画面


図6のダッシュボード画面が表示されれば、ntopngのインストールは完了です。


図6 ログイン後のダッシュボード画面


この時点では、ntopngのEC2インスタンスはトラフィックキャプチャ用のENIが追加されておりませんので、ご注意ください。


ミラートラフィック用のENI追加とアタッチ

AWSマネージメントコンソールで、EC2の管理画面に遷移します。
「ネットワーク&セキュリティ」から「ネットワークインターフェイス」を選択します。
インスタンス起動ボタンを押してください。
「ネットワークインターフェイスの作成」ボタンを押してください。
「Create Network Interface」画面が表示されますので、「Subnet」に公開Webサーバーと同じサブネットを設定し、セキュリティグループにミラートラフィックで取得したいプロトコルを設定したものを選択してください(※なければ、別途作成してください)
全ての設定が完了したら、作成ボタンを押してください。


図7 ミラー用のENI追加

 

AWSのVPCトラフィックミラーリング設定

AWSマネージメントコンソールで、VPCの管理画面に遷移します。
左メニューに「トラフィックのミラーリング」がありますので、このメニューを使って図1のVPCトラフィックミラーリングを実現します。
AWS VPCトラフィックミラーリングの設定方法は、こちらに詳しく記載されているので本ブログでは詳細には記載しません。
ご了承ください。


ntopngでのミラートラフィック分析

上述までの設定が完了したら、後はntopngにログインするだけです。
図6のダッシュボード画面、左上のインターフェイスプルダウンメニューから、eth1を選択してください。

図8 ミラートラフィックインターフェイスeht1の選択


図9の様に公開Webサーバーのトラフィックがダッシュボードに表示されれば成功です。
お疲れ様でした!!

図9 公開Webサーバーのトラフィックダッシュボード


------------------------------------------------------------------------------------------

ntop社のnProbe, ntopngにご興味のある方は、以下のリンクから弊社までお気軽にお問い合わせください!