# 23、VMware ESXi安全加固

> VMware ESXi 虚拟化平台等保三级安全加固手册（ESXi 7.0U3~8.0U3 与 vCenter 7.x/8.x）：ESXi加固按 8.1.4 安全计算环境逐项给出核查命令与加固操作——VMSA 补丁跟踪与 esxcli software profile get 版本核查、锁定模式（普通/严格）与本地账户治理、Security.PasswordQualityControl 口令复杂度与 PasswordMaxDays 有效期、AccountLockFailures 失败锁定、TSM-SSH/ESXi Shell 超时收敛、防火墙规则与 allowedip 管理来源限制、Syslog.global.logHost 日志外送与 /var/log 留存、isolation.tools.* 虚拟机剪贴板隔离、加密 vMotion 与 TLS 1.2、vim-cmd hostsvc/firmware/backup_config 配置备份与 HA/DRS 演练、剩余信息保护与失效对象清理，附 6.7/7.0/8.0 版本差异速查与界面/CLI 双口径。

---

LLMS index: [llms.txt](/wikis/llms.txt)

---

> 定位：VMware ESXi 主机与 vCenter Server 管理面（虚拟化层）等保三级安全加固手册：按 00~09 编号分节覆盖补丁管理、锁定模式与账户治理、口令策略、管理面收敛、日志与审计、虚拟机层加固、传输加密、配置备份与恢复演练、剩余信息保护，每节附核查命令与测评项对照表。
>
> 适用版本：VMware ESXi 7.0U3 ~ 8.0U3，vCenter Server 7.x / 8.x（界面路径与高级设置键名基本一致，个别默认值随版本变化，见 09 节速查表）。
> 配套测评：[03、VMware ESXi测评](../../../gradeprotection/服务器/03vmware-esxi测评/)（现场取证与判定口径，本文与其条款一一衔接）。
> 配套加固：底层 Linux 口令与日志思路见 [11、Linux操作系统加固手册](../11linux操作系统加固手册/)。
>
> 使用说明：
>
> - 本文为**加固操作手册**：高级设置、服务启停、防火墙规则与锁定模式等操作都会修改配置，可能中断管理连接或需要将主机置于维护模式。实施前必须完成变更审批、确认业务窗口，并先做**主机配置备份**（`vim-cmd hostsvc/firmware/backup_config` 或 vSphere Client「主机 → 管理 → 系统 → 配置文件」），准备**可执行的回滚预案**。
> - 本文采用**界面/CLI 双口径**：核查类命令（`esxcli … list`、`esxcli … get`）均为只读，可直接取证；变更类操作优先给 vSphere Client / Host Client 界面路径，CLI 变更命令仅作批量场景备选，须在维护窗口执行并逐条留痕。
> - 启用**严格锁定模式**前务必确认 vCenter 可达、异常用户清单已核对，并保留一条已验证的恢复通道（本地 DCUI、带外管理口或堡垒机会话），避免锁定即失联；口令有效期类变更须确认 DCUI 物理通道可用（口令过期后只能到主机控制台修改）。
> - 先在测试集群或单台主机灰度验证，确认无业务影响后再批量推广；每完成一项立即用文中「核查方法」命令核验生效——配置已下发不等于策略已生效。
> - 示例中的地址、网段、主机名、syslog 服务器均为演示值（如 `192.168.10.0/24`、`udp://192.168.10.20:514`），现场须替换为本单位网络规划与日志平台真实值；对外发布或归档时须对内网管理地址脱敏。
> - 加固完成后按「16、安全评估加固记录表3.0」逐项留痕（整改前后回显、操作人、时间、验证结论、回退情况），并纳入复测；测评判定口径以 GB/T 28448-2019 与《高风险判定指引》为准，本文的「加固要点」不构成最终测评结论。
>
> 不适用标识说明：
>
> - 使用 `【不适用】` 明确标记现场可判定为不适用的控制点，并写明判定依据与承载该能力的上位组件。
> - 依据 GB/T 28448-2019「按测评对象实际承载功能与数据处理范围判定」原则：虚拟化层不承载的能力（如安全标记、恶意代码查杀 Agent、业务个人信息存储）应转由 vCenter、上层安全管理平台、虚拟机操作系统或网络层设备取证，注明测评单元边界后判定不适用或转由上位组件核查，不得机械按缺失判不符合。
> - 产品版本确实不提供该能力（如社区授权无 VM Encryption）时，须核查替代措施并按替代措施的实际效果定档，不得直接判不适用；已停止官方支持的版本（ESXi 6.x 及更早）应同时提出升级或补偿控制建议。

## 测评项对照表

| 控制点（GB/T 22239-2019 安全计算环境-虚拟化平台/宿主机） | 对应章节 |
| --- | --- |
| 入侵防范：版本与补丁、最小安装、服务与端口收敛、管理来源限制 | 00、03 |
| 身份鉴别：口令复杂度/有效期、登录失败处理与会话超时、双因素 | 01、02、06 |
| 访问控制：账户最小化、默认账户治理、角色权限分离 | 01、03 |
| 安全审计：日志类别与留存、外送集中审计、vCenter 事件 | 04 |
| 数据完整性与保密性：管理/TLS 通道、vMotion 与 FT 加密、VM 加密 | 05、06 |
| 数据备份恢复：主机配置备份、vCenter 备份、HA/DRS 与恢复演练 | 07 |
| 剩余信息保护：存储空间释放前清除、失效对象清理 | 08 |

## 00 关注官方安全更新公告

> **对应控制点**：GB/T 22239-2019 8.1.4.4 入侵防范 a)~f)（最小安装、漏洞发现与及时修补）；8.1.4.4 e) 与《高风险判定指引》对已停止支持版本的要求
>
> **加固要点**：建立 ESXi/vCenter 版本与漏洞台账，跟踪 Broadcom 官方安全公告（VMSA，2024-05 起迁移至 Broadcom 支持门户发布）并按变更窗口修补：修补前核对当前补丁级别（`esxcli system version get`、`esxcli software profile get`、`esxcli software vib list`），比对 VMSA 适用性；修补统一走 vSphere Lifecycle Manager（集群）或官方 KB 的 esxcli 离线升级流程（单主机），须先置维护模式、迁移虚拟机、完成配置备份；仅安装业务所需 VIB 组件，软件接受级别不得放宽为 `CommunitySupported`；ESXi 6.x 及更早版本已停止官方支持，须列入升级计划（7.0 普通支持期亦已结束，以 Broadcom 生命周期矩阵为准），未升级前按补偿控制管理。
>
> **验证方法**：版本与补丁级别回显（`vmware -v`、`esxcli system version get`、`esxcli software profile get`）、VIB 清单与基线比对结果、VMSA 比对结论与补丁评估变更单、漏洞扫描报告（虚拟化层不得排除在漏扫范围外）、官方公告订阅证据。

<div class="alert alert-warning" role="alert"><div class="h4 alert-heading" role="heading">高风险提示</div>


虚拟化宿主机存在已披露高危漏洞未修补（含已停止官方支持的 ESXi 6.x 及更早版本），或 ESXi 管理端口未经边界限制直接对互联网开放，按《高风险判定指引》可直接判高风险；从未开展漏洞扫描与基线核查同样按高风险线索记录。

判定口径详见 [22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)。

</div>


官方安全公告与支持门户：https://www.broadcom.com/support/vmware-security-advisories 、https://support.broadcom.com/web/ecx/security-advisory

核查版本与补丁级别：

```bash
vmware -v
esxcli system version get
esxcli software profile get
esxcli software vib list | grep -v VMware   # 筛查非官方签名 VIB
```

**加固操作**

1. 按 VMSA 对照结论确定目标补丁级别，下载对应离线补丁包（depot.zip）；
2. 集群环境用 vSphere Lifecycle Manager 建基线统一推送；单主机按官方 KB 流程：

```bash
esxcli system maintenanceMode set --enable yes     # 置维护模式（虚拟机须先迁移/关闭）
esxcli software profile update -d /vmfs/volumes/datastore/patch/depot.zip \
  -p ESXi-8.0U3s-xxxxx-standard                    # security-only 或 standard 按需选择
esxcli system shutdown reboot -r "security patch"  # 重启生效
```

3. 补丁完成后回查 `esxcli system version get` 与 `esxcli software profile get`，确认版本串与目标一致，并复核 HA 重新接入、虚拟机回迁正常。

- 预期现象：主机补丁级别与台账一致，VMSA 高危项全部闭环，非官方 VIB 为零或均有审批记录。

## 01 锁定模式与本地账户治理

> **对应控制点**：GB/T 22239-2019 8.1.4.1 身份鉴别 a)c)；8.1.4.2 访问控制 a)b)c)d)（账户唯一、默认/多余账户治理、最小权限与三权分立）
>
> **加固要点**：日常管理一律经 vCenter：为每台主机启用**锁定模式**（普通模式保留 DCUI 与异常用户直连，严格模式仅允许经 vCenter 操作、DCUI 仅可用于解除锁定），异常用户清单保持为空或仅含应急账户；ESXi 本地不建多余账户，账户与自然人一一对应，`root` 无法删除，按需重命名并配强口令、来源受限；管理用户权限分离由 vCenter 角色承载（管理员/虚拟机管理员/只读审计员三权分立），禁止所有运维共用 `root` 或 `Administrator@vsphere.local`；DCUI 属物理控制台能力，须以机房出入管控与带外管理授权补偿——注意官方明确 **DCUI 与 ESXi Shell 不支持登录失败锁定**，不能作为日常入口。
>
> **验证方法**：锁定模式状态截图（vSphere Client：选中主机 → 配置 → 安全配置文件 → 锁定模式）、异常用户清单、`esxcli system account list` 与 `esxcli system permission list` 输出、账户—角色—人员对照表、三权分立分权实测（审计员账户执行管理操作应被拒）、越权抽查记录。

<div class="alert alert-warning" role="alert"><div class="h4 alert-heading" role="heading">高风险提示</div>


所有运维统一使用 `root` 或 vCenter 超级管理员账户、系统/安全/审计职责未分离，或存在无法说明用途的本地账户时，按《高风险判定指引》记录为高风险线索；虚拟化管理平台账户失控曾直接导致批量删机事件，vCenter 与 ESXi 本地账户须一并治理。

判定口径详见 [22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)。

</div>


**核查方法**

```bash
esxcli system account list          # 本地账户清单，逐一核对用途
esxcli system permission list       # 本地权限条目（含角色）
```

界面口径：Host Client「主机 → 管理 → 安全和用户」查看账户；vSphere Client「主机 → 配置 → 安全配置文件 → 锁定模式」查看锁定状态。

**加固操作**

1. 启用锁定模式（vSphere Client：选中主机 → **配置 → 安全配置文件 → 锁定模式 → 编辑**，选「普通」或「严格」；DCUI：F2 → Configure Lockdown Mode）。严格模式启用前确认异常用户列表（Exception Users）为空且 vCenter 可达，否则失去唯一恢复通道；
2. 账户治理（Host Client：「主机 → 管理 → 安全和用户」，删除/停用调试期临时账户；vSphere Client：菜单 → 管理 → 访问控制 → 角色与权限，按角色最小化建账并审批留痕）；
3. `root` 口令按 02 节策略定期更换，日常运维改用 vCenter 分权账户，`root` 仅限带外应急并留痕。

- 预期现象：锁定模式为「已启用（普通/严格）」，异常用户为空；本地账户仅 root 与实名运维账户；权限矩阵与三权分立岗位对应，无共享账户。

## 02 口令策略与登录失败处理

> **对应控制点**：GB/T 22239-2019 8.1.4.1 身份鉴别 a)b)（复杂度与定期更换、登录失败处理与超时自动退出）
>
> **加固要点**：ESXi 本地口令策略由高级设置承载，出厂默认不满足等保常用口径：`Security.PasswordQualityControl` 默认仅要求「四类字符中三类、长度 7~40」（底层 `pam_passwdqc`），须收紧到 ≥8 位四类俱全（管理账户建议 12 位以上）；`Security.PasswordMaxDays` 默认 **99999**（不定期更换）须设 90 天以内；`Security.PasswordHistory` 在 8.0U1 起默认 5，此前版本默认 0（允许重复用旧口令）须显式设 ≥5；失败锁定默认已启用（`Security.AccountLockFailures=5`、`Security.AccountUnlockTime=900` 秒），可按制度收紧但不得为 0；各类会话空闲超时（Host Client、SSH、DCUI）须逐项设置，`UserVars.ESXiShellTimeOut`、`UserVars.DcuiTimeOut` 默认 0 即不超时。口令策略对全部本地账户统一生效，vCenter SSO 账户另在 SSO 策略中单独配置。
>
> **验证方法**：高级设置键值回显（界面：主机 → 管理 → 系统 → 高级设置，或下述 esxcli 只读命令）+ 弱口令实测（尝试设置 `P@ssw0rd` 类口令应被拒）+ 失败锁定实测（连续输错至阈值提示不正确）+ 会话静置超时实测 + vCenter SSO 密码策略与锁定策略截图（菜单 → 管理 → 单点登录 → 配置 → 策略）。

<div class="alert alert-warning" role="alert"><div class="h4 alert-heading" role="heading">高风险提示</div>


`root` 或管理账户存在弱口令、默认口令，或口令永不过期（`Security.PasswordMaxDays=99999`）且管理入口对非运维网段开放可被在线猜测时，按《高风险判定指引》可直接判高风险；仅改了复杂度而 `PasswordMaxDays` 仍为默认，属高频「部分符合」情形。

判定口径详见 [22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)。

</div>


**核查方法**

```bash
esxcli system settings advanced list -o /Security/PasswordQualityControl
esxcli system settings advanced list -o /Security/PasswordMaxDays
esxcli system settings advanced list -o /Security/PasswordHistory
esxcli system settings advanced list -o /Security/AccountLockFailures
esxcli system settings advanced list -o /Security/AccountUnlockTime
esxcli system settings advanced list -o /UserVars/HostClientSessionTimeout
esxcli system settings advanced list -o /UserVars/ESXiShellTimeOut
esxcli system settings advanced list -o /UserVars/DcuiTimeOut
```


<details class="td-details"><summary>示例输出（节选）</summary><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-text" data-lang="text"><span class="line"><span class="cl"># esxcli system settings advanced list -o /Security/PasswordMaxDays
</span></span><span class="line"><span class="cl">   Path: /Security/PasswordMaxDays
</span></span><span class="line"><span class="cl">   Type: integer
</span></span><span class="line"><span class="cl">   Int Value: 99999
</span></span><span class="line"><span class="cl">   Default Int Value: 99999
</span></span><span class="line"><span class="cl">   Description: Maximum number of days between password changes (0 = no expiry).
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"># esxcli system settings advanced list -o /Security/AccountLockFailures
</span></span><span class="line"><span class="cl">   Path: /Security/AccountLockFailures
</span></span><span class="line"><span class="cl">   Int Value: 5
</span></span><span class="line"><span class="cl">   Default Int Value: 5
</span></span><span class="line"><span class="cl">   Description: Maximum number of failed login attempts before a user&#39;s account is locked.
</span></span></code></pre></div>
</details>


**加固操作**（界面：主机 → 管理 → 系统 → 高级设置，检索键名后修改；CLI 备选须在维护窗口执行，回滚方式为将该键值改回原值或 `--default` 恢复默认）：

```bash
# 变更类命令：逐台执行前先记录原值，出现登录异常立即回滚
esxcli system settings advanced set -o /Security/PasswordQualityControl -s "retry=3 min=disabled,disabled,disabled,8,8"
esxcli system settings advanced set -o /Security/PasswordMaxDays -i 90
esxcli system settings advanced set -o /Security/PasswordHistory -i 5
esxcli system settings advanced set -o /Security/AccountLockFailures -i 5
esxcli system settings advanced set -o /Security/AccountUnlockTime -i 900
esxcli system settings advanced set -o /UserVars/HostClientSessionTimeout -i 600
esxcli system settings advanced set -o /UserVars/ESXiShellTimeOut -i 600    # 秒；0 为不超时
esxcli system settings advanced set -o /UserVars/DcuiTimeOut -i 10          # 分钟；0 为不超时
```

- 说明：① 修改已有账户的口令需按新策略逐个重设，存量弱口令不会自动失效；② 口令到期后 SSH 会引导改密，部分场景只能到 DCUI 改——**整改前必须确认带外/物理控制台通道可用**；③ vCenter SSO 锁定策略默认 5 次失败/180 秒窗口/900 秒解锁（系统账户如 administrator@vsphere.local 不受锁定策略限制），按制度收紧即可。
- 预期现象：各键值回显为目标值（「已覆盖」列为 true）；弱口令实测被拒；连续失败触发锁定提示；Host Client/SSH/DCUI 静置后自动退出。

## 03 管理面收敛（服务、防火墙与管理网络）

> **对应控制点**：GB/T 22239-2019 8.1.4.4 入侵防范 b)c)（关闭不需要的服务与端口、管理终端来源限制）；8.1.4.2 访问控制 d)（最小权限）；8.1.2.1 网络架构（管理平面独立）
>
> **加固要点**：管理暴露面最小化：`TSM-SSH`（SSH）与 `TSM`（ESXi Shell）默认关闭、仅应急临时开启并设超时，`slpd`、`snmpd` 等未用服务一律停止；管理端口（Host Client 443、SSH 22、vCenter 443）经主机防火墙与边界策略双重限制到运维网段——**Host Client 与 SSH 服务器是两条独立防火墙规则，须分别配置来源**；管理网络（vmk0）独立 VLAN、与业务/存储/vMotion 流量分离，网关与 DNS 指向管理网；vCenter 侧按角色最小化授权并配置 SSO 锁定策略，8.0 起仅支持内嵌式 PSC，存量外部 PSC 规划合并；主机防火墙只读核查入站规则集，未经审批不得新增放行。
>
> **验证方法**：服务清单截图（Host Client：主机 → 管理 → 服务，核对 TSM-SSH/TSM 停止、启动策略「随主机启动和停止」）、监听端口清单（`esxcli network ip connection list`）、防火墙规则与允许网段（界面：网络 → 防火墙规则；CLI：下述只读命令）、非授权地址实测访问被拒、管理网络 VLAN 与接口清单、vCenter 角色清单与 SSO 锁定策略截图。

<div class="alert alert-warning" role="alert"><div class="h4 alert-heading" role="heading">高风险提示</div>


ESXi 管理端口（443/22）对全网乃至互联网开放且无堡垒机补偿、SSH 长期开启无人复核时，按《高风险判定指引》可直接判高风险；管理网络与业务网络混部、vCenter 权限全员管理员，同样记录为高风险线索。

判定口径详见 [22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)。

</div>


**核查方法**

```bash
esxcli network ip connection list                       # 监听端口（常见 22/80/443/902/903/8000 等）
esxcli network firewall ruleset list                    # 入站规则集 enabled 状态
esxcli network firewall ruleset allowedip list          # 各规则允许的来源网段
esxcli network ip interface list                        # vmk0 等 VMkernel 接口与管理 VLAN
esxcli network vswitch standard list                    # 标准交换机端口组归属
```

界面口径：Host Client「网络 → 防火墙规则」逐条查看 vSphere Web Client 与 SSH 服务器规则的「仅允许从以下网络连接」配置。

**加固操作**

1. 服务收敛（Host Client：主机 → 管理 → 服务）：停止 `TSM-SSH`、`TSM` 并将启动策略改回「随主机启动和停止」；停止未用的 `slpd`、`snmpd`；应急开启 SSH 时须同步在防火墙规则中限定来源并设 `UserVars.ESXiShellTimeOut`（见 02 节），用完即关；
2. 防火墙来源限制（界面：「网络 → 防火墙规则」→ 编辑规则 → 勾选「仅允许从以下网络连接」→ 填入运维网段，逐条覆盖 Host Client 与 SSH 服务器两条规则）；保存后从非授权地址实测访问应被拒；
3. 管理网络隔离：vmk0 划入独立管理 VLAN，与 vMotion、存储、业务端口组分离；变更前确认管理网可达性，防止自断管理通道；
4. vCenter 权限与 SSO：按「管理员/虚拟机管理员/只读审计员」建角色并分账，菜单 → 管理 → 单点登录 → 配置中收紧密码策略与锁定策略。

- 预期现象：`ruleset allowedip list` 中 vSphereClient/sshServer 规则仅含运维网段；TSM-SSH/TSM 长期为停止状态且开启有审批留痕；`esxcli network ip connection list` 无未审批监听项；管理 VLAN 与业务隔离。

## 04 日志与审计

> **对应控制点**：GB/T 22239-2019 8.1.4.3 安全审计 a)~d)（审计覆盖、记录要素、记录保护与留存、审计进程保护）
>
> **加固要点**：ESXi 日志由 `vmsyslogd` 承载：服务随主机自启、日志级别保持 `info`（调高会漏记登录与配置变更）；`Syslog.global.logHost` 外送集中日志平台，协议用 `tcp://` 或 `ssl://`（TLS）——`udp://` 明文传输不满足数据完整性要求；本地轮替默认 8 × 1024 KB 约 8 MB 循环覆盖，**远不足 6 个月留存**，留存达标只能靠外送后集中侧保存；`/var/log` 下按日志文件核对审计覆盖（auth.log、shell.log、hostd.log、vpxa.log、fdm.log、vmkernel.log 等）；主机时间经 NTP 同步，保证记录可追溯；vCenter 侧核查事件日志（vSphere Client 菜单 → 事件；VCSA 的 vpxd-event.log），登录、权限变更、虚拟机生命周期操作均应有记录。
>
> **验证方法**：`vmsyslogd` 服务状态与策略截图、`Syslog.global.logHost` 协议与地址截图、本地轮替参数（`Syslog.global.defaultRotate`/`Syslog.global.defaultSize`）、日志平台收端截图与留存策略（≥6 个月）、`esxcli system syslog config get` 回显、`esxcli system ntp get` 时间同步状态、一段含时间/用户/事件类型/结果的日志样例。

<div class="alert alert-warning" role="alert"><div class="h4 alert-heading" role="heading">高风险提示</div>


虚拟化平台未外送任何日志、仅本地 8 MB 循环覆盖且无集中审计留存，安全事件无法溯源时按高风险线索记录；审计日志以明文 UDP 外送且承载鉴别相关信息时，与数据完整性不符合项合并判定。

判定口径详见 [22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)。

</div>


**核查方法**

