适用于 Linux 虚拟机的 Azure 磁盘加密常见问题解答

本文提供有关适用于 Linux 虚拟机 (VM) 的 Azure 磁盘加密的常见问题解答 (FAQ)。 有关此服务的详细信息,请参阅 Azure 磁盘加密概述

什么是适用于 Linux VM 的 Azure 磁盘加密?

适用于 Linux VM 的 Azure 磁盘加密使用 Linux 的 dm-crypt 功能为 OS 磁盘* 和数据磁盘提供全磁盘加密。 此外,它还在使用 EncryptFormatAll 功能时提供临时磁盘加密。 加密内容从 VM 流向存储后端。 因此,使用客户托管密钥提供端对端加密。

请参阅支持的 VM 和操作系统

Azure 磁盘加密提供哪些用户体验?

Azure 磁盘加密正式版支持 Azure 资源管理器模板、Azure PowerShell 和 Azure CLI。 不同的用户体验提供了灵活性。 可以通过三个不同的选项为 VM 启用磁盘加密。 有关 Azure 磁盘加密中提供的用户体验详细信息和分步指南,请参阅适用于 Linux 的 Azure 磁盘加密方案

Azure 磁盘加密如何收费?

使用 Azure 磁盘加密来加密 VM 磁盘是免费的,但使用与 Azure Key Vault 相关联的内容则会产生费用。 有关 Azure Key Vault 成本的详细信息,请参阅 Key Vault 定价页面。

如何开始使用 Azure 磁盘加密?

若要开始,请参阅 Azure 磁盘加密概述

哪些 VM 大小和操作系统支持 Azure 磁盘加密?

Azure 磁盘加密概述一文列出了支持 Azure 磁盘加密的 VM 大小VM 操作系统

是否可以使用 Azure 磁盘加密来加密引导卷和数据卷?

是的,可以同时加密引导卷和数据卷,也可以在不先加密 OS 卷的情况下加密数据卷。

加密 OS 卷之后,不支持在 OS 卷上禁用加密。 如果 Linux VM 位于规模集中,则只能加密数据卷。

我可以使用 Azure 磁盘加密来加密未装入的卷吗?

不可以,Azure 磁盘加密只加密已装入的卷。

什么是存储服务器端加密?

存储服务器端加密会在 Azure 存储中加密 Azure 托管磁盘。 默认情况下,托管磁盘使用平台托管密钥通过服务器端加密进行加密(从 2017 年 6 月 10 日开始)。 指定一个由客户托管的密钥,即可实现对使用自己的密钥加密托管磁盘的管理。 有关详细信息,请参阅:Azure 托管磁盘的服务器端加密

Azure 磁盘加密与使用客户托管的密钥的存储服务器端加密有何不同,分别应于何时使用这两种解决方案?

Azure 磁盘加密使用客户托管的密钥提供对 OS 磁盘、数据磁盘和临时磁盘的端对端加密。

  • 如果你的要求包括对上述各项加密和端到端加密,请使用 Azure 磁盘加密。
  • 如果你的要求是使用客户托管的密钥仅对静态数据加密,请采用使用客户托管密钥的服务器端加密。 不能既使用 Azure 磁盘加密又使用采用了客户托管密钥的存储服务器端加密来加密磁盘。
  • 如果你的 Linux 发行版未列在支持 Azure 磁盘加密的操作系统下,或者使用的是在限制中调出的方案,请考虑使用客户托管密钥的服务器端加密
  • 如果组织的策略允许你使用 Azure 托管密钥加密静态内容,则无需执行任何操作,因为系统默认加密这些内容。 对于托管磁盘而言,默认在服务器端加密中使用平台托管密钥来加密存储内的内容。 该密钥是由 Azure 存储服务托管的。

我如何轮换机密或加密密钥?

若要轮换机密,只需调用你一开始在启用磁盘加密时使用的命令并指定另一 Key Vault 即可。 若要轮换密钥加密密钥,只需调用你一开始在启用磁盘加密时使用的命令并指定新的密钥加密方法即可。

警告

  • 如果之前通过指定 Microsoft Entra 凭据对 Microsoft Entra 应用使用了 Azure 磁盘加密来加密此 VM,则必须继续使用此选项来加密 VM。 无法在此加密的 VM 上使用 Azure 磁盘加密,因为不支持此方案,也就是说尚不支持为此加密 VM 从 Microsoft Entra 应用程序切换出来。

如何在一开始并没有使用密钥加密密钥的情况下添加或删除该密钥?

若要添加密钥加密密钥,请再次调用 enable 命令,传递密钥加密密钥参数。 若要删除密钥加密密钥,请在没有密钥加密密钥参数的情况下再次调用 enable 命令。

Azure 磁盘加密是否支持自带秘钥 (BYOK)?

是的,可以提供自己的密钥加密密钥。 这些密钥在 Azure Key Vault(Azure 磁盘加密的密钥存储)中受保护。 有关密钥加密密钥支持方案的详细信息,请参阅创建和配置用于 Azure 磁盘加密的 Key Vault

是否可以使用 Azure 创建的密钥加密密钥?

是的,可以使用 Azure Key Vault 来生成密钥加密密钥供 Azure 磁盘加密使用。 这些密钥在 Azure Key Vault(Azure 磁盘加密的密钥存储)中受保护。 有关密钥加密密钥的详细信息,请参阅创建和配置用于 Azure 磁盘加密的 Key Vault

是否可以使用本地密钥管理服务来保护加密密钥?

无法使用本地密钥管理服务来配合 Azure 磁盘加密保护加密密钥。 只能使用 Azure Key Vault 服务来保护加密密钥。 有关密钥加密密钥支持方案的详细信息,请参阅创建和配置用于 Azure 磁盘加密的 Key Vault

