ネットワーキング セキュリティのベスト プラクティスに従うことで、vSphere デプロイの整合性を確保できます。

vSphere ネットワークのセキュリティに関する一般的な推奨事項

ネットワークの一般的なセキュリティ推奨事項に従うことは、vSphere ネットワーク環境のセキュリティを強化するための最初のステップです。その後、ファイアウォールや IPsec を使用したネットワークのセキュリティ強化などの特殊な領域に進むことができます。

vSphere ネットワーク環境を保護するための推奨事項

  • STP (Spanning Tree Protocol) は、ネットワーク トポロジ内でのループの形成を検出および防止します。VMware 仮想スイッチの場合、ループは他の方法で防止されており、STP は直接サポートされません。ネットワーク トポロジが変更されたときは、ネットワークがトポロジを再学習するのにある程度の時間が必要になります(30 ~ 50 秒)。この間、トラフィックの通過は許可されません。これらの問題を回避するために、ネットワーク ベンダーは、スイッチ ポートが継続的にトラフィックを転送できる機能を構築しています。詳細については、https://kb.vmware.com/kb/1003804にある VMware のナレッジベースの記事を参照してください。適切なネットワーク構成とネットワーク ハードウェア構成については、ネットワーク ベンダーのドキュメントを参照してください。
  • 分散仮想スイッチの Netflow トラフィックは、許可されたコレクタ IP アドレスに対してのみ送信されるようにします。Netflow エクスポートは暗号化されず、仮想ネットワークに関する情報を含めることができます。この情報により、転送中の機密情報が攻撃者によって閲覧および取得される可能性が増加します。Netflow エクスポートが必要な場合は、すべての Netflow ターゲット IP アドレスが正しいことを確認してください。
  • 必ず、ロールベースのアクセス制御を使用することにより、許可された管理者のみが仮想ネットワーク コンポーネントにアクセスできるようにします。たとえば、仮想マシン管理者には、管理する仮想マシンが存在するポート グループに対してのみアクセス権を付与します。ネットワーク管理者には、すべての仮想ネットワーク コンポーネントに対するアクセス権を付与し、仮想マシンへのアクセス権は与えないようにします。アクセスを制限すると、偶発的であれ悪意のあるものであれ誤って構成するリスクが軽減され、責務の分離と最小限の権限という主要なセキュリティ概念が適用されます。
  • ポート グループをネイティブ VLAN の値に構成しないようにします。多くの場合、物理スイッチはネイティブ VLAN を使用するように構成され、このネイティブ VLAN は、デフォルトで VLAN 1 になります。ESXi には、ネイティブ VLAN はありません。ポート グループで VLAN が指定されているフレームにはタグがありますが、ポート グループで VLAN が指定されていないフレームにタグは付いていません。この場合、1 というタグが付いている仮想マシンは結果的に物理スイッチのネイティブ VLAN に所属することになるため、問題が生じる可能性があります。

    たとえば、Cisco 物理スイッチから届く VLAN 1 上のフレームには、VLAN 1 がこの物理スイッチ上のネイティブ VLAN であるため、タグが付けられていません。しかし、VLAN 1 として指定された ESXi ホストからのフレームには 1 というタグが付けられています。そのため、ネイティブ VLAN に向かう ESXi ホストからのトラフィックは、タグなしではなく 1 というタグが付いているので正しくルーティングされません。ネイティブ VLAN から届く物理スイッチからのトラフィックは、タグが付いていないので認識されません。ESXi 仮想スイッチのポート グループでネイティブ VLAN ID を使用している場合、このスイッチはタグなしのトラフィックを想定しているので、そのポート上の仮想マシンからのトラフィックはスイッチ上のネイティブ VLAN では認識されません。

  • ポート グループをアップストリームの物理スイッチで予約された VLAN 値に構成しないようにします。物理スイッチは、特定の VLAN ID を内部的な目的で予約しており、多くの場合、これらの値に構成されているトラフィックは許可されません。たとえば、Cisco Catalyst スイッチでは通常、VLAN 1001 ~ 1024 および 4094 が予約されています。予約されている VLAN を使用すると、ネットワーク上でのサービスの拒否につながる可能性があります。
  • Virtual Guest Tagging (VGT) の場合を除き、ポート グループを VLAN 4095 に構成しないようにします。ポート グループを VLAN 4095 に設定すると、VGT モードが有効になります。このモードでは、仮想スイッチが VLAN タグを変更することなくすべてのネットワーク フレームを仮想マシンに渡し、そうしたフレームの処理は仮想マシンに委ねられます。
  • 分散仮想スイッチ上でポートレベルの構成オーバーライドを禁止します。ポートレベルの構成オーバーライドは、デフォルトで無効になっています。オーバーライドが有効になっている場合は、ポートグループ レベルでの設定とは異なるセキュリティ設定を仮想マシンに使用することができます。ある種の仮想マシンには固有の構成が必要ですが、監視は必要不可欠です。オーバーライドが監視されていない場合は、セキュリティ性の低い分散仮想スイッチ構成へのアクセス権を持つだれもがそのアクセス権を悪用できる可能性があります。
  • 分散仮想スイッチのポート ミラー トラフィックが認証済みのコレクター ポートまたは VLAN のみに送信されるようにします。vSphere Distributed Switch は、パケット キャプチャ デバイスが特定のトラフィック フローを収集できるように、トラフィックをあるポートから別のポートにミラーリングできます。ポート ミラーリングでは、すべての指定トラフィックのコピーが非暗号化形式で送信されます。ミラーリングされたこうしたトラフィックには、キャプチャされたパケット内の完全なデータが含まれています。そのため、宛先を誤るとそのデータ全体がセキュリティ侵害の危険にさらされる可能性があります。ポート ミラーリングが必要な場合は、ポート ミラー先の VLAN、ポート、およびアップリンク ID がすべて正しいことを確認してください。

vSphere ネットワーク コンポーネントのラベル付け

vSphere ネットワーキング アーキテクチャのさまざまなコンポーネントを識別することは重要であり、ネットワークが拡大するにつれ、エラーが発生しないようにするのに役立ちます。

次のベスト・プラクティスに従います。

  • ポート グループをクリアなネットワーク ラベルで構成します。これらのラベルは、ポート グループの機能記述子の役割を果たし、ネットワークがより複雑になるにつれ、各ポート グループの機能を識別するのに役立ちます。
  • vSphere Distributed Switch ごとに、スイッチの機能や IP サブネットを示すクリアなネットワーク ラベルがあることを確認します。このラベルは、物理スイッチにホスト名が必要なように、スイッチの機能記述子の役割を果たします。たとえば、スイッチに内部というラベルを付けて、内部ネットワーキング用であることを示すことができます。標準の仮想スイッチのラベルは変更できません。

vSphere VLAN 環境の文書化と確認

アドレスの問題を回避するため、VLAN 環境を定期的に確認します。VLAN 環境を完全に文書化し、VLAN ID が 1 回のみ使用されるようにします。文書化はトラブルシューティングに役立ち、環境を拡張するときに不可欠です。

手順

  1. すべての vSwitch および VLAN ID が完全に文書化されていることを確認します。
    仮想スイッチで VLAN タギングを使用する場合、ID は外部 VLAN 対応アップストリーム スイッチの ID に対応している必要があります。VLAN ID が完全に追跡されていない場合、ID が誤って再利用され、正しくない物理マシンと仮想マシン間でトラフィックが許可される可能性があります。同様に、VLAN ID が正しくない場合や欠落している場合、物理マシンと仮想マシン間で通過させるトラフィックがブロックされる可能性があります。
  2. すべての分散仮想ポート グループ(dvPortgroup インスタンス)の VLAN ID が完全に文書化されるようにします。
    dvPortgroup で VLAN タギングを使用する場合、ID は外部 VLAN 対応アップストリーム スイッチの ID に対応している必要があります。VLAN ID が完全に追跡されていない場合、ID が誤って再利用され、正しくない物理マシンと仮想マシン間でトラフィックが許可される可能性があります。同様に、VLAN ID が正しくない場合や欠落している場合、物理マシンと仮想マシン間で通過させるトラフィックがブロックされる可能性があります。
  3. すべての分散仮想スイッチのプライベート VLAN ID が完全に文書化されるようにします。
    分散仮想スイッチのプライベート VLAN (PVLAN) には、プライマリおよびセカンダリ VLAN ID が必要です。これらの ID は、外部 PVLAN 対応アップストリーム スイッチの ID に対応している必要があります。VLAN ID が完全に追跡されていない場合、ID が誤って再利用され、正しくない物理マシンと仮想マシン間でトラフィックが許可される可能性があります。同様に、PVLAN ID が正しくない場合や欠落している場合、物理マシンと仮想マシン間で通過させるトラフィックがブロックされる可能性があります。
  4. VLAN トランク リンクが、トランク リンクとして機能する物理スイッチ ポートにのみ接続されていることを確認します。
    仮想スイッチを VLAN トランク ポートに接続している場合は、アップリンク ポートの仮想スイッチと物理スイッチの両方を正しく構成する必要があります。物理スイッチが正しく構成されていない場合、VLAN 802.1q ヘッダを持つフレームが、そのようなフレームの到着を予期していないスイッチに転送されます。

vSphere でのネットワーク隔離プラクティスの導入

ネットワーク隔離プラクティスを採用すると、vSphere 環境におけるネットワークの安全性が強化されます。

vSphere 管理ネットワークの隔離

vSphere 管理ネットワークでは、各コンポーネントの vSphere 管理インターフェイスにアクセスできます。管理インターフェイス上で動作するサービスは、攻撃者がシステムへの特権アクセスを取得するきっかけになります。このネットワークへのアクセスの取得から、リモート攻撃が始まる可能性があります。攻撃者は、管理ネットワークへのアクセスを取得すると、それがさらなる侵入のための足場となります。

ESXi ホストまたはクラスタ上で動作する最も安全性の高い仮想マシンのセキュリティ レベルで管理ネットワークを保護して、管理ネットワークへのアクセスを厳密に管理します。管理ネットワークがどんなに制限されていても、管理者は、この管理ネットワークにアクセスして、ESXi ホストと vCenter Server システムを構成する必要があります。

