これらのセキュリティ制御は、vCenter Server セキュリティのベスト プラクティスのベースライン セットを提供します。それらは、制御を実装した場合のメリットとトレードオフを説明する形で構成されています。変更を行うには、コントロールに応じて、vSphere Client、PowerCLI、または vCenter Server 管理インターフェイスを使用します。

使用される PowerCLI と変数

ここで使用する PowerCLI の例の一部では、VMware.vSphere.SsoAdmin モジュールをインストールする必要があります。

このセクションの PowerCLI コマンドでは、次の変数を使用しています。

  • $VC="vcenter_server_name"
  • $VDS="vsphere_distributed_switch_name"
  • $VDPG="vsphere_distributed_port_group"

vSphere Client 非アクティブ タイムアウトの設定

非アクティブ状態が 15 分経過した場合、vCenter ServervSphere Client セッションを終了する必要があります。

ユーザーがログアウトするのを忘れた場合、アイドル状態の vSphere Client セッションを無期限に開いたままにできるため、不正な特権アクセスが行われるリスクが高まります。

インストールのデフォルト値︰120 分
ベースラインの推奨値︰15 分
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
該当なし(使用できるパブリック API がない)
PowerCLI コマンドの修正例
該当なし(使用できるパブリック API がない)
vSphere Client で場所を設定する
[管理者] > [クライアント構成] > [セッション タイムアウト]

失敗したログイン試行間隔の設定

vCenter Server では、失敗したログイン試行のカウント間隔を 15 分以上に設定する必要があります。

ログイン試行の失敗回数を制限することで、ユーザー パスワードの推測を使用した不正アクセス(別名、総当たり攻撃)のリスクは軽減されます。

インストールのデフォルト値︰180
ベースラインの推奨値:900
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-SsoLockoutPolicy | Select FailedAttemptIntervalSec
PowerCLI コマンドの修正例
Get-SsoLockoutPolicy | Set-SsoLockoutPolicy -FailedAttemptIntervalSec 900
vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ローカル アカウント] > [ロックアウト ポリシー]

vSphere SSO ロックアウト ポリシーの最大試行回数の構成

ログイン試行の失敗回数が指定した値に達した場合、vCenter Server はアカウントをロックする必要があります。

アカウントのログイン失敗が繰り返される場合は、セキュリティに問題があると考えられます。総当たり攻撃を制限するには、特定のしきい値に達した後にアカウントをロックし、自動接続の再試行の回避とサービス拒否攻撃を受ける可能性の低減をバランスよく行います。

インストールのデフォルト値:5
ベースラインの推奨値:5
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-SsoLockoutPolicy | Select MaxFailedAttempts
PowerCLI コマンドの修正例
Get-SsoLockoutPolicy | Set-SsoLockoutPolicy -MaxFailedAttempts 5
vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ローカル アカウント] > [ロックアウト ポリシー]

vSphere SSO ロックアウト ポリシーのロック解除時間の構成

指定したタイムアウト期間が経過した場合、vCenter Server はアカウントのロックを解除する必要があります。

ログインが繰り返し失敗する場合は、セキュリティ上の脅威があると見なされます。ログインに複数回失敗したためにロックされた場合、vCenter Server アカウントを自動的にロック解除してはなりません。[email protected] の情報があり、有効であることを確認してください。

インストールのデフォルト値︰300
ベースラインの推奨値:0
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
アカウントが自動的にロック解除されない場合、サービス拒否が発生する可能性があります。
PowerCLI コマンドの評価
Get-SsoLockoutPolicy | Select AutoUnlockIntervalSec
PowerCLI コマンドの修正例
Get-SsoLockoutPolicy | Set-SsoLockoutPolicy -AutoUnlockIntervalSec 0
vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ローカル アカウント] > [ロックアウト ポリシー]

複雑なパスワードの強制

vCenter Server では、パスワードを複雑にする必要があります。

パスワードの最新のベスト プラクティス(NIST 800-63B セクション 5.1.1.2 を参照)によると、パスワード エントロピーが十分大きければ、ユーザーに一定の間隔でパスワードを変更するよう任意に要求しても、セキュリティは向上しません。多くの自動セキュリティ ツールと規制コンプライアンス フレームワークにはこのガイダンスが反映されておらず、この推奨事項がオーバーライドされる可能性があります。

パスワードの強度と複雑さのルールは、vSphere SSO で作成されたアカウントに適用されます。これらのアカウントには、[email protected](インストール中に別のドメインを指定した場合は、administrator@mydomain)が含まれます。vCenter Server がドメインに参加している場合、これらのルールは Active Directory ユーザーに適用されません。これらのパスワード ポリシーは AD によって適用されます。

インストールのデフォルト値:

最大文字数:20

最小文字数:12

1 文字以上の特殊文字

2 文字以上の英字

1 文字以上の大文字

1 文字以上の小文字

1 文字以上の数字

3 つの隣接する同一文字

ベースラインの推奨値:

最大文字数:64

最小文字数:15

1 文字以上の特殊文字

2 文字以上の英字

1 文字以上の大文字

1 文字以上の小文字

1 文字以上の数字

