NSX ネットワーク

新卒 SE 社員が贈る NSX のキソ︕第 6 回〜 NSX Data Center が提供するファイアウォール機能とは ~

こんにちは!「新卒 SE 社員が贈る NSX のキソ!」、第 6 回を担当する、VMware 新卒第4 期生の黒沢勇です。前回は、異なるセグメント間の通信に欠かせない「NSX Data Center のルーティング機能」についてご紹介させて頂きました。第 5 回までの内容で図 1 のような VXLAN、分散論理ルータ、Edge ルータを組み合わせた柔軟なネットワークを構築することが可能となりました(図 1)。

図 1 第 5 回で完成したサンプル構成図

さて、前回まで NSX Data Center を使うと、いかにネットワークを柔軟に構築できることをお話してきました。ですがここで気になることは、「セキュリティはどうなっているの?」というところです。従来はセグメントの境界に対して物理ファイアウォールを設置し、セグメント内に対してはアクセスリストを使用したセキュリティを用いていることが一般的でした。しかし、物理機器のみで構成されたセキュリティにはいくつかの課題が出てきています。今回は、NSX Data Center がどのように仮想環境でファイアウォール機能を提供し、課題を解決するのかをお話します!まずは、NSX Data Center のファイアウォールの概要についてお話していきましょう。

1. NSX Data Center が提供する2種類のファイアウォールの機能
第 5 回で NSX Data Center が提供するルーティング機能は 2 種類あるというご説明をさせていただきましたが、実はファイアウォールについても NSX Data Center は2種類の機能を提供しています。

1.1 NSX Edge Service Gatawayのファイアウォール機能
1 つ目は、NSX Edge Service Gateway(以下 NSX Edge)が提供するネットワーク機能の 1 つである仮想ファイアウォールです(図 2)。

図 2 NSX Edge ファイアウォール

第 5 回で NSX Edge で North-South 方向のルーティングを行えることをご説明しましたが、NSX Edge にはルーティング以外の機能を持たせることもできます。ファイアウォール機能も NSX Edge  機能の一部であり、従来の境界ファイアウォールと同様にセグメントの境界に設置することで、トラフィックの制御を行うことができます。ファイアウォール機能を持った仮想マシンとして機能を提供するため、素早い払い出しや、物理コストをかけずにすむなど、物理ネットワーク機器にはなかったメリットを得ることができます。

1.2 分散ファイアウォール
2 つ目は分散ファイアウォールと呼ばれる機能です。ハイパーバイザー カーネル モジュールに組み込まれており、仮想マシン1 つ 1 つに対して個別にファイアウォールルールやアクセスコントロールなどのセキュリティポリシーを適用することができます(図 3)。さらに、分散ファイアウォールのルール情報はホスト間で共有されているので、vMotion や DRS で仮想マシンが移動しても設定が引き継がれるという特徴を持っています。

図 3 分散ファイアウォール

どちらのファイアウォールも、これまで物理ファイアウォールで処理していたトラフィック制御をハイパーバイザや仮想マシンへ分散することが可能となります。その結果、トラフィックを最適化したり、セキュリティをより強固にしたり、柔軟な設定を行うことができるようになります。

2. 従来の物理ファイアウォールの課題を NSX Data Center が解決!
さて、NSX Data Center のファイアウォールが 2 種類あることはおわかりいただけたと思いますが、この 2 つのファイアウォールがどのように従来の課題を解決するのでしょうか?3 つの課題から考えてみましょう。

2.1 標的型攻撃の被害が広範囲に広がる
今回は図のような、事業部ごとに Web3 層構成のシステムが存在するケースを考えてみましょう(図 4)。

図 4 サンプルシステム図

今回の例ではシステムがフラットな L2 セグメントを持っており、社外との通信に対して境界ファイアウォールで制御を行っています。しかし、内部通信を行うときにはファイアウォールを通過しないため、社内のセキュリティレベルが同じ状態になっています。でも、よく考えてみると同じ L2 セグメントにあるからといってセキュリティレベルが一緒とは限りませんよね?財務部のサーバと、個人情報が詰まっている人事部のサーバは明らかにセキュリティレベルが異なります。
ここで、財務部のサーバがもしインターネット上からウィルスやマルウェアなどの標的型攻撃を仕掛けられてしまった場合を考えてみましょう。(図 5)

図 5 財務部のサーバが感染

標的型攻撃は感染をすると同じセグメントのマシンへ被害を広げようとします。そのため、感染したサーバが他のサーバへと通信できる状態だと、サーバ 1 つが感染しただけで、被害は同じセグメント全体に及んでしまいます(図 6)。

図 6 同じセグメントに感染が拡大

さらに、同じセグメントからの通信はファイアウォールを通らないため、アラートすら上がらないことも多いです。気づかない内に攻撃されて、気づいた時には機密情報や個人情報が盗まれていた…なんてことも起こり得ます(図 7)。

図 7感染したサーバから情報が漏えい