```bash
esxcli system syslog config get
esxcli system ntp get
esxcli system settings advanced list -o /Syslog/Global/logHost
esxcli system settings advanced list -o /Syslog/Global/defaultRotate     # 默认 8
esxcli system settings advanced list -o /Syslog/Global/defaultSize       # 默认 1024 KB
esxcli system settings advanced list -o /Config/HostAgent/log.level      # 应为 info
ls -l /var/log | grep -E "auth|shell|hostd|vpxa|fdm|vmkernel"            # 日志文件清单与权限
```

主要日志文件（`/var/log`，多为指向 `/var/run/log` 的符号链接）：`auth.log`（Shell 认证成败）、`shell.log`（Shell 命令）、`hostd.log`（主机管理事件）、`vpxa.log`（vCenter 代理）、`fdm.log`（HA）、`vmkernel.log`（内核）、`esxupdate.log`（补丁）。

**加固操作**

1. 界面：主机 → 管理 → 系统 → 高级设置 → `Syslog.global.logHost`，填入 `ssl://日志平台地址:6514`（或 `tcp://`，TLS 优先）；日志平台侧确认按 ≥6 个月留存并告警；
2. 变更后执行 `esxcli system syslog reload` 使配置生效（或在界面高级设置保存后确认服务重启）；变更属管理面操作，建议维护窗口执行，回滚方式为改回原 logHost 并 reload；
3. 本地轮替可适当调大 `Syslog.global.defaultRotate`/`defaultSize` 作缓冲，但**不得作为留存达标依据**；
4. vCenter 侧：确认事件在 vSphere Client「菜单 → 事件」可查、VCSA 归档日志（vpxd-event.log）纳入备份，集中日志平台同步采集 vCenter 日志。

- 预期现象：日志平台实时收到该主机日志（协议为 tls/tcp），本地 `/var/log` 文件权限仍为 root 600；NTP 与标准时间一致；日志级别保持 info。

## 05 虚拟机层加固要点（简述）

> **对应控制点**：GB/T 22239-2019 8.1.4.4 入侵防范 a)d)（最小安装、危险能力关闭）；8.1.4.8 数据保密性 b)（存储保密性）
>
> **加固要点**：虚拟机侧按基线收敛危险能力与设备暴露：VM Tools 保持随补丁级别更新（旧版 Tools 存在已知漏洞且影响客户机与主机的信息交互安全）；VMX 高级参数禁用客户机与远程控制台间的剪贴板/拖放、磁盘收缩/擦除与可热插拔设备（`isolation.tools.*`、`isolation.device.*`，见下）；快照按制度清理——长期快照既影响性能又会形成脱离备份体系的「影子副本」；承载敏感数据的虚拟机启用 **VM Encryption**（vSphere 6.5+，需 Enterprise Plus 授权并配置 KMS，7.0U3 起可用原生密钥提供程序），虚拟机磁盘与配置文件在存储侧加密，等效实现剩余信息保护中的「释放前清除」。
>
> **验证方法**：抽查虚拟机「编辑设置 → VM 选项 → 高级 → 配置参数」回显 `isolation.tools.*` 键值、VM Tools 版本清单（vSphere Client 虚拟机列）、快照清单与最长保留时间、加密虚拟机清单与 KMS/原生密钥提供程序状态（集群 → 配置 → 密钥管理服务器）。

<div class="alert alert-warning" role="alert"><div class="h4 alert-heading" role="heading">高风险提示</div>


删除虚拟机仅释放索引、数据块默认可恢复：承载敏感数据的虚拟机下线时既未启用加密（密钥销毁等效清除）又无存储擦除流程时，按剩余信息保护高风险线索记录；长期保留的快照链导致备份体系失真，同样记录。

判定口径详见 [22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)。

</div>


**核查方法**（单台虚拟机，vSphere Client 口径）

「编辑设置 → VM 选项 → 高级 → 配置参数」，核查以下键值（缺省未定义时按官方安全配置指南补齐为 TRUE）：

```text
isolation.tools.copy.disable = TRUE          # 禁用复制
isolation.tools.paste.disable = TRUE         # 禁用粘贴
isolation.tools.dnd.disable = TRUE           # 禁用拖放
isolation.tools.diskShrink.disable = TRUE    # 禁用磁盘收缩
isolation.tools.diskWiper.disable = TRUE     # 禁用磁盘擦除工具
isolation.device.connectable.disable = TRUE  # 禁止连接/断开设备
isolation.device.edit.disable = TRUE         # 禁止修改设备配置
```

**加固操作**

1. 批量场景用 PowerCLI 为虚拟机逐个添加上述高级参数（变更需在虚拟机关机或按参数说明重启生效，纳入变更窗口）；
2. VM Tools：vSphere Client 选中虚拟机 → 操作 → 客户机操作系统 → 升级 VMware Tools（客户机内操作，按业务窗口执行）；
3. 快照治理：清点超过 72 小时的快照并按审批删除（「删除快照」会将数据合并回父盘，勿误选「删除而不快照」）；建立快照最长保留制度；
4. 敏感虚拟机启用加密：配置 KMS 或原生密钥提供程序后，创建使用「加密」存储策略的虚拟机或对存量虚拟机执行加密迁移（磁盘加密期间 I/O 受限，安排窗口）。

- 预期现象：抽查虚拟机配置参数中 `isolation.tools.*` 均为 TRUE；VM Tools 版本与 ESXi 补丁级别匹配；无长期快照；敏感虚拟机存储策略显示「已加密」。

## 06 传输加密（TLS、vMotion 与 FT）