3 つの隣接する同一文字

推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
VMware エコシステム内の他の製品およびサービスは、パスワードの複雑さの要件が変更されることを想定しておらず、インストールに失敗する可能性があります。
PowerCLI コマンドの評価
Get-SsoPasswordPolicy
PowerCLI コマンドの修正例
Get-SsoPasswordPolicy | Set-SsoPasswordPolicy -MinLength 15 -MaxLength 64 -MinNumericCount 1 -MinSpecialCharCount 1 -MinAlphabeticCount 2 -MinUppercaseCount 1 -MinLowercaseCount 1 -MaxIdenticalAdjacentCharacters 3
vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ローカル アカウント] > [パスワード ポリシー]

パスワード変更までの最大日数の構成

vCenter Server に、パスワードの有効期間を適切に構成する必要があります。

パスワードの最新のベスト プラクティス(NIST 800-63B セクション 5.1.1.2 を参照)によると、パスワード エントロピーが十分大きければ、ユーザーに一定の間隔でパスワードを変更するよう任意に要求しても、セキュリティは向上しません。多くの自動セキュリティ ツールと規制コンプライアンス フレームワークにはこのガイダンスが反映されておらず、この推奨事項がオーバーライドされる可能性があります。

インストールのデフォルト値︰90
ベースラインの推奨値:99999
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-SsoPasswordPolicy | Select PasswordLifetimeDays
PowerCLI コマンドの修正例
Get-SsoPasswordPolicy | Set-SsoPasswordPolicy -PasswordLifetimeDays 9999
vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ローカル アカウント] > [パスワード ポリシー]

パスワードの再利用を制限

パスワード履歴を設定してvCenter Server でのパスワードの再利用を制限します。

パスワードの複雑さに関するガイドラインに沿って、ユーザーが古いパスワードを再利用する場合があります。vCenter Server でパスワード履歴を設定すると、この状況を回避できることがあります。

インストールのデフォルト値:5
ベースラインの推奨値:5
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-SsoPasswordPolicy | Select ProhibitedPreviousPasswordsCount
PowerCLI コマンドの修正例
Get-SsoPasswordPolicy | Set-SsoPasswordPolicy -ProhibitedPreviousPasswordsCount 5
vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ローカル アカウント] > [パスワード ポリシー]

SSH アクセスのログイン バナー テキストの構成

SSH を使用してアクセスするための vCenter Server ログイン バナー テキストを構成します。

vCenter Server では、侵入者を抑止し、承認されたユーザーに義務を伝えるログイン メッセージを使用できます。この構成により、クライアントが SSH を使用して接続するときに表示されるテキストが設定されます。デフォルトのテキストを使用すると、システム構成に関する情報が攻撃者に漏洩されるため、変更する必要があります。

インストールのデフォルト値︰VMware vCenter Server version

タイプ︰Platform Services Controller が組み込まれた vCenter Server

ベースラインの推奨値︰環境に適用可能なテキストについては、組織の法律顧問に問い合わせてください。

テキストの例︰承認されたユーザーのみ。このシステムを実際に無断使用することまたはそれを試みることは禁止されており、刑事、民事、安全、または管理上の手続きおよび/または罰則を招く可能性があります。この情報システムを使用した場合、予告や許可なしに監視および記録に同意したものと見なされます。ユーザーは、このシステムの使用においてプライバシーを期待しないものとします。このシステムに保存されている情報、またはこのシステムを通過する情報、または監視および/または記録によって取得された情報は、連邦法、州法、および組織ポリシーに従って法執行機関に開示および/または使用される場合があります。このシステムの許可されたユーザーでない場合は、この時点でシステムを終了してください。

推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-AdvancedSetting -Entity $VC -Name etc.issue
PowerCLI コマンドの修正例
Get-AdvancedSetting -Entity $VC -Name etc.issue | Set-AdvancedSetting -Value "Authorized users only. Actual or attempted unauthorized use of this system is prohibited and may result in criminal, civil, security, or administrative proceedings and/or penalties. Use of this information system indicates consent to monitoring and recording, without notice or permission. Users have no expectation of privacy in any use of this system. Any information stored on, or transiting this system, or obtained by monitoring and/or recording, may be disclosed to law enforcement and/or used in accordance with Federal law, State statute, and organization policy. If you are not an authorized user of this system, exit the system at this time."
vSphere Client で場所を設定する
[管理者] > [Single Sign On] > [構成] > [ ログイン メッセージ]

タスクと保持間隔の設定

vCenter Server に、タスクとイベントの保持期間が適切に設定されている必要があります。

vCenter Server にはタスクおよびイベントのデータが保持されており、期限が過ぎるとストレージ容量が節約されます。期限は構成可能です。これが影響するのは、vCenter Server アプライアンス上のイベント データのローカル ストレージのみです。

インストールのデフォルト値:30
ベースラインの推奨値:30
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
該当なし(使用できるパブリック API がない)
PowerCLI コマンドの修正例
該当なし(使用できるパブリック API がない)
vSphere Client で場所を設定する
該当なし

リモート ログの有効化

vCenter Server イベントのリモート ログを有効にします。

中央ホストにリモート ログを作成すると、ログを安全に保存して vCenter Server のセキュリティを強化できます。リモート ログはホスト全体の監視を簡素化し、組織的な攻撃を検出するための集約分析をサポートします。ログを一元化することで改ざんは防止され、信頼性の高い長期的な監査レコードとして機能するようになります。vpxd.event.syslog.enabled 設定を使用すると、リモート ログが有効になります。

インストールのデフォルト値:True
ベースラインの推奨値:True
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-AdvancedSetting -Entity $VC -Name vpxd.event.syslog.enabled
PowerCLI コマンドの修正例
Get-AdvancedSetting -Entity $VC -Name vpxd.event.syslog.enabled | Set-AdvancedSetting -Value true
vSphere Client で場所を設定する
[vCenter Server の選択] > [構成] > [詳細設定]

FIPS の有効化

vCenter Server では、FIPS 検証済みの暗号化を有効にする必要があります。

FIPS 暗号化は、システムに複数の変更を行い、弱い暗号を削除します。FIPS を有効にすると、vCenter Server が再起動します。

インストールのデフォルト値:False
ベースラインの推奨値:True
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
FIPS 暗号化は、システムに複数の変更を行い、弱い暗号を削除します。FIPS を有効にすると、 vCenter Server が再起動します。
PowerCLI コマンドの評価
Invoke-GetSystemGlobalFips
PowerCLI コマンドの修正例
$spec = Initialize-SystemSecurityGlobalFipsUpdateSpec -Enabled $true
Invoke-SetSystemGlobalFips -SystemSecurityGlobalFipsUpdateSpec $spec
vSphere Client で場所を設定する
vCenter Server Appliance での FIPS の有効化および無効化を参照してください。

監査レコードの構成

vCenter Server は監査レコードを生成し、発生したイベントのタイプを設定するための情報を記録する必要があります。

診断およびフォレンジックに必要な情報が監査ログに含まれていることを確認することが重要です。config.log.level の設定に基づいて監査レコードが構成されます。

インストールのデフォルト値:Info
ベースラインの推奨値:Info
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-AdvancedSetting -Entity $VC -Name config.log.level
PowerCLI コマンドの修正例
Get-AdvancedSetting -Entity $VC -Name config.log.level | Set-AdvancedSetting -Value info
vSphere Client で場所を設定する
[vCenter Server ホスト] > [構成] > [詳細設定]

MAC アドレスの学習の無効化

意図的に使用しない限り、すべての Distributed Switch ポート グループで MAC アドレスの学習を無効にする必要があります。

MAC アドレスの学習が有効な場合、Distributed Switch は vNIC で複数の MAC アドレスが使用されているシステムにネットワーク経由で接続できます。これは、ネストされた仮想化などの特殊な場合(例:ESXi 内で ESXi が実行されている場合)に役立ちます。MAC アドレスの学習は、不明なユニキャスト フラッディングもサポートします。通常、ポートが受信したパケットの宛先 MAC アドレスが不明な場合、パケットはドロップされます。不明なユニキャストのフラッドを有効にすると、ポートは、MAC アドレスの学習および不明なユニキャストのフラッドを有効にしているスイッチ上のすべてのポートに、不明なユニキャスト トラフィックをフラッドします。このプロパティはデフォルトで有効になっていますが、有効になるのは MAC アドレスの学習が有効な場合のみです。MAC アドレスの学習を必要とする既知のワークロードに対して意図的に使用している場合を除き、MAC アドレスの学習を無効にします。

インストールのデフォルト値︰無効
ベースラインの推奨値︰無効
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
一部のワークロードはこれらのネットワーク戦術を合法的に使用しており、デフォルト設定および目的の状態の場合は悪影響を受けます。
PowerCLI コマンドの評価
(Get-VDPortgroup -Name $VDPG).ExtensionData.Config.DefaultPortConfig.MacManagementPolicy.MacLearningPolicy | Select-Object -ExpandProperty Enabled
PowerCLI コマンドの修正例
$VDPGview = Get-VDPortgroup -Name $VDPG | Get-View 
$ConfigSpec = New-Object VMware.Vim.DVPortgroupConfigSpec
$ConfigSpec.DefaultPortConfig = New-Object VMware.Vim.VMwareDVSPortSetting
$ConfigSpec.DefaultPortConfig.MacManagementPolicy = New-Object VMware.Vim.DVSMacManagementPolicy
$ConfigSpec.DefaultPortConfig.MacManagementPolicy.MacLearningPolicy = New-Object VMware.Vim.DVSMacLearningPolicy
$ConfigSpec.DefaultPortConfig.MacManagementPolicy.MacLearningPolicy.Enabled = $false
$ConfigSpec.ConfigVersion = $VDPGview.Config.ConfigVersion
$VDPGview.ReconfigureDVPortgroup_Task($ConfigSpec)
vSphere Client で場所を設定する
該当なし。vSphere API を使用して分散仮想ポート グループで MAC アドレスの学習を有効にすることができます。詳細については、『 vSphere Web Services API リファレンス』を参照してください。

ログイン メッセージ バナーの詳細の構成

