私たちの多くは、現在の仮想ファイアウォールと協力しています。 私は、に関する以前の記事だったの仮想レルム内のセキュリティの長所と短所を 、今日、私はVMwareとのファイアーウォールの可能性についてお話したいと思います。 VMwareの比較的新しいに関する大きな興奮があったVMsafeのAPIを 。 具体的には、誰もが高速パスのファイアウォールを作成/展開するためにスクランブルされています。 しかし、すべての高速パスの実装は、同じように作られている? ファストパスソリューションと一緒に行くとセキュリティ上の問題はありますか? にダイブして見てみましょう。
VMsafeのの内訳
VMsafeのセキュリティAPIのリリースに伴い、VMwareはリング0でハイパーバイザーに直接接続するためにベンダーを許可することにより、vSphere環境内のセキュリティを実装するための使用可能なオプションを強化しています。 VMsafeは、3つのコンポーネントで構成されています。
- VDDK - ディスクブロックの検査。 APIは、公にリリースされました。
- vCompute - CPUとメモリのAPI。 公にリリースされていません。 未知のどの第三者がアクセス権を持って、もしあれば。
- のvNetwork - vNICとvSwitch間のフィルタリング/監視するためのAPI。 公にリリースされていません。 私の知る限り、唯一のAltorネットワーク & リフレックスシステムは、アクセス(APIの開発を支援した両ベンダー)があります。
特に、私は、vNetwork APIに話せるようにしたい。 ESXホスト内ネットワークのトラフィックフローを制御する場合、2つの可能な実装、"低速パス"と"ファストパス"があります。
遅いパス
遅いパスは、最も単純な実装と我々が長年使用しているものです。 効果的にこれは、ESXホスト上で実行して、他のVMゲストに似てVMゲスト、です。 通常は各ゲストがユニークなのvSwitchに接続されており、これらのvSwitchの各は、ファイアウォール上で一意のvNICに接続されています。 これは、従来のファイアウォールの設定に似ていますが、実質的に実装。 低速パスで実行することの利点は、ファイアウォールをサポートするために必要なライブラリまたはサービスとの完全な打撃のOSを実行できることです。
ファーストパス
ファストパスは効果的にハイパーバイザーカーネルに直接接続するリング0ドライバです。 これは、各vNIC / vSwitchの接続の間に挿入するためのハイパーバイザーを活用するサードパーティベンダーが可能になります。 ファストパスドライバがカーネルのコンテキストで実行されているため、それはシステムに最小限のオーバーヘッドが追加されます。 その結果、高速パス内のコードの実行が(各コンテキストのため、ヴイエムウェアの命名規則)同じコードが遅いパス内で実行されているよりもかなり高速です。 ESXホスト上の負荷が最小化され、最終結果は、はるかに仮想ゲストを実行できますですので。
高速対遅い
だから、あなたが高速パス内のすべてをしたいと思うように聞こえますが、多くの問題があります。 ファストパスは、ハイパーバイザー最小化されていない完全なブローのオペレーティングシステムにプラグインするカーネルドライバです。 これは、ファイアウォールはトラフィックフローを制御するために利用できる持っているライブラリやサービスを制限します。 それは、ハイパーバイザー膨らませる攻撃面を増やすか、他の関数をハイパーバイザーと干渉しない保証がある必要があるので、さらに、我々は、カーネルドライバにプラグインされています。 VMware社がリリースする前に、すべての高速パスドライバのコードレビューを行います。 私は理論的に高速パス内のすべての私のコードを実装することができればそう、私は前にすべてのパッチまたは機能リリースにVMwareの承認が必要になります。
これを念頭に、"ファストパス"のサポートを主張するベンダーは、実際に高速パス、低速パスなどの一部としてそのコードの一部を実装してしまうし、2つの間にコネクタを作成する予定です。 ファストパスに実装されているどれだけこのコードの上、どのくらいのそれは遅いパスで実行される左右されるどの程度の負荷がシステム上に配置されます。
可能なファストパスの展開
例えば、ベンダーは、その単純にトンネルバックファイアウォールを実装し、低速パスへのすべてのパケットが高速パスドライバを書く際に選択することができます。 トラフィックが通過するか、削除する必要がある場合は、低速パスコードは、ハイパーバイザーの制御チャネルに挿入するための高速パスコードに送り返されて渡されるパケットで、決定します。 これは、高速パスを展開する最も簡単な方法、そしておそらくもっとも安全かつ確実になるが、少なくともパフォーマンスの利点を提供するであろう。 システム負荷は、おそらく完全に遅いパスの実装よりもはるかに良いではないでしょう。 それでも"高速パスのサポート"を主張することができるとともに、それが彼らの既存のコードへの変更の最小量を必要とするとして私は、従来のファイアウォールベンダーに非常に魅力的であるとして、このオプションを参照してください。
別のオプションは、ファイアウォールエンジンとして動作する高速パスドライバと管理機能のための遅いパスのスペースを使用することです。 ですから、例えば、ファイアウォール管理者は、高速パスドライバにポリシーを押し下げるという遅いパスのVM上で動作するインタフェースを使用してポリシーを作成します。 トラフィック制御をすぐに実装できるようにこのセットアップでは、高速パスドライバは、ポリシーのコピーを持っています。 その結果、最小のシステム負荷で高速なトラフィック処理です。 トレードオフはリング0でかさばるコードです。
これは、2つの混合物を実装することも可能です。 例えば、私は、ファイアウォールポリシーを実装するための高速パスドライバを使用することもできますが、その侵入のチェック、ウイルススキャンのために低速のパスのシステムに戻ってすべての"受け入れ"パケットを渡すか、必要とされているもの。 許容パケットが挿入のための高速パスドライバに渡されます。 受信するパケットは遅いパスのコンポーネントと対話しながらそのため、この設定ですべて"ドロップ"のパケットは、高速パスを介して処理されます。
サイドノートとして、すべてのvNetworkの実装だけでなく、ファイアウォールを検討する際には、上記の情報を保持する必要があります。 のvNetwork APIはまた、例えば、非常に最初のvNetworkの実装が実際にVMWareのLab Managerがいた等、ネットワークの統計情報の収集、ポリシーの実施、QoSのために使用することができます。 このツールは、セルフサービスのプロビジョニングに使用され、(これはvShieldのを介して実装されている)のファイアウォールコンポーネントが含まれていません。
まとめ
VMsafeのと統合するVMware製品は、厳密には"低速パス"の実装になることができますが、それはどんな製品が単に"高速パス"の実装と見なすことができる可能性はほとんどありません。 あらゆる高速パス製品は、最も可能性の高いハイブリッドになるだろう。 それは、単にコードが"低速パス"スペースと"高速パス"宇宙にどれだけ存在するかの問題です。 製品は、高速パスのサポートを主張するときは、任意の実際のパフォーマンス上の利点を識別するために、実装を分析するために少し深く掘る必要があります。
関連のポスト:

