如果您的环境使用 vSphere 虚拟机加密,且ESXi主机发生错误,则将对生成的核心转储进行加密,以便保护客户数据。还会对 vm-support 软件包中包含的核心转储进行加密。

注: 核心转储可以包含敏感信息。处理核心转储时,请遵循您组织的数据安全和隐私策略。

ESXi主机上的核心转储

ESXi主机、用户环境或虚拟机出现故障时,将生成核心转储,并且主机会重新引导。如果 ESXi 主机已启用加密模式,则会使用 ESXi 密钥缓存中的密钥对核心转储进行加密。(根据使用的密钥提供程序,密钥来自外部密钥服务器、密钥提供程序服务或 vCenter Server)。有关背景信息,请参见vSphere 虚拟机加密如何保护您的环境

ESXi主机加密“安全”并生成核心转储时,会创建一个事件。该事件指明执行了核心转储并提供以下信息:环境名称、执行时间、用于加密核心转储的密钥的 keyID 以及核心转储文件名。可以在 vCenter Server任务和事件下的“事件”查看器中查看该事件。

下表按 vSphere 版本显示了用于每种核心转储类型的加密密钥。

表 1. 核心转储加密密钥
核心转储类型 加密密钥 (ESXi6.5) 加密密钥(ESXi6.7 及更高版本)
ESXi 内核 主机密钥 主机密钥
用户环境 (hostd) 主机密钥 主机密钥
加密虚拟机 (VM) 主机密钥 虚拟机密钥
ESXi主机重新引导后可执行的操作取决于多个因素。
  • 在大多数情况下,密钥提供程序会在重新引导后尝试将密钥推送到 ESXi 主机。如果此操作成功,您可以生成 vm-support 软件包,并对核心转储进行解密或重新加密。请参见解密或重新加密已加密核心转储
  • 如果 vCenter Server 无法连接到 ESXi 主机,您也许可以检索密钥。请参见解决缺失加密密钥问题
  • 如果主机使用自定义密钥,且该密钥不同于vCenter Server推送到主机的密钥,您将无法处理核心转储。请避免使用自定义密钥。

核心转储和 vm-support 软件包

当您遇到严重错误而联系 VMware 技术支持时,您的支持代表通常会要求您生成 vm-support 软件包。该软件包包含日志文件和其他信息,包括核心转储。如果您的支持代表无法通过查看日志文件和其他信息解决问题,他们可能会要求您解密核心转储并提供相关信息。为保护诸如密钥等敏感信息,请遵循您所在组织的安全和隐私权政策。请参见为使用加密的 ESXi 主机收集 vm-support 软件包

vCenter Server系统上的核心转储

vCenter Server系统上的核心转储未加密。vCenter Server已包含可能的敏感信息。至少确保vCenter Server受到保护。请参见确保 vCenter Server 系统安全。您还可以考虑关闭vCenter Server系统的核心转储。日志文件中的其他信息可以帮助确定问题所在。

为使用加密的 ESXi 主机收集 vm-support 软件包

如果为 ESXi 主机启用了主机加密模式,则会加密 vm-support 软件包中的所有核心转储。您可以从 vSphere Client 收集该软件包,如果随后希望解密核心转储,可以指定一个密码。

vm-support 软件包中包含日志文件、核心转储文件等。

前提条件

通知您的支持代表已针对 ESXi 主机启用主机加密模式。支持代表可能会要求您解密核心转储并提取相关信息。

注: 核心转储可以包含敏感信息。请遵循您组织的安全和隐私权政策,以保护主机密钥等敏感信息。

过程

  1. 使用 vSphere Client 登录到 vCenter Server 系统。
  2. 单击主机和集群,然后右键单击 ESXi 主机。
  3. 选择导出系统日志
  4. 在对话框中,选择已加密核心转储的密码,然后指定并确认密码。
  5. 其他选项保留默认值,或者根据 VMware 技术支持要求进行更改,然后单击导出日志
    如果您没有将浏览器配置为在下载之前询问文件的保存位置,则下载开始。如果已将浏览器配置为询问文件的保存位置,请指定文件的位置。
  6. 如果支持代表要求您解密 vm-support 软件包中的核心转储,请登录任一 ESXi 主机,然后按照以下步骤操作。
    1. 登录 ESXi 主机并连接到 vm-support 软件包所在的目录。
      文件名采用 esx.date_and_time.tgz 模式。
    2. 确保该目录具有足够的空间来存储该软件包、未压缩的软件包和重新压缩的软件包,或者移动该软件包。
    3. 将该软件包解压缩到本地目录中。
      vm-support -x *.tgz .
      生成的文件层次结构可能包含 ESXi 主机的核心转储文件(通常位于 /var/core 中),并且可能包含虚拟机的多个核心转储文件。
    4. 单独解密每个加密核心转储文件。
      crypto-util envelope extract --offset 4096 --keyfile vm-support-incident-key-file 
      --password encryptedZdump decryptedZdump
      vm-support-incident-key-file 是位于该目录顶层的事件密钥文件。

      encryptedZdump 是加密核心转储文件的名称。

      decryptedZdump 是该命令生成的文件名。请确保该名称类似于 encryptedZdump 名称。

    5. 提供在创建 vm-support 软件包时指定的密码。
    6. 移除加密核心转储,然后重新压缩该软件包。
      vm-support --reconstruct 
  7. 移除任何包含保密信息的文件。

解密或重新加密已加密核心转储

您可以使用 crypto-utilCLI 解密或重新加密 ESXi 主机上的已加密核心转储。

您可以自行解密并检查 vm-support 软件包中的核心转储。核心转储可能包含敏感信息。请遵循您所在组织的安全和隐私权政策以保护密钥等敏感信息。

有关重新加密核心转储的详细信息以及 crypto-util的其他功能,请参见命令行帮助。
注: crypto-util面向高级用户。

前提条件

用于对核心转储进行加密的密钥在生成核心转储的 ESXi主机上必须可用。

过程

  1. 直接登录到发生核心转储的 ESXi主机。
    如果 ESXi 主机处于锁定模式或 SSH 访问已停用,您可能需要先激活访问。
  2. 确定核心转储是否已加密。
    选项 描述
    监控程序核心转储
    crypto-util envelope describe vmmcores.ve
    zdump 文件
    crypto-util envelope describe --offset 4096 zdumpFile 
  3. 根据相应的类型解密核心转储。
    选项 描述
    监控程序核心转储
    crypto-util envelope extract vmmcores.ve vmmcores
    zdump 文件
    crypto-util envelope extract --offset 4096 zdumpEncrypted zdumpUnencrypted