vSphere ClientvCenter Server ログイン バナーの詳細を構成します。

vCenter Server には、ログイン メッセージを表示する機能があります。ログイン メッセージの使用には、攻撃者のアクティビティが違法であることを攻撃者に通知すること、およびシステムの使用時に対応および同意する必要がある期待される行為と義務を、許可されたユーザーに伝達することが含まれます。この構成では、vSphere Client ログイン ページ メッセージの詳細なテキストを設定します。

インストールのデフォルト値:未構成
ベースラインの推奨値︰環境に適用可能なテキストについては、組織の法律顧問に問い合わせてください。

テキストの例︰承認されたユーザーのみ。このシステムを実際に無断使用することまたはそれを試みることは禁止されており、刑事、民事、安全、または管理上の手続きおよび/または罰則を招く可能性があります。この情報システムを使用した場合、予告や許可なしに監視および記録に同意したものと見なされます。ユーザーは、このシステムの使用においてプライバシーを期待しないものとします。このシステムに保存されている情報、またはこのシステムを通過する情報、または監視および/または記録によって取得された情報は、連邦法、州法、および組織ポリシーに従って法執行機関に開示および/または使用される場合があります。このシステムの許可されたユーザーでない場合は、この時点でシステムを終了してください。

推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
該当なし(使用できるパブリック API がない)

ログイン メッセージを構成するには、アプライアンス シェルで次のコマンドを実行します。

/opt/vmware/bin/sso-config.sh -set_login_banner -title login_banner_title logonBannerFile
完了したら、シェルを再度無効にしてください。
PowerCLI コマンドの修正例
該当なし(使用できるパブリック API がない)
ログイン メッセージを構成するには、アプライアンス シェルで次のコマンドを実行します。
/opt/vmware/bin/sso-config.sh -set_login_banner -title login_banner_title logonBannerFile

完了したら、シェルを再度無効にしてください。

vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ログイン メッセージ] > [編集]

ログイン バナーの有効化

vSphere ClientvCenter Server ログイン バナーを有効にします。

vCenter Server には、ログイン メッセージを表示する機能があります。ログイン メッセージの使用には、攻撃者のアクティビティが違法であることを攻撃者に通知すること、およびシステムの使用時に対応および同意する必要がある期待される行為と義務を、許可されたユーザーに伝達することが含まれます。この構成により、vSphere Client ログイン ページへのメッセージの表示が有効になります。

インストールのデフォルト値:False
ベースラインの推奨値:True
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
該当なし(使用できるパブリック API がない)
ログイン メッセージを構成するには、アプライアンス シェルで次のコマンドを実行します。
/opt/vmware/bin/sso-config.sh -set_logon_banner -title logon_banner_title logonBannerFile

完了したら、シェルを再度無効にしてください。

PowerCLI コマンドの修正例
該当なし(使用できるパブリック API がない)
ログイン メッセージを構成するには、アプライアンス シェルで次のコマンドを実行します。
/opt/vmware/bin/sso-config.sh -set_logon_banner -title logon_banner_title logonBannerFile

完了したら、シェルを再度無効にしてください。

vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ログイン メッセージ] > [編集]

ログイン バナー テキストの構成

vSphere ClientvCenter Server ログイン バナー テキストを構成します。

vCenter Server には、ログイン メッセージを表示する機能があります。ログイン メッセージの使用には、攻撃者のアクティビティが違法であることを攻撃者に通知すること、およびシステムの使用時に対応および同意する必要がある期待される行為と義務を、許可されたユーザーに伝達することが含まれます。この構成により、vSphere Client ログイン ページに表示されるテキストが設定されます。

インストールのデフォルト値:未構成
ベースラインの推奨値︰特定のテキストについては、組織の法律顧問に相談してください。

テキストの例︰このシステムを使用するということは、このシステムを管理する組織ポリシーを認識し、同意するということです。

推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
該当なし(使用できるパブリック API がない)
ログイン メッセージを構成するには、アプライアンス シェルで次のコマンドを実行します。
/opt/vmware/bin/sso-config.sh -set_logon_banner -title logon_banner_title logonBannerFile

完了したら、シェルを再度無効にしてください。

PowerCLI コマンドの修正例
該当なし(使用できるパブリック API がない)
ログイン メッセージを構成するには、アプライアンス シェルで次のコマンドを実行します。
/opt/vmware/bin/sso-config.sh -set_logon_banner -title logon_banner_title logonBannerFile

完了したら、シェルを再度無効にしてください。

vSphere Client で場所を設定する
[管理] > [Single Sign On] > [構成] > [ログイン メッセージ] > [編集]

管理者の個別の認証および認可

vCenter Server では、管理者の認証と認可を分離する必要があります。

認証と認可を組み合わせると、Active Directory などのサービスの場合と同様に、セキュリティが侵害された場合にインフラストラクチャ違反になるリスクが生じます。したがって、vCenter Server の場合は、管理者の認証と承認を確実に分離してください。可能な場合は、ローカル SSO グループを使用して承認を行い、リスク管理を効率化することを検討してください。

インストールのデフォルト値:未構成
ベースラインの推奨値︰未構成
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
vCenter Server へのアクセスをプロビジョニングするには、vCenter Server SSO との相互作用が必要です。PowerCLI で自動化を行うことができます。
PowerCLI コマンドの評価
該当なし(使用できるパブリック API がない)
PowerCLI コマンドの修正例
該当なし(使用できるパブリック API がない)
vSphere Client で場所を設定する
該当なし

[偽装転送] ポリシーを [拒否] に設定する

偽装転送を拒否するように、すべての Distributed Switch とそのポート グループを設定します。

仮想マシンは、MAC アドレスを変更してネットワーク アダプタになりすまし、セキュリティ上の脅威を引き起こすことができます。すべての Distributed Switch およびポート グループで [偽装転送] オプションを [拒否] に設定すると、ESXi は MAC アドレスを検証し、このようななりすましを防止します。

インストールのデフォルト値:拒否
ベースラインの推奨値:拒否
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
一部のワークロードはこれらのネットワーク戦術を合法的に使用しており、デフォルト設定の場合は悪影響を受けます。
PowerCLI コマンドの評価
Get-VDSwitch -Name $VDS | Get-VDSecurityPolicy
Get-VDPortgroup -Name $VDPG | Get-VDSecurityPolicy
PowerCLI コマンドの修正例
Get-VDSwitch -Name $VDS | Get-VDSecurityPolicy | Set-VDSecurityPolicy -ForgedTransmits $false
Get-VDPortgroup -Name $VDPG | Get-VDSecurityPolicy | Set-VDSecurityPolicy -ForgedTransmits $false
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

[MAC アドレス変更] ポリシーを [拒否] に設定する

vSphere 標準スイッチとそのポート グループの両方で [MAC アドレス変更] ポリシーを [拒否] に設定します。

仮想マシンに MAC アドレスの変更を許可すると、セキュリティ上のリスクが生じ、ネットワーク アダプタのなりすましが可能になります。すべての Distributed Switch およびポート グループで MAC の変更を拒否すると、この問題は防止されますが、Microsoft Clustering や MAC アドレスに依存するライセンス供与などの特定のアプリケーションが影響を受ける可能性があります。必要に応じて、このセキュリティ ガイダンスの例外を作成します。

インストールのデフォルト値:拒否
ベースラインの推奨値:拒否
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
一部のワークロードはこれらのネットワーク戦術を合法的に使用しており、[拒否] に設定している場合は悪影響を受けます。
PowerCLI コマンドの評価
Get-VDSwitch -Name $VDS | Get-VDSecurityPolicy
Get-VDPortgroup -Name $VDPG | Get-VDSecurityPolicy
PowerCLI コマンドの評価
Get-VDSwitch -Name $VDS | Get-VDSecurityPolicy | Set-VDSecurityPolicy -MacChanges $false
Get-VDPortgroup -Name $VDPG | Get-VDSecurityPolicy | Set-VDSecurityPolicy -MacChanges $false
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

[無作為検出モード] ポリシーを [拒否] に設定する

vSphere 標準スイッチとそのポート グループの両方で [無作為検出モード] ポリシーを [拒否] に設定します。

ポート グループで無差別モードを有効にすると、接続されているすべての仮想マシンですべてのネットワーク パケットを読み取ることが可能になり、セキュリティ上のリスクが生じる可能性があります。デバッグや監視を行う際に無差別モードを許可する必要が生じる場合がありますが、デフォルト設定の [拒否] を使用することをお勧めします。必要に応じて、特定のポート グループの例外を作成します。

インストールのデフォルト値:拒否
ベースラインの推奨値:拒否
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
一部のワークロードはこれらのネットワーク戦術を合法的に使用しており、[拒否] に設定している場合は悪影響を受けます。
PowerCLI コマンドの評価
Get-VDSwitch -Name $VDS | Get-VDSecurityPolicy
Get-VDPortgroup -Name $VDPG | Get-VDSecurityPolicy
PowerCLI コマンドの修正例
Get-VDSwitch -Name $VDS | Get-VDSecurityPolicy | Set-VDSecurityPolicy -AllowPromiscuous $false
Get-VDPortgroup -Name $VDPG | Get-VDSecurityPolicy | Set-VDSecurityPolicy -AllowPromiscuous $false
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

仮想マシンが切断された場合のポート構成のリセット

vCenter Server では、仮想マシンが切断されたときにポート構成をリセットする必要があります。

仮想マシンが仮想スイッチ ポートから切断されている場合は、接続している別の仮想マシンのポートが既知の状態になるように、ポート構成をリセットすることをお勧めします。

インストールのデフォルト値:有効
ベースラインの推奨値:有効
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
(Get-VDPortgroup -Name $VDPG).ExtensionData.Config.Policy | Select-Object -ExpandProperty PortConfigResetAtDisconnect
PowerCLI コマンドの修正例
$VDPGview = Get-VDPortgroup -Name $VDPG | Get-View 
$ConfigSpec = New-Object VMware.Vim.DVPortgroupConfigSpec
$ConfigSpec.DefaultPortConfig = New-Object VMware.Vim.VMwareDVSPortSetting
$ConfigSpec.Policy = New-Object VMware.Vim.VMwareDVSPortgroupPolicy
$ConfigSpec.Policy.PortConfigResetAtDisconnect = $true
$ConfigSpec.ConfigVersion = $VDPGview.Config.ConfigVersion
$VDPGview.ReconfigureDVPortgroup_Task($ConfigSpec)
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