> **对应控制点**：GB/T 22239-2019 8.1.4.7 数据完整性 a)、8.1.4.8 数据保密性 a)；8.1.2.2 通信传输 a)b)（管理面与迁移链路加密）
>
> **加固要点**：管理通道全程加密：vSphere Client/Host Client 默认 HTTPS，禁止以 HTTP 明文承载管理操作；vSphere 6.7 起默认仅启用 TLS 1.2（TLS 1.0/1.1 默认禁用），**ESXi 8.0 基于 OpenSSL 3.0 已无法再降级启用 TLS 1.0/1.1**，vCenter 7.x 可用 TLS 配置工具复核禁用状态，禁用弱套件；主机与 vCenter 间证书建议统一由内部 CA/企业 VMCA 签发并在有效期内；迁移链路加密：vMotion 加密为**逐虚拟机**设置（默认 Opportunistic，两端支持才加密），承载敏感数据的虚拟机应设为 Required；加密虚拟机强制走加密 vMotion 且不可关闭；启用 FT 的虚拟机同步配置 FT 加密。
>
> **验证方法**：浏览器访问管理界面确认证书链与有效期、协议版本（浏览器开发者工具或 `openssl s_client` 抓取协商结果）、TLS 1.0/1.1 连接被拒实测；逐台核查虚拟机「VM 选项 → 高级 → 加密 → 加密 vMotion」取值；vMotion 端口组与迁移流量走向截图；FT 虚拟机的加密取值。

**核查方法**

- 界面：选中虚拟机 → 编辑设置 → VM 选项 → 高级 → 加密，查看「加密 vMotion」（Disabled/Opportunistic/Required，默认 Opportunistic）与「加密容错」；
- CLI/证书：`openssl s_client -connect <vcenter>:443 -tls1_2` 确认握手成功，`-tls1`/`-tls1_1` 应握手失败。

<div class="alert alert-warning" role="alert"><div class="h4 alert-heading" role="heading">高风险提示</div>


管理入口可经 HTTP 明文访问，或 vMotion 流量承载敏感虚拟机且明确设为 Disabled 时，鉴别信息与迁移数据可被链路嗅探，按《高风险判定指引》记录为高风险线索。

判定口径详见 [22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)。

</div>


**加固操作**

1. HTTP 管理复核：确认 80 端口仅做重定向、无以 HTTP 承载管理 API 的旧配置残留；证书经内部 CA 更换（见 08 节）；
2. TLS 收敛：vCenter 7.x 用官方 TLS 配置工具（TLS Reconfigurator，KB 有专项说明）复核 TLS 1.0/1.1 为禁用；ESXi 8.0 确认无降级需求（无法降级属预期）；存量 7.0 主机确认 `UserVars.ESXiVPsDisabledProtocols` 覆盖 TLSv1.0/TLSv1.1；
3. vMotion 加密：对承载敏感数据的虚拟机将「加密 vMotion」改为 **Required**（改为 Required 前确认目标集群全部主机支持，否则迁移会失败）；全集群建议以 Required 为基线；
4. 启用 FT 的虚拟机同步设置「加密容错」为 Required。

- 预期现象：`-tls1_1` 握手被拒；加密 vMotion 取值为 Required 且跨主机迁移成功；抓包不可还原迁移内容。

## 07 配置备份与恢复演练

> **对应控制点**：GB/T 22239-2019 8.1.4.9 数据备份恢复 a)~c)（本地备份与恢复、异地备份、热冗余）；备份对象为**主机配置 + 虚拟机镜像**，不得以「计算资源层无需备份」判不适用
>
> **加固要点**：ESXi 主机配置（网络、存储、权限、高级设置）须定期备份并在每次重大变更前后各做一次：Host Client「主机 → 管理 → 系统 → 配置文件」保存/恢复，或 CLI `vim-cmd hostsvc/firmware/backup_config`（官方 KB 口径；旧版 vCLI 的 `vicfg-cfgbackup` 属遗留工具链，新版本以 KB 与 PowerCLI 为准）；备份包（configBundle 含 `/etc/shadow` 等鉴别信息）加密存放、权限 600 且与主机分离；vCenter 用 VAMI 文件级备份（5480 管理界面 → 备份 → 备份计划）并异地留存；集群启用 vSphere HA 与 DRS 并配置准入控制策略，**仅加入集群不提供高可用**；每半年至少一次恢复演练（配置还原到测试主机 + 虚拟机从备份恢复）并留痕。
>
> **验证方法**：配置备份包清单（主机名、日期、哈希）、备份任务计划与执行日志、VAMI 备份配置与最近备份产物、HA 启用状态与准入控制策略截图、切换/恢复演练记录（时间、耗时、结果）。

<div class="alert alert-warning" role="alert"><div class="h4 alert-heading" role="heading">高风险提示</div>


主机无任何配置备份、vCenter 无备份，或仅有备份产物但从未做过恢复演练导致实际不可用，主机损毁或被勒索加密后需重建全部配置、恢复时间不可控，按《高风险判定指引》可直接判高风险。

判定口径详见 [22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)。

</div>


**核查方法**

- 界面：Host Client「主机 → 管理 → 系统 → 配置文件」查看备份/恢复入口；vSphere Client 集群 → 配置 → vSphere 可用性，确认 HA 已启用；
- CLI：

```bash
vim-cmd hostsvc/firmware/backup_config     # 输出下载 URL，浏览器/wget 取回 configBundle-<主机名>.tgz
```

**加固操作**

1. 变更前后即时备份：执行上述命令取回备份包，按日期归档至备份服务器（scp/rsync over ssh），`chmod 600` 限制访问；
2. 批量场景用 PowerCLI：`Get-VMHost <主机> | Get-VMHostFirmware -BackupConfiguration -DestinationPath <目录>`；
3. vCenter 备份：VAMI（`https://<vcenter>:5480`）→ 备份 → 备份计划，目标建议 FTPS/HTTPS 且异地存放，并定期验证可恢复；
4. 恢复演练：将备份包恢复到同型号测试主机（置维护模式后 `vim-cmd hostsvc/firmware/restore_config 0 /tmp/configBundle.tgz`，恢复后主机自动重启），验证网络/存储/权限配置一致；虚拟机恢复演练结合备份软件执行并记录 RTO/RPO；
5. 集群冗余：确认 HA 已启用、准入控制策略满足 N+1，DRS 自动化级别按业务评估；每半年做一次主机故障切换演练。

