這些安全性控制提供了一組基本的客體作業系統最佳做法。它們的結構化方式說明了實作控制的優勢和權衡。若要對這些控制進行變更,請使用提供的 PowerCLI 或 vSphere Client

使用的變數

本節中的 PowerCLI 命令使用以下變數:

  • $VM = "virtual_machine_name"

VMware Tools 路徑

VMware Tools 的預設安裝路徑為 C:\Program Files\VMware\VMware Tools

設定客體作業系統安全開機

客體作業系統必須啟用安全開機。

受所有現代客體作業系統支援的安全開機,使用公開金鑰密碼編譯來驗證韌體、開機載入程式、驅動程式和作業系統核心。透過防止具有不確定開機鏈結有效性的系統開機,安全開機有效地限制了惡意軟體的影響。

安裝預設值:站台專屬
基準建議值:True
需要執行的動作
變更安裝預設值。
預設值已變更時的潛在功能影響
在安裝客體作業系統後啟用安全開機可能涉及更多步驟。如需指示,請參閱客體作業系統說明文件。
PowerCLI 命令評估
(Get-VM -Name $VM).ExtensionData.Config.BootOptions.EfiSecureBootEnabled 
PowerCLI 命令修復範例
$VMobj = (Get-VM -Name $VM)
$ConfigSpec = New-Object VMware.Vim.VirtualMachineConfigSpec
$bootOptions = New-Object VMware.Vim.VirtualMachineBootOptions
$bootOptions.EfiSecureBootEnabled = $true
$ConfigSpec.BootOptions = $bootOptions
$task = $VMobj.ExtensionData.ReconfigVM_Task($ConfigSpec)
vSphere Client 中設定位置
虛擬機器 > 編輯設定 > 虛擬機器選項

限制使用 MSI 轉換

重新設定 VMware Tools 時,客體作業系統必須限制使用 MSI 轉換。

MSI 轉換允許變更 Microsoft Windows 客體作業系統上的安裝資料庫。這非常有用,但也提供了從 vSphere 更改客體作業系統的安全性設定檔的機會。

安裝預設值:False
基準建議值:False
需要執行的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
必要時,管理員必須使用其他方法來更新和重新設定 VMware Tools。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get autoupgrade allow-msi-transforms
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set autoupgrade allow-msi-transforms false
vSphere Client 中設定位置
不適用

停用 Appinfo

除非需要,否則客體作業系統必須停用 Appinfo 資訊收集。

Appinfo 是一種透過 VMware Tools 執行應用程式探索的方法。如果未使用此工具,請停用模組以減少攻擊面。

安裝預設值:False
基準建議值:True
需要執行的動作
修改安裝預設值。
預設值已變更時的潛在功能影響
VMware 生態系統中的產品和服務可能需要此功能。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get appinfo disabled
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set appinfo disabled true
vSphere Client 中設定位置
不適用

停用 ContainerInfo

除非需要,否則客體作業系統必須停用 ContainerInfo。

適用於 Linux 的 VMware Tools ContainerInfo 外掛程式會收集 Linux 客體作業系統內正在執行的容器清單。

安裝預設值:21600
基準建議值:0
需要執行的動作
修改安裝預設值。
預設值已變更時的潛在功能影響
VMware 生態系統中的產品和服務可能需要此功能。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get containerinfo poll-interval
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set containerinfo poll-interval 0
vSphere Client 中設定位置
不適用

停用客體作業

除非需要,否則停用客體作業。

客體作業是支援大多數主機與客體互動的一組功能。停用它們可減小攻擊面,但也會大幅降低功能性。確保您的環境不需要這些功能。請勿在範本虛擬機器上停用客體作業。

如需功能清單,請參閱下列說明文件:

https://vdc-download.vmware.com/vmwb-repository/dcr-public/fe08899f-1eec-4d8d-b3bc-a6664c168c2c/7fdf97a1-4c0d-4be0-9d43-2ceebbc174d9/doc/vim.vm.guest.GuestOperationsManager.html

安裝預設值:False
基準建議值:True
需要執行的動作
修改安裝預設值。
預設值已變更時的潛在功能影響
VMware 生態系統中的產品和服務可能需要此功能。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get guestoperations disabled
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set guestoperations disabled true
vSphere Client 中設定位置
不適用

防止客體作業系統重新自訂

必須防止已部署和已自訂虛擬機器上的客體作業系統重新自訂。