では、どのように NSX Data Center のファイアウォールがこの課題を解決するのかをお話させていただきます。実は、L2 セグメントが同じシステムであったとしても、通信が必要ないという場合は多々あります。しかし、従来の境界ファイアウォールはセグメント内の通信には手が出せないため、通信を許す状態になっていました。
ここに分散ファイアウォールを設定することにより、L2 セグメント内の通信を厳しく制限をかけることができます。このファイアウォール設定により、感染したサーバは他のマシンと通信が行えないので感染を広げることができなくなります(図 8)。

図 8 分散ファイアウォールで標的型攻撃の感染を抑制

境界型ファイアウォールを設置するだけではセグメント内の通信ができる状態なので被害が拡大してしまいますが、分散ファイアウォールを使えば他のマシンとの通信を遮断することができるので、感染が拡大しなくて済むのです!
ご存知とは思いますが、境界型のファイアウォールは突破される可能性が 0 ではありません。分散ファイアウォールを設定することによって被害を最小限にとどめられるのは、とても安心ですよね。

2.2 ヘアピン通信を分散ファイアウォールで解決
セキュリティレベルを高めるために、常にファイアウォールを通過する形で、通信を行うようにしているお客様もいらっしゃると思います。この場合、ネットワークのトラフィックパターンが複雑になり、余計な経路を通るヘアピン通信が発生してしまいます。1 回 1 回物理ファイアウォールを通ると、物理機器に負担がかかるうえに、遅延も大きくなってしまいます。
ここに分散ファイアウォールを導入するとどうなるのか考えてみましょう。ハイパーバイザー内部にファイアウォール機能を持っているので、いちいち物理ファイアウォールを通過する必要がなくなります。これで、仮想マシン間のヘアピン通信が発生しなくなるので、物理機器への負担を小さくすることができます。そのためシンプルなトラフィックパターンとなるので、物理機器のダウンサイジングや運用コストの低下も期待できます(図 9)。

図 9 ヘアピン通信と分散ファイアウォール

2.3 どっちを取る!? vMotion の自由度とセキュリティ
これまでのネットワーク環境はセキュリティ機能が物理機器頼りになっているため、vMotion の自由度と、セキュリティのどちらかを犠牲にしているような形が多々見られます。ご存知と思いますが、仮想マシンを vMotion で移動する際には移動先と移動元が同じセグメントでないと、移動先で正常に通信ができなくなってしまいます。つまり、仮想マシンの移動先を多くするためには広い L2  ネットワークが必要になります(図 10)。

図 10 フラットな L2 ネットワークを使った従来管理

従来の管理方法で L2 ネットワークを広く取ってしまうと、多くの仮想マシンを同じセキュリティポリシーで管理することになってしまいます。本来は別々のセキュリティポリシーを適用すべきですが、仮想マシンが移動できる代わりにセキュリティを犠牲にしていることになります。
一方、セグメントを細かく切り、仮想マシンのセキュリティポリシーを厳しく適用する運用方針もあります。しかし、セグメントを細かくすると今度は仮想マシンの vMotion 先が少なくなってしまいます。また、このように自由度の低い構成は集約率の低下を招いてしまうことも多々あります。せっかく仮想マシンを使っているのに vMotion ができない…なんていうのはもったいないですよね(図 11)。

図 11 細かくセグメントを分けた従来管理

では、NSX Data Center を導入するとどうなるのかを見てみましょう。分散ファイアウォールを導入すれば仮想マシン毎にセキュリティポリシーを適用できるようになるので、フラットな L2 ネットワークを作りつつ、セキュリティレベルを維持することができます。加えて、ホスト間で分散ファイアウォールの情報を共有しているため、仮想マシンが移動できるようにしても、移動先でセキュリティレベルを維持することができます。

図 12 分散ファイアウォールの活用で自由度とセキュリティポリシーを両立

NSX Data Center を使えばセキュアな環境も維持しつつ、仮想マシンのメリットも最大限に引き出すことが可能となるんですね。
これまでは NSX Data Center のファイアウォール機能について、どのようなメリットが出るのかについてご説明させて頂きました。ところでみなさんはファイアウォールの設定というと、IP アドレスや MAC アドレスをコマンドで入力しながら 1 つ 1 つ設定を行っていくイメージがあると思います。今まで当たり前のことでしたが、もっとわかりやすく設定が行えたらいいな…と思ったことはありませんか?
実は NSX Data Center のファイアウォールは設定も従来のファイアウォールよりも柔軟に行えるんです。
3. 機能だけじゃない!簡単で柔軟な NSX Data Center のファイアウォール設定
では、実際に NSX Data Center のファイアウォールを設定する画面を見てみましょう(図 13)

図 13 NSX Data Center のファイアウォール設定画面

