以下に示すセキュリティ制御は、vSphere システム設計のベスト プラクティスの一連のベースラインを提供します。
vCenter Server のサードパーティ製プラグインを排除する
サードパーティ製の vCenter Server プラグインを減らすか、排除します。
システム間にプラグインやその他のサードパーティのクロス接続をインストールすると、異なるインフラストラクチャ システム間の境界が損なわれ、あるシステムを侵害した攻撃者が別のシステムへと水平方向に移動する機会を与えてしまいます。多くの場合、他のシステムと vSphere を密結合すると、タイムリーなパッチ適用やアップグレードの妨げになります。vSphere コンポーネントに対するサードパーティ製のプラグインやアドオンによって値が作成されるようにします。個々の管理コンソールではなくプラグインを使用する場合は、生じるリスクが相殺されていることを確認してください。
インフラストラクチャ管理インターフェイスに注意する
インフラストラクチャ管理インターフェイスを汎用の認証ソースや認可ソースに接続する場合は注意が必要です。
一元化されたエンタープライズ ディレクトリは、企業全体の認可における役割を担うため、攻撃者のターゲットになります。このディレクトリが侵害されると、攻撃者は組織内を自由に移動できます。IT インフラストラクチャを一元化されたディレクトリに接続すると、ランサムウェアやその他の攻撃を受ける大きなリスクとなることが証明されています。すべてのインフラストラクチャ システムの認証と認可を隔離してください。
ESXi の場合:
- vCenter Server を介してすべてのホスト管理を実施する
- ESXi Shell を無効にする
- ESXi を通常のロックダウン モードに切り替える
- ESXi root パスワードを複雑なパスワードに設定する
vSphere Distributed Resource Scheduler を有効にする
完全自動化モードでは vSphere Distributed Resource Scheduler (DRS) を有効にします。
vSphere DRS では、vMotion を使用して物理ホスト間でワークロードを移動し、パフォーマンスと可用性を確保します。完全自動化モードでは、vSphere Lifecycle Manager が DRS と連携してパッチ適用や更新の操作を有効にすることができます。
特定の仮想マシンとホスト間のマッピングが必要な場合は、DRS ルールを使用します。可能な場合は、「must」ではなく「should」ルールを使用して、パッチ適用および高可用性リカバリ中にルールを一時的に停止できるようにします。
vSphere High Availability を有効にする
vSphere High Availability (HA) では、ESXi ホストに突然障害が発生すると、クラスタ内の他の ESXi ホストでワークロードを再開します。HA の設定が環境に対して正しく構成されるようにします。
Enhanced vMotion Compatibility を有効にする
vSphere Enhanced vMotion Compatibility (EVC) では、世代の異なる CPU を実行しているクラスタ内の ESXi ホスト間で vMotion を使用してワークロードをライブ移行できるようにします。また、EVC は CPU の脆弱性が存在する状況にも対応します。この状況では、新しいマイクロコード命令が CPU に導入され、一時的に相互の互換性がなくなる可能性があります。
システムの改ざんを防ぐ
ESXi ホストと関連するストレージおよびネットワーク コンポーネントが、改ざん、不正アクセス、不正な削除から保護されるようにします。また、洪水、極端な温度(低温または高温)、ほこりやゴミなどの環境要因による損害からホストを保護します。
vSphere Native Key Provider や ESXi Key Persistence などのセキュリティ機能を使用すると、安全なマテリアルが ESXi ホストでローカルに保存され、攻撃者が保護されたクラスタを起動してロック解除できる可能性があります。物理的なセキュリティと妥当な脅威(盗難など)を考慮することが重要です。
盗難に加えて、セキュリティを重視する場合は、自分自身や組織に対して次のような質問をします。
- 問題の原因は何ですか。
- 問題が発生したかどうかを確認するにはどうすればよいですか。
このような質問は、スタッフが不在のデータセンターの場所やコロケーション施設に対応する場合に重要性が増します。データセンターとラック構成に関しては、次の質問をしてください。
- データセンターに通じる出入り口はオートロック式ですか。
- 出入り口が少し開いたままになっていると、プロアクティブなアラートが生成されますか。
- ラックの出入り口が施錠されている場合でも、側面や上部からラックにアクセスしてケーブルを取り外すことは可能ですか。許可されていない人物がケーブルをネットワーク スイッチに接続できますか。
- デバイス(ストレージ デバイスなど)やサーバ全体を取り外すことは可能ですか。そのようなシナリオでは何が起こるでしょうか。
その他の質問は次のとおりです。
- 誰かがサーバ上の情報ディスプレイ(LCD パネルやコンソールなど)から環境やビジネスに関する情報を収集する可能性がありますか。
- このような情報ディスプレイが非アクティブな場合、たとえば硬い金属線を使用するなどしてラックの外部からディスプレイが起動される可能性がありますか。
- 会社のサービスを中断するために押される可能性のあるボタン(電源ボタンなど)は他にありますか。
最後に、洪水、凍結、高熱、環境からのほこりやゴミなど、可用性に影響を与えるその他の物理的脅威があるかどうかを自分自身にたずねてください。
vSphere オブジェクトに記述的な名前を付ける
vSphere オブジェクトに記述的な名前を付けます。オブジェクトのデフォルト名を変更して精度を確保し、混乱を軽減します。
vSphere オブジェクトに適した命名方法を使用します。「データセンター」、「vSAN データストア」、「DSwitch」、「仮想マシン ネットワーク」などのデフォルト名を変更して、追加情報を含めます。これにより、セキュリティ ポリシーと運用プロセスの構築、実装、監査時の精度が向上し、エラーを減らすことができます。
802.1Q VLAN タギングを使用するポート グループには VLAN 番号を含めることができます。データセンターとクラスタの名前には、場所と目的を反映させることができます。データストアと分散仮想スイッチの名前には、接続先のデータセンターとクラスタの名前を反映させることができます。キー プロバイダ名は、(代替サイトへのレプリケーションを使用して、暗号化された仮想マシンを保護する場合は)特に重要です。他のデータセンターやクラスタにあるオブジェクトとの潜在的な「名前の競合」を回避してください。
一部の組織では、物理的な場所の識別子(住所など)を使用してシステムに名前を付けるのではなく、「サイト A」、「サイト B」などの用語を使用してデータセンターの物理的な場所をわかりにくくします。これは、サイトが再配置される場合にも役立ちます。すべての名前を変更したり、不正確な情報に頭を悩ませたりする必要がなくなります。
命名方法を決定する場合は、多くのオブジェクトに同様のプロパティが設定される可能性がある点に留意してください。たとえば、2 つのポート グループに同じ VLAN を割り当てても、トラフィックのフィルタリング ルールとマーキング ルールは異なる場合があります。プロジェクト名や短い説明を名前に取り入れると、このタイプのオブジェクトのあいまいさの解消に役立つ可能性があります。
最後に、命名方法の策定時には自動化を検討してください。多くの場合、プログラムによって生成可能な名前は、タスクのスクリプト作成や自動化の際に役立ちます。
インフラストラクチャ管理インターフェイスを隔離する
IT インフラストラクチャ管理インターフェイスを独自のネットワーク セグメントに隔離するか、または管理ネットワークの一部として隔離します。
仮想化コンポーネント用に構成されたすべての管理インターフェイスを、仮想化管理専用の、ワークロードや無関係なシステムのないネットワーク セグメント(VLAN など)に配置します。管理インターフェイスを境界セキュリティ制御によって制御し、許可された vSphere 管理者のみが許可されたワークステーションからこれらのインターフェイスにアクセスできるようにします。
一部のシステム設計では、vCenter Server やその他の管理ツールが独自のネットワーク セグメントに配置され、ESXi から隔離されます。この方法により、これらのシステムの監視が強化されるためです。また、2 つの製品間の関係、およびサービスを中断するファイアウォールの構成エラーや停止の可能性を考慮して、ESXi の管理に vCenter Server を追加する設計もあります。どちらの設計を選択する場合でも、慎重を期してください。
vMotion を適切に使用する
vMotion で転送中データの暗号化(仮想マシンの場合は「必須」に設定)を使用するか、vMotion に使用される VMkernel ネットワーク インターフェイスが境界制御を採用している独自のネットワーク セグメントに隔離されるようにします。
vMotion と Storage vMotion を使用して、仮想マシンのメモリ データとストレージ データをネットワーク経由でそれぞれコピーします。転送中にデータが暗号化されるようにすると、機密性が確保されます。適切な境界制御を採用している専用ネットワーク セグメントに隔離すると、多層防御が追加され、ネットワーク トラフィックの管理も可能になります。
すべての形式の暗号化と同様に、vMotion 暗号化ではパフォーマンスは損なわれますが、パフォーマンスの変化はバックグラウンドの vMotion プロセスで発生し、仮想マシンの操作には影響しません。
vSAN を適切に使用する
vSAN で転送中データの暗号化を使用するか、vSAN に使用される VMkernel ネットワーク インターフェイスが境界制御を採用している独自のネットワーク セグメントに隔離されるようにします。
vSAN の転送中データの暗号化機能は、vSAN ノードの通信時に機密性を維持するために役立ちます。多くのセキュリティ制御と同様に、パフォーマンスとのトレードオフが生じます。転送中データの暗号化が有効になっている場合は、ストレージの遅延とパフォーマンスを監視します。vSAN の転送中データの暗号化を有効にしない、または有効にできない組織では、適切な境界制御を採用している専用ネットワーク セグメントにネットワーク トラフィックを隔離する必要があります。
Network I/O Control を有効にする
Network I/O Control (NIOC) を有効にして、ネットワークのサービス拒否に対する復元力を確保します。
vSphere Network I/O Control (NIOC) は、ハイパーバイザー レベルでサービス品質を提供し、マルチテナント クラウドや共有ワークロード環境のリソースに優先順位を付けることでネットワーク パフォーマンスを向上させるトラフィック管理テクノロジーです。vSphere Distributed Switch (vDS) に組み込まれている NIOC では、vMotion や管理トラフィックなどのさまざまなトラフィック タイプに対応する「ネットワーク リソース プール」にネットワーク アダプタの帯域幅を分割します。NIOC を使用すると、ユーザーはこれらのプールにシェア、制限、予約を割り当てることができます。
NIOC は、重要なサービスのネットワーク可用性を維持し、重要度の低いトラフィックを制限することで輻輳を防ぎます。これを実現するには、ビジネス要件ごとにネットワーク制御ポリシーを作成し、トラフィック タイプを隔離し、優先順位と使用方法に基づいて動的なリソース再割り当てを可能にします。
ベンダーが予約した VLAN を構成しない
ESXi ホストからの物理スイッチ アップリンクにベンダーが予約した VLAN が構成されないようにします。
一部のネットワーク ベンダーは、内部での使用または特定の用途のために特定の VLAN ID を予約します。これらの値が vSphere ネットワーク構成に含まれないようにします。
ESXi アップリンクをアクセス ポートとして構成する
ESXi ホストからの物理スイッチ アップリンクが、単一の VLAN に割り当てられる「アクセス ポート」として、またはネイティブ VLAN のないタグ付き 802.1Q VLAN トランクとして構成されるようにします。vSphere ポート グループが VLAN 1 またはタグなしネイティブ VLAN へのアクセスを許可しないようにします。
タグなしのトラフィックを受け入れるように「ネイティブ」VLAN が構成されているネットワーク接続、または VLAN 1 にアクセスできるネットワーク接続では、ネットワーク セキュリティ制御を突破する特殊なパケットを作成する機会を攻撃者に与える可能性があります。VLAN 1 は、ネットワーク管理と通信によく使用されるデフォルトであり、ワークロードから隔離する必要があります。ポート グループがネイティブ VLAN へのアクセス用に構成されないようにします。VLAN トランク ポートが VLAN の特定の定義(「すべて」ではない)で構成されるようにします。最後に、攻撃者が仮想化環境を使用してネットワーク セキュリティ制御を回避できないように、ポート グループが適切に構成されていることを確認します。
ストレージ ファブリック接続を適切に構成する
ストレージ ファブリック接続で転送中データの暗号化を使用するか、この接続が境界制御を採用している独自のネットワーク セグメントまたは SAN に隔離されるようにします。
転送中のストレージ データの保護は、データの機密性を確保するために役立ちます。多くの場合、可用性やパフォーマンス上の懸念があるため、多くのストレージ テクノロジーでは暗号化がオプションとして提供されていません。このような場合、適切な境界制御を採用している専用ネットワーク セグメントに隔離することで、制御が効果的に補完され、多層防御を追加できます。
ストレージ システムで LUN マスキングを使用する
ストレージ システムで LUN マスキング、ゾーニング、およびその他のストレージ側のセキュリティ手法を採用して、ストレージ割り当てが使用される vSphere クラスタでのみ認識されるようにします。
ストレージ コントローラと SAN ゾーニングでの LUN マスキングは、ストレージ トラフィックが承認されていないホストから認識されないようにしたり、承認されていないホストが他のセキュリティ制御をバイパスしてデータストアをマウントできないようにしたりするのに役立ちます。
許可されたシステムへの接続を制限する
vCenter Server Appliance ファイアウォールを使用して、許可されたシステムおよび管理者への接続を制限することを検討してください。
vCenter Server Appliance には、vCenter Server への受信接続を制限するために使用できる基本的なファイアウォールが含まれています。これにより、境界セキュリティ制御と組み合わせた多層防御の効果的なレイヤーが実現します。
同様に、接続をブロックするルールを追加する前に、管理ワークステーションからのアクセスを許可するルールが設定されていることを確認します。
物理的なアクセスを保護することなく ESXi ホストに暗号化キーを保存しない
ご使用の環境で ESXi ホストに暗号化キーを格納するには、ホストへの物理的なアクセスも保護する必要があります。
依存関係のループを回避するために、vSphere Native Key Provider では、Trusted Platform Module (TPM) において、または暗号化された ESXi 構成の一部として、復号化キーを ESXi ホストに直接格納します。ただし、ホストを物理的に保護していない状況で攻撃者がホストを盗んだ場合、攻撃者には暗号化されたワークロードのロックを解除して実行する手段があります。そのため、物理的なセキュリティを確保する(「システムの改ざんを防ぐ」を参照)か、または追加のネットワーク セキュリティ制御を含む標準キー プロバイダ(「標準のキー プロバイダについて」を参照)の使用を選択することが重要です。
ESXi 起動ボリュームに適したサイズのパーシステント デバイス、非 SD デバイス、非 USB デバイスを使用する
ご使用の環境では、ESXi 起動ボリュームに適したサイズのパーシステント デバイス、非 SD デバイス、非 USB デバイスを使用する必要があります。
フラッシュ メモリは時間が経過すると消耗するコンポーネントであり、データを書き込むごとに存続期間が短かくなります。SSD と NVMe デバイスには、この消耗を低減する機能が組み込まれているため信頼性が向上します。ただし、SD カードやほとんどの USB フラッシュ ドライブにはこのような機能がなく、信頼性の問題(不良セクターなど)が発生する可能性があります。多くの場合、このような問題の明らかな兆候はありません。
SD デバイスと USB デバイスの消耗を低減して長持ちさせるために、これらのデバイスに ESXi をインストールする場合は、監査ログとシステム ログを常にデバイスに書き込むのではなく、RAM ディスクに保存します。つまり、これらのログの長期ストレージの場所を新しく設定し、その新しい場所に移動するようにログ出力を変更する必要があります。
信頼性の高い起動デバイスを選択すると、このような追加の手順が不要になり、ESXi が自動的にセキュリティ監査に合格します。
vSAN iSCSI ターゲットを適切に構成する
vSAN iSCSI ターゲットでは、独自のネットワーク セグメントに隔離されていて、分散ポート グループ トラフィックのフィルタリングとマーキング、NSX、または外部のネットワーク セキュリティ制御を使用した個別の境界制御を採用している独自の VMkernel ネットワーク インターフェイスを使用します。
iSCSI ターゲット クライアントはクラスタの外部にあるため、独自のネットワーク インターフェイスで隔離します。この方法では、内部専用のその他のネットワーク通信を個別に制限できます。このタイプの隔離は、パフォーマンスの診断と管理にも役立ちます。