配置 Azure 磁盘加密的先决条件是什么?

Azure 磁盘加密具有先决条件。 若要创建新的 Key Vault 或设置现有 Key Vault 进行磁盘加密访问,以启用加密并保护机密和密钥,请参阅创建和配置用于 Azure 磁盘加密的 Key Vault一文。 有关密钥加密密钥支持方案的详细信息,请参阅创建和配置用于 Azure 磁盘加密的 Key Vault

使用 Microsoft Entra 应用(早期版本)配置 Azure 磁盘加密的先决条件是什么?

Azure 磁盘加密具有先决条件。 若要创建 Microsoft Entra 应用程序、新建密钥保管库或设置现有的密钥保管库,以实现能启用加密并保护机密和密钥的磁盘加密访问,请参阅使用 Microsoft Entra ID 的 Azure 磁盘加密内容。 有关密钥加密密钥支持方案的详细信息,请参阅使用 Microsoft Entra ID 为 Azure 磁盘加密创建和部署密钥保管库

是否仍然支持使用 Microsoft Entra 应用(早期版本)进行 Azure 磁盘加密?

是的。 仍然支持使用 Microsoft Entra 应用进行磁盘加密。 不过,当加密新的 VM 时,建议使用新方法而不是使用 Microsoft Entra 应用进行加密。

是否可以在不使用 Microsoft Entra 应用的情况下将通过 Microsoft Entra 应用加密的 VM 迁移到此加密?

当前,对于通过 Microsoft Entra 应用加密的计算机,没有直接迁移路径可用来在不使用 Microsoft Entra 应用的情况下迁移到此加密。 此外,也没有直接路径用来将未使用 Microsoft Entra 应用的加密迁移到使用 AD 应用的加密。

Azure 磁盘加密支持哪些 Azure PowerShell 版本?

使用最新版的 Azure PowerShell SDK 来配置 Azure 磁盘加密。 下载最新版本的 Azure PowerShell。 Azure SDK 版本 1.1.0 不支持 Azure 磁盘加密。

注意

Linux Azure 磁盘加密预览扩展“Microsoft.OSTCExtension.AzureDiskEncryptionForLinux”已弃用。 发布的该扩展适用于 Azure 磁盘加密预览版。 不应将预览版扩展用于测试或生产性部署。

使用 Azure 资源管理器 (ARM) 之类的部署方案时,需要部署适用于 Linux VM 的 Azure 磁盘加密扩展,以便在 Linux IaaS VM 上启用加密,因此必须使用 Azure 磁盘加密生产版支持的扩展“Microsoft.Azure.Security.AzureDiskEncryptionForLinux”。

是否可对自定义 Linux 映像应用 Azure 磁盘加密?

不能对自定义 Linux 映像应用 Azure 磁盘加密。 仅支持上述受支持分发版的 Linux 库映像。 目前不支持自定义 Linux 映像。

是否可以向使用 yum 更新的 Linux Red Hat VM 应用更新?

是的,可以在 Red Hat Linux VM 上执行 yum 更新。 有关详细信息,请参阅隔离网络上的 Azure 磁盘加密

对于 Linux,应使用哪种 Azure 磁盘加密工作流?

为在 Linux 上获得最佳结果,建议使用以下工作流:

  • 从与所需的 OS 发行版和版本相对应的未修改存储库映像启动
  • 备份要加密的任何已装载的驱动器。 使用此备份,在失败时能够进行恢复,例如当 VM 在加密完成前重启时。
  • 加密(可能需要花费几小时甚至几天,具体取决于 VM 特征和所附加的任何数据磁盘的大小)
  • 根据需要自定义软件,并将其添加到映像。

如果此工作流不可用,可在平台存储帐户层使用存储服务加密 (SSE),作为通过 dm-crypt 实现完整磁盘加密的一个替代方法。

磁盘“Bek 卷”或“/mnt/azure_bek_disk”是什么?

“Bek 卷”是一个本地数据卷,可以安全地存储用于已加密 Azure VM 的加密密钥。

注意

请勿删除或编辑此磁盘中的任何内容。 请勿卸载磁盘,因为 IaaS VM 上的任何加密操作都需要有加密密钥才能执行。

Azure 磁盘加密使用何种加密方法?

Azure 磁盘加密可将 aes-xts-plain64 的 decrypt 默认方法和 256 位卷主密钥配合使用。

如果我使用 EncryptFormatAll 并指定了所有卷类型,它是否会擦除我们已加密的数据驱动器上的数据?

否,不会擦除已使用 Azure 磁盘加密进行了加密的数据驱动器上的数据。 与 EncryptFormatAll 不重新加密 OS 驱动器类似,它也不会重新加密已加密的数据驱动器。 有关详细信息,请参阅 EncryptFormatAll 条件

是否支持 XFS 文件系统?

支持加密 XFS OS 磁盘。

仅当使用 EncryptFormatAll 参数时,才支持加密 XFS 数据磁盘。 该操作将重格式化卷,并清除卷中所有数据。 有关详细信息,请参阅 EncryptFormatAll 条件

是否支持调整操作系统分区大小?

目前不支持调整 ADE 加密的 OS 磁盘大小。

我可以备份和还原已加密的 VM 吗?

Azure 备份提供一个机制,可以用来备份和还原同一订阅与区域中的已加密 VM。 相关说明,请参阅通过 Azure 备份来备份和还原加密的虚拟机。 目前不支持将已加密的 VM 还原到另一区域。

可以在何处提问或提供反馈?

你可以在 Azure Q&A 的 Azure 磁盘加密问题页面提问或提供反馈。

后续步骤

本文档详细描述了有关 Azure 磁盘加密的最常见问题。 有关此服务的详细信息,请参阅以下文章: