適用於 Linux VM 的 Azure 磁碟加密
警告
本文會參考 CentOS,這是生命週期結束 (EOL) 狀態的 Linux 發行版本。 請據以考慮您的使用和規劃。 如需詳細資訊,請參閱 CentOS 生命週期結束指導。
適用於:✔️ Linux VM ✔️ 彈性擴展集
Azure 磁碟加密可協助您保護資料安全,以符合您組織的安全性和合規性承諾。 其會使用 Linux 的 DM-Crypt 功能,為 Azure 虛擬機器 (VM) 的作業系統和資料磁碟提供磁碟區加密,並與 Azure Key Vault 整合,協助您控制及管理磁碟加密金鑰和祕密。
Azure 磁碟加密具有區域復原性,與虛擬機器相同。 如需詳細資料,請參閱支援可用性區域的 Azure 服務。
若使用適用於雲端的 Microsoft Defender,則會在 VM 未加密時收到警示。 這些警示會顯示為高嚴重性,建議的處置方式是加密這些 VM。
警告
- 如果您先前曾使用 Azure 磁碟加密搭配 Microsoft Entra ID 來加密 VM,則必須繼續使用此選項來加密您的 VM。 如需詳細資料,請參閱將 Azure 磁碟加密與 Microsoft Entra ID 搭配使用 (舊版)。
- 某些建議可能會增加資料、網路或計算資源的使用量,導致額外的授權或訂用帳戶成本。 您必須擁有有效的作用中 Azure 訂用帳戶,才能在 Azure 支援的區域中建立資源。
透過使用 Azure CLI 快速入門來建立並加密 Linux VM,或使用 Azure PowerShell 快速入門來建立並加密 Linux VM,您可以在幾分鐘內了解適用於 Linux 的 Azure 磁碟加密的基本概念。
支援的 VM 和作業系統
支援的 VM
Linux VM 有各種大小。 第 1 代和第 2 代 VM 支援 Azure 磁碟加密。 Azure 磁碟加密也適用於含有進階儲存體的 VM。
基本、A 系列 VM,或在不符合下列最低記憶體需求的虛擬機器上,也無法使用 Azure 磁碟加密:
記憶體需求
虛擬機器 | 最低記憶體需求 |
---|---|
僅限加密資料磁碟的 Linux VM | 2 GB |
同時加密資料和作業系統磁碟區,以及根 (/) 檔案系統使用量為 4 GB 或以下的 Linux VM | 8 GB |
同時加密資料和作業系統磁碟區,以及根 (/) 檔案系統使用量為 4 GB 以上的 Linux VM | 根檔案系統使用量 * 2。 例如,16 GB 的根檔案系統使用量至少需要 32 GB 的 RAM |
在 Linux 虛擬機器上完成 OS 磁碟加密流程後,VM 就可以設定以較少的記憶體執行。
如需其他例外狀況,請參閱 Azure 磁碟加密:限制。
受支援的作業系統
Azure 加密 Linux 發行版本的子集支援 Azure 磁碟加密,其本身是所有 Linux 伺服器可能發行版本的子集。
未經過 Azure 背書的 Linux 伺服器發行版本不支援 Azure 磁碟加密;在經過背書的發行版本中,只有以下發行版本支援 Azure 磁碟加密:
發行者 | 供應項目 | SKU | URN | 支援加密的磁碟區類型 |
---|---|---|---|---|
Canonical | Ubuntu | 24.04-LTS | Canonical:ubuntu-24_04-lts-daily:server-gen1:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu | 24.04-LTS Gen 2 | Canonical:ubuntu-24_04-lts:server:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu | 22.04-LTS | Canonical:0001-com-ubuntu-server-jammy:22_04-lts:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu | 22.04-LTS Gen2 | Canonical:0001-com-ubuntu-server-jammy:22_04-lts-gen2:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu | 20.04-LTS | Canonical:0001-com-ubuntu-server-focal:20_04-lts:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu | 20.04-DAILY-LTS | Canonical:0001-com-ubuntu-server-focal-daily:20_04-daily-lts:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu | 20.04-LTS Gen2 | Canonical:0001-com-ubuntu-server-focal:20_04-lts-gen2:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu | 20.04-DAILY-LTS Gen2 | Canonical:0001-com-ubuntu-server-focal-daily:20_04-daily-lts-gen2:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu | 18.04-LTS | Canonical:UbuntuServer:18.04-LTS:latest | 作業系統和資料磁碟 |
Canonical | Ubuntu 18.04 | 18.04-DAILY-LTS | Canonical:UbuntuServer:18.04-DAILY-LTS:latest | 作業系統和資料磁碟 |
MicrosoftCBLMariner | cbl-mariner | cbl-mariner-2 | MicrosoftCBLMariner:cbl-mariner:cbl-mariner-2:latest* | 作業系統和資料磁碟 |
MicrosoftCBLMariner | cbl-mariner | cbl-mariner-2-gen2 | MicrosoftCBLMariner:cbl-mariner:cbl-mariner-2-gen2:latest* | 作業系統和資料磁碟 |
OpenLogic | CentOS 8-LVM | 8-LVM | OpenLogic:CentOS-LVM:8-LVM:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 8.4 | 8_4 | OpenLogic:CentOS:8_4:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 8.3 | 8_3 | OpenLogic:CentOS:8_3:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 8.2 | 8_2 | OpenLogic:CentOS:8_2:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 7-LVM | 7-LVM | OpenLogic:CentOS-LVM:7-LVM:7.9.2021020400 | 作業系統和資料磁碟 |
OpenLogic | CentOS 7.9 | 7_9 | OpenLogic:CentOS:7_9:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 7.8 | 7_8 | OpenLogic:CentOS:7_8:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 7.7 | 7.7 | OpenLogic:CentOS:7.7:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 7.6 | 7.6 | OpenLogic:CentOS:7.6:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 7.5 | 7.5 | OpenLogic:CentOS:7.5:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 7.4 | 7.4 | OpenLogic:CentOS:7.4:latest | 作業系統和資料磁碟 |
OpenLogic | CentOS 6.8 | 6.8 | OpenLogic:CentOS:6.8:latest | 僅資料磁碟 |
Oracle | Oracle Linux 8.6 | 8.6 | Oracle:Oracle-Linux:ol86-lvm:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
Oracle | Oracle Linux 8.6 Gen 2 | 8.6 | Oracle:Oracle-Linux:ol86-lvm-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
Oracle | Oracle Linux 8.5 | 8.5 | Oracle:Oracle-Linux:ol85-lvm:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
Oracle | Oracle Linux 8.5 Gen 2 | 8.5 | Oracle:Oracle-Linux:ol85-lvm-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9.4 | 9.4 | RedHat:RHEL:9_4:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9.4 Gen 2 | 9.4 | RedHat:RHEL:94_gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9.3 | 9.3 | RedHat:RHEL:9_3:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9.3 Gen 2 | 9.3 | RedHat:RHEL:93-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9.2 | 9.2 | RedHat:RHEL:9_2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9.2 Gen 2 | 9.2 | RedHat:RHEL:92-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9.0 | 9.0 | RedHat:RHEL:9_0:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9.0 Gen 2 | 9.0 | RedHat:RHEL:90-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9-lvm | 9-lvm | RedHat:RHEL:9-lvm:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 9-lvm Gen 2 | 9-lvm-gen2 | RedHat:RHEL:9-lvm-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.9 | 8.9 | RedHat:RHEL:8_9:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.9 Gen 2 | 8.9 | RedHat:RHEL:89-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.8 | 8.8 | RedHat:RHEL:8_8:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.8 Gen 2 | 8.8 | RedHat:RHEL:88-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.7 | 8.7 | RedHat:RHEL:8_7:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.7 Gen 2 | 8.7 | RedHat:RHEL:87-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.6 | 8.6 | RedHat:RHEL:8_6:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.6 Gen 2 | 8.6 | RedHat:RHEL:86-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.5 | 8.5 | RedHat:RHEL:8_5:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.5 Gen 2 | 8.5 | RedHat:RHEL:85-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.4 | 8.4 | RedHat:RHEL:8.4:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.3 | 8.3 | RedHat:RHEL:8.3:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8-LVM | 8-LVM | RedHat:RHEL:8-LVM:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8-LVM Gen 2 | 8-lvm-gen2 | RedHat:RHEL:8-lvm-gen2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.2 | 8.2 | RedHat:RHEL:8.2:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 8.1 | 8.1 | RedHat:RHEL:8.1:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 7-LVM | 7-LVM | RedHat:RHEL:7-LVM:7.9.2020111202 | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 7.9 | 7_9 | RedHat:RHEL:7_9:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 7.8 | 7.8 | RedHat:RHEL:7.8:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 7.7 | 7.7 | RedHat:RHEL:7.7:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 7.6 | 7.6 | RedHat:RHEL:7.6:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 7.5 | 7.5 | RedHat:RHEL:7.5:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 7.4 | 7.4 | RedHat:RHEL:7.4:latest | 作業系統和資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 6.8 | 6.8 | RedHat:RHEL:6.8:latest | 資料磁碟 (請參閱下列注意事項) |
RedHat | RHEL 6.7 | 6.7 | RedHat:RHEL:6.7:latest | 資料磁碟 (請參閱下列注意事項) |
SUSE | openSUSE 42.3 | 42.3 | SUSE:openSUSE-Leap:42.3:latest | 僅資料磁碟 |
SUSE | SLES 12-SP4 | 12-SP4 | SUSE:SLES:12-SP4:latest | 僅資料磁碟 |
SUSE | SLES HPC 12-SP3 | 12-SP3 | SUSE:SLES-HPC:12-SP3:latest | 僅資料磁碟 |
* 適用於 2023 年 5 月以上的映像版本。
注意
RHEL:
- RHEL OS 和適用於 RHEL7 隨用隨付映像的資料磁碟,可支援全新的 Azure 磁碟加密實作。
- RHEL 自備訂閱金級映像也支援 ADE,但僅限於註冊訂閱之後。 如需詳細資訊,請參閱 Azure 中的 Red Hat Enterprise Linux 自備訂閱金級映像
所有發行版本:
- 特定供應項目類型的 ADE 支援不會超過發行者所提供的生命循環結束日期。
- 不建議針對新的 VM 使用舊版 ADE 解決方案 (使用 Microsoft Entra 認證),且其與 RHEL 7.8 之後的 RHEL 版本或預設的 Python 3 並不相容。
其他 VM 需求
Azure 磁碟加密需要系統中存在 dm-crypt 和 vfat 模組。 從預設映像中移除或停用 vfat,會讓系統無法讀取金鑰磁碟區,也無法在後續重新啟動時,取得解除鎖定磁碟所需的金鑰。 從系統移除 vfat 模組的系統強化步驟,或是強制擴充資料磁碟上的 OS 掛接點/資料夾,與 Azure 磁碟加密並不相容。
在啟用加密之前,要加密的資料磁碟必須在 /etc/fstab 中正確列出。 建立項目時,請使用「nofail」選項,並選擇持續性封鎖裝置名稱 (因為「/dev/sdX」格式的裝置名稱在重新啟動時,不會與相同磁碟相關聯,尤其是加密後;如需關於此行為的詳細資料,請參閱:針對 Linux VM 裝置名稱變更進行疑難排解)。
確定 /etc/fstab 設定已正確設定而能夠掛接。 若要設定這些設定,請執行 mount -a 命令,或重新啟動 VM 再以該方式觸發重新掛接。 完成之後,檢查 lsblk 命令的輸出以確認所需的磁碟機仍有掛接。
- 如果 /etc/fstab 檔案還未正確掛接磁碟機就啟用加密,Azure 磁碟加密將無法正確地掛接磁碟機。
- Azure 磁碟加密程序會在加密程序進行期間,將掛接資訊從 /etc/fstab 移出,並移入自己的設定檔中。 在資料磁碟機加密完成之後,若發現 /etc/fstab 中有項目遺失,請不要擔心。
- 啟動加密之前,請務必停止可能會寫入裝載資料磁碟的所有服務和程序,並將其停用,使其不會在重新開機後自動重新啟動。 這些可能會使分割區上的檔案保持開啟狀態,以防加密程序重新裝載這些檔案,造成加密失敗。
- 重新開機後,Azure 磁碟加密程序需要一點時間才能掛接新加密的磁碟。 這些磁碟無法在重新開機後立即可供使用。 此程序需要時間來將加密的磁碟機啟動、解除鎖定再加以掛接,然後這些磁碟機才可供其他程序來存取。 視系統特性而定,在重新開機後,此程序可能需要進行超過一分鐘。
以下是用於裝載資料磁碟和建立必要 /etc/fstab 項目的命令範例。
sudo UUID0="$(blkid -s UUID -o value /dev/sda1)"
sudo UUID1="$(blkid -s UUID -o value /dev/sda2)"
sudo mkdir /data0
sudo mkdir /data1
sudo echo "UUID=$UUID0 /data0 ext4 defaults,nofail 0 0" >>/etc/fstab
sudo echo "UUID=$UUID1 /data1 ext4 defaults,nofail 0 0" >>/etc/fstab
sudo mount -a
網路需求
若要啟用 Azure 磁碟加密功能,Linux VM 必須符合下列網路端點組態需求:
- Linux VM 必須能連線至託管 Azure 擴充存放庫的 Azure 儲存體端點,和託管 VHD 檔案的 Azure 儲存體帳戶。
- 如果您的安全性原則限制從 Azure VM 到網際網路的存取,您可以解析前述的 URI,並設定特定規則以允許輸出連線到 IP。 如需詳細資訊,請參閱防火牆後方的 Azure Key Vault。
加密金鑰儲存體需求
Azure 磁碟加密需要 Azure Key Vault 來控管磁碟加密金鑰及祕密。 您的金鑰保存庫必須和 VM 位於相同的 Azure 區域和訂閱中。
如需詳細資料,請參閱建立及設定適用於 Azure 磁碟加密的金鑰保存庫。
詞彙
下表定義 Azure 磁碟加密文件中所使用的一些常見詞彙:
詞彙 | 定義 |
---|---|
Azure Key Vault | Key Vault 是一個密碼編譯金鑰管理服務,以「美國聯邦資訊處理標準」(FIPS) 已驗證的硬體安全性模組為基礎。 這些標準可協助您保護密碼編譯金鑰和敏感性祕密。 如需詳細資訊,請參閱 Azure Key Vault 文件與建立及設定適用於 Azure 磁碟加密的金鑰保存庫。 |
Azure CLI | Azure CLI 已針對從命令列管理 Azure 資源進行最佳化。 |
DM-Crypt | DM-Crypt 是基於 Linux 的透明磁碟加密子系統,用來在 Linux VM 上啟用磁碟加密。 |
金鑰加密金鑰 (KEK) | 可用來保護或包裝密碼的非對稱金鑰 (RSA 2048)。 您可以提供硬體安全性模組 (HSM) 保護的金鑰或軟體保護的金鑰。 如需詳細資訊,請參閱 Azure Key Vault 文件與建立及設定適用於 Azure 磁碟加密的金鑰保存庫。 |
PowerShell Cmdlet | 如需詳細資訊,請參閱 Azure PowerShell Cmdlet。 |