本ブログ記事は、ntop社のブログ「HowTo Use TLS for Securing Flow Export/Collection」を意訳してご紹介しております。
文:ジュピターテクノロジー よしひろ
本日は、時々弊社にも寄せられるお悩みNetFlowを送信する段で、通信を暗号化して送付したいといったご要望にお応えします。
よくお問い合わせ頂くお話として、顧客環境にアプライアンスを設置しクラウド上でフロー情報を収集、定期的にフロー情報からレポートを出力して、お客様に提示したいといったご要望を承ります。
しかし、NetFlow,IPFIXやsFlowですと暗号化されずクリアテキストでインターネットを流れることになりますので、お客様のネットワーク環境がそれらのパケットをキャプチャすれば丸見えといった話となり、提案・実装が進まないといった現状がありました。
そこで、弊社が強くお勧めするトラフィック可視化製品であるntopngとnProbeでどのように設定すれば通信を暗号化できるか?をご紹介したいと思います。
NetFlow, フロー通信の暗号化が求められている背景
IPFIXやNetFlowなどのフローベースのプロトコルの主な制限の1つは、トラフィックがクリアテキストで送信されることです。 これは、送信中に覗きみることができ、異なる情報を付加して情報を汚染することができることを示しています。
現在、暗号化されていないプロトコルは極力使わないといったことがスタンダートになっており、この問題に対するいくつかの回避策を施す必要があります。
多くの場合、VPNを使用してフローをエクスポートしますが、これはクラウドサービスや複雑なネットワークでの単純な設定ではないため、プライバシーと整合性の問題に対処していない、ACL(アクセス制御リスト)に依存する場合があります。
TLSによる通信暗号化
図1のように、安全なフローの収集とエクスポートを実装するために、nProbeでTLSを使用する方法をご紹介します。 必要なのは、UDP/TCP/SCTPを介してエクスポートフローを収集できるnProbe(2022年5月時点ではdev版)です。
必要なのは、コマンドラインオプション -collector-port(フローコレクション)および-collector(フローエクスポート)を指定してメソッドを使用するだけです。例:
- ポート2055でUDPを介してフローを収集
- –collector-port udp://2055
- ローカルホストのポート2055でTCPを介してフローを収集
- –collector-port tcp://127.0.0.1:2055
- ポート2055でTLSを介してリモートコレクター192.168.1.2にフローをエクスポート
- –collector tls://192.168.1.2:2055
フローを収集するとき、nProbeは指定されたポートを開き、TLS接続をリッスンします。 この設定では、Let’s Encryptなどのサービスで生成できるTLS証明書と秘密鍵を提供するか、自己署名証明書を使用する必要があります。
openssl req -x509 -nodes -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 365
これは、–tls-priv-keyおよび–-tls-certコマンドラインオプションを使用してnprobeに渡すことができます。ホストmycollector.ntop.orgポート2055でTLSを介してフローを収集するnProbeの設定例は次のとおりです。
nprobe --tls-priv-key key.pem --tls-cert cert.pem -n none -i none --collector-port tls://mycollector.ntop.org:2055
これで、以下のコマンドを使用して、リモートnProbeキャプチャパケットをeth0に接続し、フローをコレクター側にエクスポートできます。
nprobe -i eth0 --collector tls://mycollector.ntop.org:2055
nProbeはTLS証明書を検証するため
- コレクターIPを指定するときは、IPアドレスではなくホスト名を使用していることを確認する必要があります。
- 期限切れ、自己署名、または安全でない証明書は受け入れられません。 この場合、–tls-insecureを追加してリモートコレクターに接続するときに、nProbeに上記の問題を無視させることができます。
最後に、前からnProbeはZMQフローを介して安全で暗号化された形式でntopngに配信できることも確認しておいてください。
これで、TLSを使ったNetFlowの送信ができるイメージが持てたと思います。貴社のサービスの一部としてntop製品の採用をご検討ください。
nProbeとTLSの詳細については、ユーザーガイド(英語)を参照してください。
お問い合わせ
ntop社製品にご興味のある方は、以下リンクよりいつでも弊社までお問い合わせください。
10分間機能制限なし!無償でご利用いただける評価版も以下のダウンロードリンクにご用意しております。簡単に検証が開始できますので、評価ガイド(PDF)を参考にぜひお試しください!