Cisco Discovery Protocol または Link Layer Discovery Protocol の無効化

意図的に使用しない限り、Distributed Switch で Cisco Discovery Protocol (CDP) または Link Layer Discovery Protocol (LLDP) への参加を無効にします。

vSphere Distributed Switch が CDP または LLDP に参加することで、IP アドレスやシステム名などの暗号化されていない機密情報がネットワーク上で共有される可能性があります。したがって、攻撃者が環境を認識したり、なりすましを行う上で、CDP と LLDP が役立つことがあります。ただし、CDP と LLDP は合法的な使用事例においても非常に便利です。トラブルシューティングまたは構成の検証に必要な場合を除き、CDP と LLDP は無効にします。

インストールのデフォルト値︰待機
ベースラインの推奨値︰なし
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
(Get-VDSwitch -Name $VDS).ExtensionData.config.LinkDiscoveryProtocolConfig | Select-Object -ExpandProperty Operation
PowerCLI コマンドの修正例
$VDview = Get-VDSwitch -Name $VDS | Get-View
$ConfigSpec = New-Object VMware.Vim.VMwareDVSConfigSpec
$ConfigSpec.LinkDiscoveryProtocolConfig = New-Object VMware.Vim.LinkDiscoveryProtocolConfig
$ConfigSpec.LinkDiscoveryProtocolConfig.Protocol = 'cdp'
$ConfigSpec.LinkDiscoveryProtocolConfig.Operation = 'none'
$ConfigSpec.ConfigVersion = $VDview.Config.ConfigVersion
$VDview.ReconfigureDvs_Task($ConfigSpec)
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

認証済みコレクタが NetFlow トラフィックを受信していることの確認

vCenter Server では、NetFlow トラフィックが認証済みコレクタに送信されていることを確認する必要があります。

vSphere Distributed Switch は暗号化されていない NetFlow データをエクスポートして、仮想ネットワークとトラフィック パターンの詳細を公開できます。NetFlow の使用が許可されていること、および情報の漏洩を防止できるように正しく構成されていることを確認します。

インストールのデフォルト値︰待機
ベースラインの推奨値︰なし
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
(Get-VDSwitch -Name $VDS).ExtensionData.config.IpfixConfig.CollectorIpAddress | Select-Object -ExpandProperty CollectorIpAddress
(Get-VDPortgroup -Name $VDPG).ExtensionData.Config.DefaultPortConfig.IpfixEnabled | Select-Object -ExpandProperty Value
PowerCLI コマンドの修正例
$VDPGview = Get-VDPortgroup -Name $VDPG | Get-View 
$ConfigSpec = New-Object VMware.Vim.DVPortgroupConfigSpec
$ConfigSpec.DefaultPortConfig = New-Object VMware.Vim.VMwareDVSPortSetting
$ConfigSpec.DefaultPortConfig.IpfixEnabled = New-Object VMware.Vim.BoolPolicy
$ConfigSpec.DefaultPortConfig.IpfixEnabled.Inherited = $false
$ConfigSpec.DefaultPortConfig.IpfixEnabled.Value = $false
$ConfigSpec.ConfigVersion = $VDPGview.Config.ConfigVersion
$VDPGview.ReconfigureDVPortgroup_Task($ConfigSpec)
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

仮想マシンのポート セキュリティの構成

vCenter Server では、ポートをブロックする場合を除き、Distributed Switch のポート グループ設定をポート レベルでオーバーライドしないでください。

仮想マシンを一意に設定するには、構成をポートレベルでオーバーライドしなければならない場合があります。不正使用を防止するには、これらを監視してください。オーバーライドを監視しないと、セキュリティの低い Distributed Switch 構成が悪用された場合に、アクセスが広範囲に許可される可能性があります。

インストールのデフォルト値:

ブロック ポートのオーバーライド︰TRUE

他のすべてのオーバーライド︰FALSE

ベースラインの推奨値:

ブロック ポートのオーバーライド︰TRUE

他のすべてのオーバーライド︰FALSE

推奨アクション
インストールのデフォルト設定を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
(Get-VDPortgroup -Name $VDPG).ExtensionData.Config.Policy
PowerCLI コマンドの修正例
$VDPGview = Get-VDPortgroup -Name $VDPG | Get-View 
$ConfigSpec = New-Object VMware.Vim.DVPortgroupConfigSpec
$ConfigSpec.DefaultPortConfig = New-Object VMware.Vim.VMwareDVSPortSetting
$ConfigSpec.Policy = New-Object VMware.Vim.VMwareDVSPortgroupPolicy
$ConfigSpec.Policy.UplinkTeamingOverrideAllowed = $false
$ConfigSpec.Policy.BlockOverrideAllowed = $true
$ConfigSpec.Policy.LivePortMovingAllowed = $false
$ConfigSpec.Policy.VlanOverrideAllowed = $false
$ConfigSpec.Policy.SecurityPolicyOverrideAllowed = $false
$ConfigSpec.Policy.VendorConfigOverrideAllowed = $false
$ConfigSpec.Policy.ShapingOverrideAllowed = $false
$ConfigSpec.Policy.IpfixOverrideAllowed = $false
$ConfigSpec.Policy.TrafficFilterOverrideAllowed = $false
$ConfigSpec.ConfigVersion = $VDPGview.Config.ConfigVersion
$VDPGview.ReconfigureDVPortgroup_Task($ConfigSpec)
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