- 预期现象：备份包可按台账追溯到最近一次变更；测试主机恢复后配置与源主机一致；HA 演练中虚拟机按预期在另一主机重启。

## 08 剩余信息保护与失效对象处置

> **对应控制点**：GB/T 22239-2019 8.1.4.10 剩余信息保护 a)b)；8.1.4.4 入侵防范（默认证书与失效对象治理）
>
> **加固要点**：鉴别信息与敏感数据所在存储空间释放前清除：本地账户删除后其口令散列即随 `/etc/shadow` 移除（删除后抽验）；**删除虚拟机/磁盘默认不擦除数据块**，敏感虚拟机下线应优先采用「加密虚拟机 + 销毁密钥」等效清除，或执行存储层安全擦除并配合 UNMAP 回收；失效对象定期清理：失效快照、孤儿 VMDK（无虚拟机引用的磁盘文件）、下线模板与闲置虚拟机按台账处置，防止敏感数据长期残留在共享数据存储；默认证书更换：安装时自签的 VMCA 默认证书按内部 CA 统一更换（vSphere Client「菜单 → 证书管理」为主口径，VCSA 的 certificate-manager 为 CLI 口径），避免自签证书告警被长期「信任」习惯化。
>
> **验证方法**：账户删除前后 `/etc/shadow` 对比记录、虚拟机/磁盘删除处置单与擦除方式说明、数据存储浏览器孤儿文件清查结果、证书管理页证书链与有效期截图、失效对象清理台账。

**核查方法**

- 账户散列：`esxcli system account list` 与删除前后比对（审计留痕）；
- 孤儿对象：数据存储浏览器按「最后修改时间 + 无所属虚拟机」筛查 VMDK，或用 PowerCLI 遍历比对虚拟机磁盘引用清单；
- 证书：vSphere Client「菜单 → 证书管理」查看 vCenter 与各主机证书签发者、有效期。

**加固操作**

1. 敏感虚拟机下线：删除前确认已加密（销毁对应密钥即等效清除）或记录存储擦除方案；普通下线也须对回收空间执行 UNMAP 并在下线单中留痕；
2. 失效对象清理：按台账删除失效快照、孤儿 VMDK 与下线模板，清理动作入变更单；清理后重新扫描数据存储确认无残留引用；
3. 证书更换：在「证书管理」中为各主机导入内部 CA 签发证书（或经企业 VMCA 重签），vCenter 机器证书同步更换；更换属高风险变更，先做 vCenter 配置快照/备份并保留旧证书以便回退；
4. 本地账户清理联动 01 节：删除账户后在审计记录中登记删除时间与操作人。

- 预期现象：`/etc/shadow` 无已删账户条目；数据存储无孤儿 VMDK 与过期快照；主机与 vCenter 证书均为内部 CA 签发且在有效期。

## 09 版本差异速查（6.7 / 7.0 / 8.0）

| 事项 | 6.7 | 7.0 | 8.0 |
| --- | --- | --- | --- |
| 口令复杂度默认 | `retry=3 min=disabled,disabled,disabled,7,7`（四类中三类，≥7 位） | 同左（现场以回显为准） | 同左为官方文档示例值，个别小版本下限有调整，以 `esxcli system settings advanced list` 回显为准 |
| 口令历史 | `Security.PasswordHistory` 默认 **0** | 默认 0（须显式设置） | **8.0U1 起默认 5** |
| 口令有效期 | `Security.PasswordMaxDays` 默认 99999 | 同左 | 同左 |
| 失败锁定 | 5 次 / 900 秒默认；DCUI 与 ESXi Shell 不支持锁定 | 同左 | 同左 |
| TLS | 6.7 起默认仅 TLS 1.2 | 默认 TLS 1.2，可用 TLS 配置工具复核 | OpenSSL 3.0，**无法降级启用 TLS 1.0/1.1** |
| 锁定模式 | 普通/严格两种 | 同左 | 同左 |
| vMotion 加密 | 6.5+ 支持（默认 Opportunistic） | 同左 | 同左 |
| PSC 部署 | 支持外部 PSC | 支持外部 PSC（存量可合并） | **仅支持内嵌式**，存量外部 PSC 须规划合并 |
| 配置备份 | `vim-cmd hostsvc/firmware/backup_config`；`vicfg-cfgbackup` 为旧 vCLI 工具 | 同左（官方 KB 以 vim-cmd/PowerCLI 为准） | 同左 |
| esxcli 命令体系 | `esxcfg-*` 已由 `esxcli network` 等取代 | 建议 `esxcli` | 仅保留 `esxcli`/`vim-cmd` 口径 |

## 参考依据

