這些安全性控制提供了一組 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 非作用中狀態逾時

vCenter Server 必須在 vSphere Client 工作階段處於非作用中狀態達到 15 分鐘後將其終止。

如果使用者忘記登出,閒置的 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

最小長度:8

至少 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 版本號碼

類型:含內嵌式 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 Appliance 上事件資料的本機儲存。

安裝預設值: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 設定用於設定稽核記錄。

安裝預設值:資訊
基準建議值:資訊
建議的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
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 學習

除非有意使用,否則所有分散式交換器連接埠群組都必須停用 MAC 學習。

MAC 學習使分散式交換器能夠為 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 可用)

您可以透過在應用裝置 shell 中執行以下命令來設定登入訊息:

/opt/vmware/bin/sso-config.sh -set_login_banner -title login_banner_title logonBannerFile
完成後,請務必再次停用 shell。
PowerCLI 命令修復範例
不適用 (沒有公用 API 可用)
您可以透過在應用裝置 shell 中執行以下命令來設定登入訊息:
/opt/vmware/bin/sso-config.sh -set_login_banner -title login_banner_title logonBannerFile

完成後,請務必再次停用 shell。

vSphere Client 中設定位置
管理 > Single Sign On > 組態 > 登入訊息 > 編輯

啟用登入橫幅

啟用 vSphere ClientvCenter Server 登入橫幅。

vCenter Server 提供了顯示登入訊息的功能。登入訊息的用途包括通知侵入者他們的活動是非法的,以及向授權使用者傳達在使用系統期間必須滿足且同意的期望和義務。此組態用於啟用訊息在 vSphere Client 登入頁面上的顯示。

安裝預設值:False
基準建議值:True
建議的動作
變更安裝預設值。
預設值已變更時的潛在功能影響
PowerCLI 命令評估
不適用 (沒有公用 API 可用)
您可以透過在應用裝置 shell 中執行以下命令來設定登入訊息:
/opt/vmware/bin/sso-config.sh -set_logon_banner -title logon_banner_title logonBannerFile

完成後,請務必再次停用 shell。

PowerCLI 命令修復範例
不適用 (沒有公用 API 可用)
您可以透過在應用裝置 shell 中執行以下命令來設定登入訊息:
/opt/vmware/bin/sso-config.sh -set_logon_banner -title logon_banner_title logonBannerFile

完成後,請務必再次停用 shell。

vSphere Client 中設定位置
管理 > Single Sign On > 組態 > 登入訊息 > 編輯

設定登入橫幅文字

設定 vSphere ClientvCenter Server 登入橫幅文字。

vCenter Server 提供了顯示登入訊息的功能。登入訊息的用途包括通知侵入者他們的活動是非法的,以及向授權使用者傳達在使用系統期間必須滿足且同意的期望和義務。此組態用於確定在 vSphere Client 登入頁面上顯示的文字。

安裝預設值:未設定
基準建議值:有關特定文字,請諮詢您組織的法律顧問。

範例文字:使用本系統即表示您瞭解並同意監管本系統的組織原則。

建議的動作
變更安裝預設值。
預設值已變更時的潛在功能影響
PowerCLI 命令評估
不適用 (沒有公用 API 可用)
您可以透過在應用裝置 shell 中執行以下命令來設定登入訊息:
/opt/vmware/bin/sso-config.sh -set_logon_banner -title logon_banner_title logonBannerFile

完成後,請務必再次停用 shell。

PowerCLI 命令修復範例
不適用 (沒有公用 API 可用)
您可以透過在應用裝置 shell 中執行以下命令來設定登入訊息:
/opt/vmware/bin/sso-config.sh -set_logon_banner -title logon_banner_title logonBannerFile

完成後,請務必再次停用 shell。

vSphere Client 中設定位置
管理 > Single Sign On > 組態 > 登入訊息 > 編輯

將管理員的驗證和授權分開

vCenter Server 必須將管理員的驗證和授權分開。

如果像 Active Directory 等服務一樣將驗證和授權結合,則當基礎結構遭到破壞時可能會違規。因此,對於 vCenter Server,請確保將管理員的驗證和授權分開。請考慮使用本機 SSO 群組進行授權,以便在可行的情況下更好地管理風險。

安裝預設值:未設定
基準建議值:未設定
建議的動作
變更安裝預設值。
預設值已變更時的潛在功能影響
佈建 vCenter Server 存取時需要與 vCenter Server SSO 互動。可以透過 PowerCLI 實現自動化。
PowerCLI 命令評估
不適用 (沒有公用 API 可用)
PowerCLI 命令修復範例
不適用 (沒有公用 API 可用)
vSphere Client 中設定位置
不適用