ポート ミラーリングの削除

vCenter Server では、Distributed Switch の不正なポート ミラーリング セッションを削除する必要があります。

vSphere Distributed Switch はポート間のトラフィックをミラーリングして、トラフィックを観察できます。セキュリティを維持するには、Distributed Switch の不正なポート ミラーリング セッションをすべて削除する必要があります。

インストールのデフォルト値:未構成
ベースラインの推奨値︰未構成
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
(Get-VDSwitch -Name $VDS).ExtensionData.config.VspanSession
PowerCLI コマンドの修正例
該当なし
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

仮想ゲスト タギングの制限

vCenter Server では、Distributed Switch における仮想ゲスト タギング (VGT) の使用を制限する必要があります。

ポート グループを VLAN 4095 に設定すると、仮想ゲスト タギング (VGT) が許可されるため、VLAN タグは仮想マシンで処理する必要があります。VGT を有効にするのは、VLAN タグの管理が許可されていて、そのための装備がなされている仮想マシンのみです。不適切に使用すると、サービス拒否または VLAN トラフィックの不正な相互作用が生じる可能性があります。

インストールのデフォルト値:未構成
ベースラインの推奨値︰未構成
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-VDPortgroup -Name $VDPG | Where {$_.ExtensionData.Config.Uplink -ne "True"} | Select Name,VlanConfiguration
PowerCLI コマンドの修正例
Get-VDPortgroup $VDPG | Set-VDVlanConfiguration -VlanId "New_VLAN#"
vSphere Client で場所を設定する
vSphere のネットワーク』ドキュメントを参照してください。

vCenter Server バージョンでの VMware メンテナンスの確認

vCenter Server のバージョンが VMware のジェネラル サポートの終了ステータスに達していないことを確認します。

インストールのデフォルト値:該当なし
ベースラインの推奨値:該当なし
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
該当なし
PowerCLI コマンドの修正例
該当なし
vCenter Server 管理インターフェイスでの場所の設定
更新

SSH へのアクセスの制限

vCenter Server SSH サービスを無効にする必要があります。

vCenter Server Appliance は アプライアンスとして提供され、vCenter Server 管理インターフェイス、vSphere Client、API を介して管理することを目的としています。SSH は、必要な場合にのみ有効にするトラブルシューティングおよびサポート ツールです。vCenter Server High Availability は、SSH を使用してノード間のレプリケーションとフェイルオーバーを調整します。この機能を使用するには、SSH を有効のままにする必要があります。

インストールのデフォルト値︰無効
ベースラインの推奨値︰無効
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
注: まず、 Connect-CISServer コマンドレットを使用して vCenter Server ホストに接続する必要があります。
(Get-CisService -Name "com.vmware.appliance.access.ssh").get()
PowerCLI コマンドの修正例
(Get-CisService -Name "com.vmware.appliance.access.ssh").set($false)
vCenter Server 管理インターフェイスでの場所の設定
アクセス

root ユーザー パスワードの有効期限の確認

vCenter Server root アカウントのパスワード有効期限は、適切に構成する必要があります。

パスワードの最新のベスト プラクティス(NIST 800-63B セクション 5.1.1.2)にると、パスワード エントロピーが十分大きければ、ユーザーに一定の間隔でパスワードを変更するよう任意に要求してもセキュリティは向上しません。多くの自動セキュリティ ツールと規制コンプライアンス フレームワークにはこのガイダンスが反映されておらず、この推奨事項がオーバーライドされる可能性があります。

インストールのデフォルト値:Yes
ベースラインの推奨値:No
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
期限切れの前にパスワードをリセットできなかった場合は、リカバリ手順が必要になります。
PowerCLI コマンドの評価
注: まず、 Connect-CISServer コマンドレットを使用して vCenter Server ホストに接続する必要があります。
(Get-CisService -Name "com.vmware.appliance.local_accounts.policy").get()
PowerCLI コマンドの修正例
(Get-CisService -Name "com.vmware.appliance.local_accounts.policy").set(@{max_days=9999; min_days=1; warn_days=7})
vCenter Server 管理インターフェイスでの場所の設定
[管理]

ファイルベースのバックアップとリカバリの構成

vCenter Server インストーラを使用して vCenter Server Appliance とその構成をリカバリできるように、ファイルベースのバックアップとリカバリを構成します。バックアップとリストアは、環境を保護する上で重要です。

インストールのデフォルト値:未構成
ベースラインの推奨値︰構成済み
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
該当なし
PowerCLI コマンドの修正例
該当なし
vCenter Server 管理インターフェイスでの場所の設定
バックアップ