- GB/T 22239-2019《信息安全技术 网络安全等级保护基本要求》（8.1.4 安全计算环境各控制点（虚拟化平台作为独立测评对象）；涉通信传输时另含 8.1.2）：[http://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=BAFB47E8874764186BDB7865E8344DAF](http://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=BAFB47E8874764186BDB7865E8344DAF)
- GB/T 28448-2019《信息安全技术 网络安全等级保护测评要求》（测评对象边界认定、单元测评实施与结果判定：符合/部分符合/不符合/不适用）：[http://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=7E736CDF4502B6FF1258DD250AA3EC8C](http://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=7E736CDF4502B6FF1258DD250AA3EC8C)
- GB/T 22240-2020《信息安全技术 网络安全等级保护定级指南》、GB/T 25070-2019《安全设计技术要求》、GB/T 28449-2018《测评过程指南》，可在全国标准信息公共服务平台检索：[http://openstd.samr.gov.cn/bzgk/gb/](http://openstd.samr.gov.cn/bzgk/gb/)
- Broadcom 官方 vSphere 安全文档（VMware 文档迁移后现址；vSphere 7.0/8.0 的 vSphere Security 文档集，含锁定模式、ESXi 高级系统设置、口令与锁定策略）：[https://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/8-0/vsphere-security.html](https://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/8-0/vsphere-security.html)
- 《vSphere Security Configuration Guide》（加固项编号与推荐值来源）：Broadcom TechDocs 说明页 [https://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/7-0/vsphere-security/understanding-vsphere-hardening-and-compliance/understanding-vsphere-security-configuration-guide.html](https://techdocs.broadcom.com/us/en/vmware-cis/vsphere/vsphere/7-0/vsphere-security/understanding-vsphere-hardening-and-compliance/understanding-vsphere-security-configuration-guide.html) ；最新版发布于官方 GitHub（vcf-security-and-compliance-guidelines）：[https://github.com/vmware/vcf-security-and-compliance-guidelines/tree/main/security-configuration-hardening-guide](https://github.com/vmware/vcf-security-and-compliance-guidelines/tree/main/security-configuration-hardening-guide)
- VMware/Broadcom 安全公告（VMSA）入口：[https://www.broadcom.com/support/vmware-security-advisories](https://www.broadcom.com/support/vmware-security-advisories) ；支持门户安全公告区：[https://support.broadcom.com/web/ecx/security-advisory](https://support.broadcom.com/web/ecx/security-advisory)
- Broadcom KB：ESXi 日志文件位置与内容（原 KB 2001031）[https://knowledge.broadcom.com/external/article/306962/location-of-esxi-log-files.html](https://knowledge.broadcom.com/external/article/306962/location-of-esxi-log-files.html) ；syslog 配置 [https://knowledge.broadcom.com/external/article/318939/configuring-syslog-on-esxi.html](https://knowledge.broadcom.com/external/article/318939/configuring-syslog-on-esxi.html) ；主机配置备份与恢复 [https://knowledge.broadcom.com/external/article/313510/how-to-back-up-and-restore-the-esxi-host.html](https://knowledge.broadcom.com/external/article/313510/how-to-back-up-and-restore-the-esxi-host.html) ；esxcli 补丁更新 [https://knowledge.broadcom.com/external/article/432723/updating-an-esxi-host-through-esxcli-sof.html](https://knowledge.broadcom.com/external/article/432723/updating-an-esxi-host-through-esxcli-sof.html) ；esxcli 命令参考 [https://developer.broadcom.com/xapis/esxcli-command-reference/latest/namespace/esxcli_system.html](https://developer.broadcom.com/xapis/esxcli-command-reference/latest/namespace/esxcli_system.html)
- CIS Benchmarks（VMware ESXi 7.0/8.0 Benchmark 入口）：[https://www.cisecurity.org/cis-benchmarks](https://www.cisecurity.org/cis-benchmarks) 、[https://www.cisecurity.org/benchmark/vmware](https://www.cisecurity.org/benchmark/vmware)
- 《网络安全等级保护测评高风险判定指引》（中关村信息安全测评联盟团体标准）——高风险情形判定口径，站内对照表：[22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)
- 命令核验说明：本文命令已于 2026-09 对照 Broadcom TechDocs（vSphere 7.0/8.0 vSphere Security 文档：锁定模式、ESXi 口令与锁定、高级系统设置、加密 vMotion）、Broadcom KB（306962/318939/313510/432723/424082）、developer.broadcom.com esxcli 命令参考与 vSphere 8.0 默认 TLS 说明核验。四处须留意：① 高级设置键名的 esxcli 路径前缀分三类——口令与锁定为 `/Security/…`、会话超时为 `/UserVars/…`、syslog 为 `/Syslog/Global/…`，跨前缀套用会查不到选项；② `esxcli system settings advanced set` 为变更类命令（`-i` 整型、`-s` 字符串），逐台执行前先记录原值，回滚改回原值或用 `--default`；③ 7.0/8.0 差异集中在 `Security.PasswordHistory`（8.0U1 起默认 5，此前 0）与 TLS（8.0 无法降级启用 TLS 1.0/1.1），锁定模式、失败锁定默认值与 syslog 体系两版本一致；④ 本文坚持**界面/CLI 双口径**：锁定模式、防火墙来源、虚拟机加密等变更优先给 vSphere Client/Host Client 界面路径（部分操作 Host Client 不提供，以 vSphere Client 为准），esxcli 变更命令仅作批量备选且须在维护窗口执行；syslog 外送变更后须 `esxcli system syslog reload` 方生效。VMware 官方文档自 2024 年起由 docs.vmware.com 迁移至 techdocs.broadcom.com，旧链接跳转后以新址为准。

## 关联文章

- 配套测评：[03、VMware ESXi测评](../../../gradeprotection/服务器/03vmware-esxi测评/)
- 本板块相关篇：[04、Linux主机加固操作手册](../04linux主机加固操作手册/)、[05、Windows操作系统安全加固](../05windows操作系统安全加固/)、[07、CentOS操作系统安全加固](../07centos操作系统安全加固/)、[11、Linux操作系统加固手册](../11linux操作系统加固手册/)
- 板块目录：[服务器](/wikis/docs/reinforce/%E6%9C%8D%E5%8A%A1%E5%99%A8/)
- 通用加固方案：[17、加固方案总纲](../../其他系统或设备/17网络设备安全设备服务器数据库和应用系统的加固方案/)
- 取证记录模板：[16、安全评估加固记录表3.0](../../其他系统或设备/16安全评估加固记录表3.0/)
- 高风险判定口径：[22、高风险判定指引与加固对照表](../../其他系统或设备/22高风险判定指引与加固对照表/)