虛擬機部署程序為 vSphere 管理員提供了許多選項,可以透過指令碼和執行命令來自訂虛擬機器。這些自訂方法也可能成為攻擊者透過複製和重新自訂來取得虛擬機器內部資料的途徑。在部署完虛擬機器後,防止其再次進行自訂。始終可以還原此變更。

安裝預設值:True
基準建議值:False
需要執行的動作
修改安裝預設值。
預設值已變更時的潛在功能影響
設定後,虛擬機器能夠在複製時進行自訂。請勿在範本虛擬機器上進行此變更。
進行此變更可能會影響透過 VMware Site Recovery Manager 或 VMware Cloud Disaster Recovery 變更 IP 位址的災難復原程序。如需詳細資訊,請參閱下列說明文件:
https://docs.vmware.com/tw/VMware-Cloud-Disaster-Recovery/services/vmware-cloud-disaster-recovery/GUID-94202BE7-FEAF-4E35-8B55-15F6B3798309.html
PowerCLI 命令評估
VMwareToolboxCmd.exe config get deployPkg enable-customization
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set deployPkg enable-customization false
vSphere Client 中設定位置
不適用

停用 GuestStore 升級作業

除非需要,否則客體作業必須停用 GuestStore 升級作業。

GuestStore 功能提供簡單且彈性的機制,可將 VMware 專屬或自訂內容從 GuestStore 存放庫同時散佈給多個客體。如果未使用此功能,請停用外掛程式以減少攻擊面。

安裝預設值:手動
基準建議值:關閉
需要執行的動作
修改安裝預設值。
預設值已變更時的潛在功能影響
VMware 生態系統中的產品和服務可能需要此功能。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get gueststoreupgrade policy
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set gueststoreupgrade policy off
vSphere Client 中設定位置
不適用

停用服務探索

除非需要,否則客體作業系統必須停用服務探索。

VMware Tools 服務探索外掛程式連線到 Aria Operations 並向該產品提供有關客體作業系統和工作負載的其他資料。如果未使用此功能,請停用外掛程式以減少攻擊面。

安裝預設值:False
基準建議值:True
需要執行的動作
修改安裝預設值。
預設值已變更時的潛在功能影響
VMware 生態系統中的產品和服務可能需要此功能。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get servicediscovery disabled
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set servicediscovery disabled true
vSphere Client 中設定位置
不適用

啟用 VMware Tools 紀錄

客體作業系統必須啟用 VMware Tools 記錄。

確保 VMware Tools 視情況記錄資訊。如需範例,請參閱 https://github.com/vmware/open-vm-tools/blob/master/open-vm-tools/tools.conf

安裝預設值:True
基準建議值:True
需要執行的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
PowerCLI 命令評估
VMwareToolboxCmd.exe config get logging log
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set logging log true
vSphere Client 中設定位置
不適用

將 VMware Tools 紀錄傳送到系統紀錄服務

客體作業系統必須將 VMware Tools 紀錄傳送到系統記錄服務。

依預設,VMware Tools 將記錄傳送到磁碟上的檔案。將記錄設定為傳送到 Linux 客體上的 syslog,以及傳送到 Microsoft Windows 客體上的 Windows 事件服務,以便進行管理和集中封存。

安裝預設值:檔案
基準建議值:syslog
需要執行的動作
修改安裝預設值。
預設值已變更時的潛在功能影響
更新依賴於這些檔案位於預設位置的程序。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get logging vmsvc.handler
VMwareToolboxCmd.exe config get logging toolboxcmd.handler
VMwareToolboxCmd.exe config get logging vgauthsvc.handler
VMwareToolboxCmd.exe config get logging vmtoolsd.handler
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set logging vmsvc.handler syslog
VMwareToolboxCmd.exe config set logging toolboxcmd.handler syslog
VMwareToolboxCmd.exe config set logging vgauthsvc.handler syslog
VMwareToolboxCmd.exe config set logging vmtoolsd.handler syslog
vSphere Client 中設定位置
不適用

確保 VMware Tools 版本是最新的

客體作業系統必須確保 VMware Tools 是最新的。

VMware Tools 是 VMware 生態系統的重要組成部分。使用 VMware Tools,您可以執行客體作業系統管理,如:

  • 正常關閉
  • 生命週期管理
  • 取得半虛擬化裝置的驅動程式
  • 自訂和部署虛擬機器範本

與所有軟體一樣,您必須根據需要管理和更新 VMware Tools。確保您的客體作業系統執行的是受支援的版本,無論是作為 Linux 發行版的一部分提供還是由您為 Microsoft Windows 所安裝。