將 [偽造的傳輸] 原則設定為 [拒絕]

將所有分散式交換器及其連接埠群組設定為拒絕偽造的傳輸。

虛擬機器可以透過變更 MAC 位址來模擬網路介面卡,從而帶來安全性威脅。透過在所有分散式交換器和連接埠群組上將 [偽造的傳輸] 選項設定為 [拒絕],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 Standard Switch 及其連接埠群組上將 [MAC 位址變更] 原則設定為 [拒絕]。

允許虛擬機器變更 MAC 位址會帶來安全風險,從而引發潛在的網路介面卡模擬。拒絕所有分散式交換器和連接埠群組上的 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 Standard Switch 及其連接埠群組上將 [混合模式] 原則設定為 [拒絕]。

在連接埠群組上啟用混合模式會允許所有已連線的虛擬機器讀取所有網路封包,從而帶來潛在的安全風險。儘管有時需要啟用混合模式以進行偵錯或監控,但建議使用預設設定「拒絕」。根據需要對特定連接埠群組作出例外處理。

安裝預設值:拒絕
基準建議值:拒絕
建議的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
某些工作負載確實合法地使用這些網路戰略,並且受到「拒絕」設定的負面影響。
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 探索通訊協定或連結層探索通訊協定

除非有意使用,否則應在分散式交換器上阻止加入 Cisco 探索通訊協定 (CDP) 或連結層探索通訊協定 (LLDP)。

vSphere 分散式虛擬交換器可能會加入 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 不得覆寫分散式交換器上連接埠層級的連接埠群組設定,除非要封鎖連接埠。

儘管獨特的虛擬機器設定可能需要覆寫連接埠層級組態,但請務必對其進行監控以防止未經授權的使用。如果利用安全性較低的分散式交換器組態,不受監控的覆寫可能會允許更廣泛的存取。

安裝預設值:

封鎖連接埠覆寫: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 必須移除分散式交換器上未授權的連接埠鏡像工作階段。

vSphere Distributed Switch 可能會鏡像連接埠之間的流量,從而啟用流量觀察。為保持安全性,必須移除分散式交換器上任何未經授權的連接埠鏡像工作階段。

安裝預設值:未設定
基準建議值:未設定
建議的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
PowerCLI 命令評估
(Get-VDSwitch -Name $VDS).ExtensionData.config.VspanSession
PowerCLI 命令修復範例
不適用
vSphere Client 中設定位置
請參閱 vSphere 網路說明文件。

限制虛擬客體標記

vCenter Server 必須限制在分散式交換器上使用虛擬客體標記 (VGT)。

將連接埠群組設定為 VLAN 4095 會允許使用虛擬客體標記 (VGT),以要求虛擬機器處理 VLAN 標籤。僅為獲得管理 VLAN 標記的標籤且具有相應功能的虛擬機器啟用 VGT。使用不當可能會導致拒絕服務或發生未經授權的 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 cmdlet 連線至 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 根帳戶密碼到期設定。

現代密碼最佳做法 (NIST 800-63B 第 5.1.1.2 條及其他指引) 指出,如果密碼熵充足,則任意要求使用者按特定時間間隔變更其密碼並不能提高安全性。許多自動化安全性工具和法規合規性架構並未反映此指引,因此可能會導致此建議不起作用。

安裝預設值:是
基準建議值:否
建議的動作
變更安裝預設值。
預設值已變更時的潛在功能影響
如未在到期前重設密碼,則需要執行復原程序。
PowerCLI 命令評估
備註: 必須先使用 Connect-CISServer cmdlet 連線至 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 cmdlet 連線至 vCenter Server 主機。
(Get-CisService -Name "com.vmware.appliance.logging.forwarding").get()
PowerCLI 命令修復範例
不適用
vSphere Client 中設定位置
不適用

設定時間同步

vCenter Server 必須具有可靠的時間同步來源。

密碼編譯、稽核記錄、叢集作業、事件回應和鑑識在很大程度上依賴同步時間。網路時間通訊協定 (NTP) 必須具有至少四個來源。如果必須在兩個來源和一個來源之間進行選擇,則最好選擇一個來源。

安裝預設值:未定義
基準建議值:特定於網站,或者:

0.vmware.pool.ntp.org、

1.vmware.pool.ntp.org、

2.vmware.pool.ntp.org、

3.Vmware.pool.ntp.org

建議的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
PowerCLI 命令評估
備註: 必須先使用 Connect-CISServer cmdlet 連線至 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 設定用於設定輪替期間。確保 vCenter Server 正確輪替其在 ESXi 主機上自動設定的密碼。

安裝預設值: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 > 設定 > 進階設定