設定項目は以下の 5 項目となります。全て GUI 上から設定を行えるため、従来の IP、MAC アドレスを対象とした従来の CUI で行う設定よりも可視性に優れており、簡単にセキュリティポリシーを適用できるようになります。
・ソース
サービスの送信元を IP、MAC アドレスに加え vCenter オブジェクトから設定可能
・ターゲット
サービスの送信元を IP、MACアドレスに加え vCenter オブジェクトから設定可能
・サービス
物理ファイアウォールでセッティングできるサービスの大半を選択可能
・操作
サービスを許可/ブロック/却下するかを選択可能
・適用先
ルールの適用先を分散 FW もしくは Edge FW から選択可能
ここで注目していただきたいのは、ソースとターゲットを IP アドレスや MAC アドレスだけでなく、仮想マシンやポートグループ、クラスタ、ホスト、データセンタ、論理スイッチ、vApp、vNIC といった vCenter オブジェクトでも設定可能な点です。
従来のファイアウォールは文字が羅列されているだけので見にくいだけでなく、セキュリティポリシーの適用先が IP、MAC アドレスのみに縛られていました。vCenter オブジェクトで設定を行えるようになると、ソースとターゲット設定を直感的にできるため、従来のファイアウォールと柔軟に設定が可能となります。
ここで、さらに NSX Data Center のファイアウォールの柔軟性に足を踏み入れてみましょう。その秘密はセキュリティグループという概念にあります。

4. セキュリティグループで俊敏性を向上!!
先の節で仮想マシンや、ホストごと、ポートごとにセキュリティポリシーを設定できることをお話しました。しかし、仮想マシンは何度も作成されます。GUI になったとはいえ、仮想マシンを作成するたびに、ファイアウォールのルールを変更するのは少々手間です。できることであれば、もう少しグルーピングをし、なおかつ追加、削除される仮想マシンに対して動的にセキュリティポリシーを適用していきたいものです。
NSX Data Center では動的にグループメンバーを追加、削除してくれるセキュリティグループというオブジェクトをてソース・ターゲットとして選択できます。
セキュリティグループは、”仮想マシンに Tech の名前を含むもの”といった形でグルーピングをすることができ、あとから仮想マシンを追加しても動的にグループへ対象の仮想マシンを追加してくれます。

図 14 セキュリティグループを使えば後からポリシーを適用可能

例えば、技術部の Web サーバを追加する例を考えてみましょう。仮想マシン名に“Tech という文字が含まれば、技術グループ”、“Web という文字が含まれれば Web サーバグループ”というように事前にセキュリティグループを定義しておきます。すると、追加した Tech-Web という仮想マシンの分散ファイアウォールには、技術グループと Web サーバグループの 2 つのセキュリティグループのルールが適用されます。
これで、仮想環境に新しく仮想マシンを追加したときに、毎回毎回煩わしいファイアウォールの設定を追加していく必要もなくなります。セキュリティグループを活用すれば柔軟かつ俊敏に設定を適用できるようになります。NSX Data Center でネットワークを仮想化することで、ネットワークを最適化するだけでなく、ファイアウォール機能を強化したり、柔軟に設定できるようになるメリットも得られることができることがお分かりいただけたでしょうか?

5. まとめ
最後に改めて、NSX Data Center の持つファイアウォール機能の特徴とメリットをそれぞれ整理しておきましょう。
NSX Data Center のファイアウォールで従来の物理ファイアウォールの課題を解決!
・標的型攻撃に対しては分散ファイアウォールで感染拡大を抑制
・仮想マシンの可搬性を最大限にして運用
・ヘアピン通信を抑制して物理機器をダウンサイジング
設定は GUI 上で簡単に行える上、設定項目が豊富!
・物理ファイアウォールと違い、GUI 上で簡単に設定
・ターゲットとソースを vCenter オブジェクトを使って柔軟に設定可能
・セキュリティグループを使えば動的にセキュリティポリシーを適用可能

6. おわりに
今回は NSX Data Center のファイアウォールについてお話させて頂きました。次回は NSX Edge について詳しく触れます!実は NSX Edge にはルーティング機能や、今回お話したファイアウォール機能以外にも様々な機能があるんです!!
次回、さらなる NSX Data Center の魅力に触れていきましょう!お楽しみに!

コラム ~ 3rd party連携について ~
NSX Data Center は 3rd party 製品との連携も可能となっております。Symantiecs 社、Palo Alto Network 社、Fortinet 社、Juniper 社製品など様々なベンダー製品との連携が可能ですが、今回はトレンドマイクロ社の Deep Security との連携がどのように行われるのか、見てみましょう。昨今流行している標的型攻撃に対して、Deep Security と連携することによって、標的型攻撃の被害にあった被害にあった仮想マシンを物理的に隔離することが可能となります。さらに、Deep Security を活用することで仮想マシンの浄化まで行うことができる上に、仮想マシンの再接続を行うことも可能です。
これにより、NSX Data Center 単体での運用以上に安全な仮想環境を運用することが可能となります。
トレンドマイクロ社との連携についてはこちらの記事をご参照下さい。
VMware NSX と Trend Micro Deep Security で実現する仮想化セキュリティの最適化