安裝預設值:不適用
基準建議值:不適用
需要執行的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
PowerCLI 命令評估
Get-VM -Name $VM | Select-Object -Property Name,@{Name='ToolsVersion';Expression={$_.Guest.ToolsVersion}}
PowerCLI 命令修復範例
站台專屬。可以透過多種方式更新 VMware Tools。VMXNET3 和 PVSCSI 的驅動程式也可透過 Windows Update 取得,因此請確保將其匯入 WSUS 等工具。
vSphere Client 中設定位置
虛擬機器 > 虛擬機器詳細資料 > VMware Tools

停用 GlobalConf

除非需要,否則客體作業系統必須停用 GlobalConf。

VMware Tools 的 GlobalConf 功能提供了將 tools.conf 檔案組態推送到虛擬機器的功能。

安裝預設值:False
基準建議值:False
需要執行的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
必要時,管理員需要使用其他方法來更新和重新設定 VMware Tools。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get globalconf enabled
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set globalconf enabled false
vSphere Client 中設定位置
不適用

限制自動更新 VMware Tools 功能

客體作業系統必須限制自動移除 VMware Tools 功能。

VMware Tools 自動升級程序可以在 VMware Tools 安裝中新增或移除功能,這非常有用,但也提供了從 vSphere 更改客體作業系統安全性設定檔的機會。

安裝預設值:True
基準建議值:False
需要執行的動作
變更安裝預設值。
預設值已變更時的潛在功能影響
必要時,管理員需要使用其他方法來更新和重新設定 VMware Tools。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get autoupgrade allow-remove-feature
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set autoupgrade allow-remove-feature false
vSphere Client 中設定位置
不適用

設定 VMware Tools 以進行自動升級

客體作業系統必須根據環境設定自動升級 VMware Tools。

VMware Tools 更新可以透過 vSphere 起始,這有助於維護目前的 VMware Tools 版本。如果您以其他方式管理和更新 VMware Tools,請停用此功能。通常,保持啟用自動更新。

安裝預設值:True
基準建議值:True
需要執行的動作
稽核安裝預設值。
預設值已變更時的潛在功能影響
必要時,管理員需要使用其他方法來更新和重新設定 VMware Tools。
PowerCLI 命令評估
VMwareToolboxCmd.exe config get autoupgrade allow-upgrade
PowerCLI 命令修復範例
VMwareToolboxCmd.exe config set autoupgrade allow-upgrade true
vSphere Client 中設定位置
不適用

確認虛擬機器硬體版本

客體作業系統必須確保虛擬機器硬體的版本為 19 或更新版本 (如果受支援)。

虛擬機器硬體版本 19 與 ESXi 7.0 Update 2 及更新版本相容。較新版本的虛擬機器硬體可啟用新功能並提供更佳效能。如果已完全更新到 vSphere 8.0 或更新版本,請考慮升級到虛擬機器硬體 20。一如往常,升級時請務必小心,並在系統全面推出之前充分測試升級程序。

考慮虛擬機器可能執行的所有位置,或者可能需要還原虛擬機器的所有位置。例如 VMware Cloud Disaster Recovery 服務的使用者需要考慮潛在復原 SDDC 的 vSphere 層級。雖然 VMware Cloud 是在 vSphere 上執行,但可能沒有相同支援的虛擬硬體版本可用。

不支援對 VMware 提供的虛擬應用裝置的組態進行變更,這可能會導致服務中斷。

備註: 升級虛擬機器硬體版本時,即使影響極小,也會進行驅動程式和其他更新。
安裝預設值:站台專屬
基準建議值:vmx-19 或更新版本
需要執行的動作
變更安裝預設值。
預設值已變更時的潛在功能影響
變更虛擬機器硬體版本會變更客體內的裝置版本,這可能會產生後果。請始終測試升級虛擬硬體版本,並記住快照也會擷取捕獲虛擬機版本,以便在必要時還原版本。
不支援對 VMware 提供的虛擬應用裝置的組態進行變更,這可能會導致服務中斷。
PowerCLI 命令評估
(Get-VM -Name $VM | Get-View) | Select-Object -Property Name,@{Name='HW Version';Expression={$_.Config.Version}}
PowerCLI 命令修復範例
Set-VM -VM $VM -HardwareVersion vmx-19
vSphere Client 中設定位置
在 [新增虛擬機器] 精靈中建立虛擬機器時, 選取相容性選項將設定虛擬機器硬體版本。