承認されたネットワークからのトラフィックのみを許可するようにファイアウォールを構成する

vCenter Server Appliance では、承認されたネットワークからのトラフィックのみを許可するようにファイアウォールを構成する必要があります。

明示的に許可されている場合を除き、すべての送受信ネットワーク トラフィックがブロックされていることを確認します。これにより、攻撃対象を減らし、システムへの不正アクセスを防止できまます。送信(出力方向)トラフィックはブロックされず、関連する接続または確立された接続もブロックされないため、vCenter Server Appliance は引き続き接続の開始元のシステムと通信できます。境界ファイアウォールを使用して、これらのタイプの接続を抑制します。

インストールのデフォルト値︰任意の IP アドレスからの接続を許可。
ベースラインの推奨値︰許可されたインフラストラクチャおよび管理ワークステーションから接続のみを許可。
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
接続の切断。「すべて拒否」ルールを構成する前に、許可ルールを独自に構成してください。
PowerCLI コマンドの評価
該当なし
PowerCLI コマンドの修正例
該当なし
vCenter Server 管理インターフェイスでの場所の設定
ファイアウォール

リモート ログ サーバの構成

vCenter Server のリモート ログ サーバを構成します。

中央ホストにリモート ログを作成すると、ログを安全に保存して vCenter Server のセキュリティを強化できます。リモート ログはホスト全体の監視を簡素化し、組織的な攻撃を検出するための集約分析をサポートします。ログを一元化することで改ざんは防止され、信頼性の高い長期的な監査レコードとして機能するようになります。

インストールのデフォルト値:未構成
ベースラインの推奨値︰サイト固有のログ サーバ
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
注: まず、 Connect-CISServer コマンドレットを使用して vCenter Server ホストに接続する必要があります。
(Get-CisService -Name "com.vmware.appliance.logging.forwarding").get()
PowerCLI コマンドの修正例
該当なし
vSphere Client で場所を設定する
該当なし

時刻同期の構成

vCenter Server には、信頼性の高い時刻同期ソースが必要です。

暗号化、監査ログ、クラスタ操作、インシデント応答、フォレンジックは、同期時間に大きく依存しています。Network Time Protocol (NTP) には、少なくとも 4 つのソースが必要です。2 つのソースか 1 つのソースかを選択する必要がある場合は、1 つのソースが推奨されます。

インストールのデフォルト値:未定義
ベースラインの推奨値︰サイト固有、または次のとおり

0.vmware.pool.ntp.org、

1.vmware.pool.ntp.org、

2.vmware.pool.ntp.org、

3.vmware.pool.ntp.org

推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
注: まず、 Connect-CISServer コマンドレットを使用して vCenter Server ホストに接続する必要があります。
(Get-CisService -Name ""com.vmware.appliance.timesync"").get()
(Get-CisService -Name ""com.vmware.appliance.ntp"").get()
PowerCLI コマンドの修正例
(Get-CisService -Name ""com.vmware.appliance.timesync"").set(""NTP"")
(Get-CisService -Name ""com.vmware.appliance.ntp"").set(""0.vmware.pool.ntp.org,1.vmware.pool.ntp.org,2.vmware.pool.ntp.org,3.vmware.pool.ntp.org"")
vSphere Client で場所を設定する
該当なし

ソフトウェア アップデートのインストール

vCenter Server にすべてのソフトウェア アップデートがインストールされていることを確認します。

vCenter Server パッチを最新の状態に保つことで、脆弱性を軽減できます。攻撃者は、不正アクセスの取得や権限の昇格を試みる際に、既知の脆弱性を悪用することがあります。

アップデートを適用する場合は、まず vCenter Server を更新します。アップデートが利用可能な場合は、ESXi の更新を続行します。この手順を実行すると、ESXi ホストを更新する前に管理レイヤーが更新されます。

インストールのデフォルト値:該当なし
ベースラインの推奨値:該当なし
推奨アクション
インストールのデフォルト値を変更します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
該当なし
PowerCLI コマンドの修正例
該当なし
vSphere Client で場所を設定する
ホストとクラスタのライフサイクルの管理』ドキュメントを参照してください。

vpxuser パスワードのローテーション

vCenter Server では、vpxuser パスワードを適切な間隔でローテーションするように構成する必要があります。

ローテーション期間は VirtualCenter.VimPasswordExpirationInDays の設定によって構成されます。ESXi ホストに自動的に設定されたパスワードが、vCenter Server によって適切にローテーションされていることを確認します。

インストールのデフォルト値:30
ベースラインの推奨値:30
推奨アクション
インストールのデフォルト値を監査します。
デフォルト値を変更した場合の潜在的な機能上の影響
なし
PowerCLI コマンドの評価
Get-AdvancedSetting -Entity $VC -Name VirtualCenter.VimPasswordExpirationInDays
PowerCLI コマンドの修正例
Get-AdvancedSetting -Entity $VC -Name VirtualCenter.VimPasswordExpirationInDays | Set-AdvancedSetting -Value 30
vSphere Client で場所を設定する
[vCenter Server の選択] > [構成] > [詳細設定]