vSphere 管理ポート グループを一般的な標準スイッチ上の専用 VLAN に配置します。本番環境(仮想マシン)のトラフィックは、vSphere 管理ポート グループの VLAN が本番環境の仮想マシンによって使用されていない場合、標準スイッチを共有できます。

ネットワーク セグメントが、その他の管理関連エンティティが見つかったネットワーク以外のネットワークにルーティングされていないことを確認します。ネットワーク セグメントのルーティングは、vSphere Replication に適している場合があります。特に、本番環境の仮想マシン トラフィックがこのネットワークにルーティングできないことを必ず確認してください。

次の方法のいずれかを使用して、管理機能へのアクセスを厳密に制御します。
  • 機密性の高い環境で管理ネットワークにアクセスするには、制御されたゲートウェイや他の制御された方法を構成します。たとえば、管理者が VPN 経由で管理ネットワークに接続する必要がある場合です。信頼できる管理者に対してのみ、管理ネットワークへのアクセスを許可します。
  • 管理クライアントを実行する Bastion ホストを構成します。

ストレージ トラフィックの隔離

IP ベースのストレージ トラフィックが隔離されていることを確認します。IP ベースのストレージには、iSCSI と NFS があります。仮想マシンは、仮想スイッチおよび VLAN を IP ベースのストレージ構成と共有することがあります。このタイプの構成は、IP ベースのストレージ トラフィックを承認されていない仮想マシン ユーザーに公開する可能性があります。

IP アドレス ベースのストレージは暗号化されていないことがよくあります。このネットワークへのアクセス権限があれば、誰でも IP アドレス ベースのストレージ トラフィックを表示できます。承認されていないユーザーが IP アドレス ベースのストレージ トラフィックを表示できないようにするには、IP アドレス ベースのストレージ ネットワーク トラフィックを本番環境のトラフィックから論理的に分離します。承認されていないユーザーによるトラフィックの表示を制限するには、VMkernel 管理ネットワークから分離された VLAN またはネットワーク セグメントで、IP ベースのストレージ アダプタを構成します。

vMotion トラフィックの隔離

vMotion 移行情報は、プレーン テキストで送信されます。この情報が通過するネットワークにアクセスできるユーザーであれば、誰でもこの情報を表示できます。攻撃者が vMotion トラフィックを傍受して、仮想マシンのメモリの内容を取得できる可能性があります。これにより、移行中にコンテンツが変更される MITM 攻撃もステージングされる可能性があります。

隔離されたネットワーク上で、vMotion トラフィックを本番環境のトラフィックから切り離します。ネットワークをルーティングできないように設定します。つまり、レイヤー 3 ルーターがこのネットワークと他のネットワークをスパンニングしないようにして、ネットワークへの外部アクセスを回避します。

vMotion ポート グループの一般的な標準スイッチ上の専用 VLAN を使用します。本番環境(仮想マシン)のトラフィックは、vMotion ポート グループの VLAN が本番環境の仮想マシンによって使用されていない場合、同じ標準スイッチを使用できます。

vSAN トラフィックの隔離

vSAN ネットワークを構成するときは、vSAN トラフィックを専用のレイヤー 2 ネットワーク セグメントに隔離します。この隔離は、専用のスイッチまたはポートを使用するか、VLAN を使用して実行できます。

必要なときにのみ vSphere Network Appliance API で仮想スイッチを使用

vSphere Network Appliance API (DvFilter) を使用する製品を使用している場合を除き、仮想マシンにネットワーク情報を送信するようにホストを構成しないでください。vSphere Network Appliance API が有効になっていると、攻撃者が仮想マシンをフィルタに接続しようとする可能性があります。この接続により、ホストの他の仮想マシンのネットワークにアクセスできるようになることがあります。

この API を使用する製品を使用している場合は、ホストが正しく構成されていることを確認します。https://developer.vmware.com/docs/6518/developing-and-deploying-vsphere-solutions--vservices--and-esx-agentsの『vSphere ソリューション、vService および ESX エージェントの配置および開発』で、DvFilter のセクションを参照してください。API を使用するようにホストが設定されている場合は、Net.DVFilterBindIpAddress パラメータの値が API を使用する製品と一致することを確認します。

手順

  1. vSphere Client インベントリで、ホストに移動して参照します。
  2. [構成] をクリックします。
  3. [システム] の下で [システムの詳細設定] をクリックします。
  4. Net.DVFilterBindIpAddress までスクロール ダウンし、パラメータの値が空であることを確認します。
    パラメータは必ずしもアルファベット順ではありません。[フィルタ] テキスト ボックスに DVFilter と入力して、関連するパラメータすべてを表示します。
  5. 設定を確認します。
    • DvFilter 設定を使用していない場合は、値が空であることを確認します。
    • DvFilter 設定を使用している場合は、パラメータの値が正しいことを確認します。値は、DvFilter を使用している製品で使用されている値と一致する必要があります。