利用 vSphere 虚拟机加密功能,您可以创建加密虚拟机并加密现有虚拟机。由于所有包含敏感信息的虚拟机文件都会加密,因此虚拟机受保护。只有具备加密特权的管理员才能执行加密和解密任务。
使用哪些密钥
有两种类型的密钥用于加密。
- ESXi主机会生成内部密钥并使用这些密钥加密虚拟机和磁盘。这些密钥将用作数据加密密钥 (DEK),并且是 XTS-AES-256 密钥。
- vCenter Server会从 KMS 请求密钥。这些密钥将用作密钥加密密钥 (KEK),是 AES-256 密钥。vCenter Server仅存储每个 KEK 的 ID,但不存储密钥本身。
- ESXi使用 KEK 加密内部密钥,并将已加密的内部密钥存储在磁盘上。ESXi不会将 KEK 存储在磁盘上。如果主机重新引导,vCenter Server 会从 KMS 请求具有相应 ID 的 KEK,并将其提供给 ESXi。然后,ESXi 可以根据需要解密内部密钥。
哪些内容加密
vSphere 虚拟机加密功能支持加密虚拟机文件、虚拟磁盘文件以及核心转储文件。
- 虚拟机文件
- 大多数虚拟机文件(特别是未存储在 VMDK 文件中的客户机数据)都会加密。这组文件包括但不限于 NVRAM、VSWP 和 VMSN 文件。 vCenter Server从 KMS 检索的密钥会解锁 VMX 文件中包含内部密钥和其他密钥的加密包。
- 虚拟磁盘文件
- 加密虚拟磁盘 (VMDK) 文件中的数据不会以明文形式写入存储或物理磁盘,也不会以明文形式通过网络传输。VMDK 描述符文件主要是明文,但将 KEK 和内部密钥 (DEK) 的密钥 ID 包含在加密包中。
- 核心转储
-
启用了加密模式的
ESXi 主机上的核心转储始终都会加密。请参见
vSphere 虚拟机加密和核心转储。
注: vCenter Server系统上的核心转储未加密。可保护对 vCenter Server 系统的访问。
哪些内容未加密
哪些用户可以执行加密操作
只有分配了加密操作特权的用户可以执行加密操作。特权组非常精细。请参见加密操作特权。默认管理员系统角色包括加密操作特权。新的无加密管理员角色支持加密操作特权除外的所有管理员特权。
您可以创建其他自定义角色,例如,允许一组用户加密虚拟机、但是禁止其解密虚拟机。
如何执行加密操作
vSphere Client 和 vSphere Web Client 支持许多加密操作。对于其他任务,您可以使用 vSphere API。
接口 | 操作 | 信息 |
---|---|---|
vSphere Client 或 vSphere Web Client | 创建加密虚拟机 加密和解密虚拟机 |
本书。 |
vSphere Web Services SDK | 创建加密虚拟机 加密和解密虚拟机 执行虚拟机的深层重新加密(使用不同的 DEK)。 执行虚拟机的浅层重新加密(使用不同的 KEK)。 |
《vSphere Web Services SDK 编程指南》 《VMware vSphere API 参考》 |
crypto-util | 解密已加密核心转储、检查文件是否已加密并直接在 ESXi 主机上执行其他管理任务。 | 命令行帮助。 |