Scénáře azure Disk Encryption na virtuálních počítačích s Linuxem

Důležité

15. září 2028 je naplánované vyřazení služby Azure Disk Encryption. Do tohoto data můžete dál používat Službu Azure Disk Encryption bez přerušení. 15. září 2028 se úlohy s podporou ADE budou dál spouštět, ale šifrované disky se po restartování virtuálního počítače nepodaří odemknout, což vede k přerušení služeb.

Pro nové virtuální počítače používejte šifrování na hostiteli nebo zvažte velikosti důvěrných virtuálních počítačů s šifrováním disku s operačním systémem pro důvěrné výpočetní úlohy. Všechny virtuální počítače s podporou ADE (včetně záloh) se musí migrovat na šifrování na hostiteli před datem vyřazení, aby nedošlo k přerušení služeb. Podrobnosti najdete v tématu Migrace ze služby Azure Disk Encryption na šifrování na hostiteli .

Platí pro: ✔️ Flexibilní škálovací sady virtuálních počítačů s Linuxem ✔️

Azure Disk Encryption pro virtuální počítače s Linuxem používá funkci DM-Crypt Linuxu k zajištění plného šifrování disku disku s operačním systémem a datových disků. Kromě toho zašifruje dočasný disk při použití funkce EncryptFormatAll.

Služba Azure Disk Encryption je integrovaná se službou Azure Key Vault , která vám pomůže řídit a spravovat šifrovací klíče a tajné kódy disků. Přehled služby najdete v tématu Azure Disk Encryption pro virtuální počítače s Linuxem.

Požadavky

Šifrování disků můžete použít pouze na virtuální počítače s podporovanými velikostmi virtuálních počítačů a operačními systémy. Dále musí být splněny následující požadavky:

Ve všech případech před zašifrováním disků pořiďte snímek, vytvořte zálohu nebo obojí. Pokud máte zálohu a při šifrování dojde nečekaně k chybě, bude možné virtuální počítač obnovit. Virtuální počítače se spravovanými disky vyžadují před šifrováním zálohu. Po vytvoření zálohy můžete pomocí rutinySet-AzVMDiskEncryptionExtension zašifrovat spravované disky zadáním parametru -skipVmBackup. Další informace o zálohování a obnovení šifrovaných virtuálních počítačů najdete v tématu o Zálohování Azure.

Omezení

Pokud jste dříve použili Azure Disk Encryption s Microsoft Entra ID k šifrování virtuálního počítače, musíte tuto možnost dál používat k šifrování virtuálního počítače. Podrobnější informace viz Azure Disk Encryption s Microsoft Entra ID (předchozí verze).

Při šifrování svazků s operačním systémem Linux není virtuální počítač k dispozici. Vyhněte se přihlášení SSH, zatímco probíhá šifrování, abyste zabránili problémům, které blokují otevřené soubory, ke kterým je potřeba přistupovat během procesu šifrování. Pokud chcete zkontrolovat průběh, použijte rutinu Get-AzVMDiskEncryptionStatus v PowerShellu nebo příkaz vm encryption show v CLI. Můžete očekávat, že tento proces bude u 30GB svazku operačního systému trvat několik hodin, plus další dobu na šifrování datových svazků. Doba šifrování objemu dat je úměrná velikosti a množství datových svazků, pokud se encrypt format all tato možnost nepoužije.

Zákaz šifrování je na virtuálních počítačích s Linuxem podporovaný jen u datových svazků. Zakázání šifrování není podporováno u dat nebo svazků operačního systému, pokud je svazek operačního systému šifrovaný.

Azure Disk Encryption nefunguje pro následující scénáře, funkce a technologie Pro Linux:

  • Šifrování virtuálních počítačů úrovně Basic nebo virtuálních počítačů vytvořených prostřednictvím metody vytvoření klasického virtuálního počítače
  • Šifrování virtuálních počítačů řady v6 s dočasnými disky (Ddsv6, Dldsv6, Edsv6, Dadsv6, Daldsv6, Eadsv6, Dpdsv6, Dpldsv6, Epdsv6 nebo Endsv6). Další informace najdete na jednotlivých stránkách jednotlivých velikostí virtuálních počítačů uvedených na velikostech virtuálních počítačů v Azure.
  • Šifrování řad V7 a novějších velikostí virtuálních počítačů
  • Zakázání šifrování na jednotce operačního systému nebo datové jednotce virtuálního počítače s Linuxem při šifrování jednotky operačního systému
  • Šifrování disku operačního systému pro Linuxové škálovací sady virtuálních počítačů.
  • Šifrování vlastních imagí na virtuálních počítačích s Linuxem
  • Integrace s místním systémem pro správu klíčů
  • Soubory Azure (sdílený systém souborů).
  • Systém souborů NFS (Network File System).
  • Dynamické svazky.
  • Dočasné disky s operačním systémem
  • Šifrování sdílených nebo distribuovaných systémů souborů, jako jsou (ale ne omezené na): DFS, GFS, DRDB a CephFS.
  • Přesun šifrovaného virtuálního počítače do jiného předplatného nebo oblasti
  • Vytvoření image nebo snímku šifrovaného virtuálního počítače a jeho použití k nasazení dalších virtuálních počítačů
  • Výpis stavu systému jádra (kdump).
  • Oracle ACFS (systém souborů clusteru ASM).
  • Disky NVMe, jako jsou na velikostech virtuálních počítačů s vysokým výkonem nebo na velikostech optimalizovaných pro úložiště.
  • VM s „vnořenými přípojnými body“, tj. více přípojnými body v jediné cestě (například „/1stmountpoint/data/2ndmountpoint“).
  • Virtuální počítač s datovou jednotkou namontovanou na vrchol složky operačního systému
  • Virtuální počítač, na kterém je rozšířen logický svazek kořenového disku operačního systému s použitím datového disku.
  • Změna velikosti disku s operačním systémem
  • Řada velikostí virtuálních počítačů optimalizovaná pro úložiště "L".
  • Virtuální počítače řady M s disky akcelerátoru zápisu
  • Použití ADE na virtuální počítač, který má disky šifrované pomocí šifrování na straně hostitele nebo na straně serveru s využitím klíčů spravovaných zákazníkem (SSE + CMK). Použití SSE + CMK na datový disk nebo přidání datového disku s SSE + CMK nakonfigurovaným na virtuální počítač šifrovaný pomocí ADE je také nepodporovaný scénář.
  • Migrace virtuálního počítače, který je šifrovaný pomocí ADE nebo byl někdy šifrovaný pomocí ADE, na šifrování na straně hostitele nebo na straně serveru pomocí klíčů spravovaných zákazníkem.
  • Šifrování virtuálních počítačů v clusterech pro převzetí služeb při selhání
  • Šifrování disků Azure Ultra
  • Šifrování disků SSD úrovně Premium v2
  • Šifrování VM v předplatných, kde je povolena zásada Tajnosti by měly mít stanovenou maximální dobu platnosti s účinkem ODEPŘÍT.

Instalace nástrojů a připojení k Azure

Azure Disk Encryption můžete povolit a spravovat prostřednictvím Azure CLI a Azure PowerShell. K tomu je potřeba nainstalovat nástroje místně a připojit se k předplatnému Azure.

Azure CLI 2.0 je nástroj příkazového řádku pro správu prostředků Azure. Rozhraní příkazového řádku je navržené tak, aby pružně dotazovala data, podporovala dlouhotrvající operace jako neblokující procesy a usnadnila skriptování. Můžete ho nainstalovat místně podle kroků v části Instalace Azure CLI.

Pokud se chcete přihlásit ke svému účtu Azure pomocí Azure CLI, použijte příkaz az login .

az login

Pokud chcete vybrat tenanta, pod kterého se chcete přihlásit, použijte:

az login --tenant <tenant>

Pokud máte více předplatných a chcete zadat konkrétní předplatné, získejte seznam předplatných pomocí příkazu az account list a zadejte příkazem az account set.

az account list
az account set --subscription "<subscription name or ID>"

Další informace najdete v tématu Začínáme s Azure CLI 2.0.

Povolení šifrování na existujícím nebo spuštěném virtuálním počítači s Linuxem

V tomto scénáři můžete povolit šifrování pomocí šablony Resource Manageru, rutin PowerShellu nebo příkazů rozhraní příkazového řádku. Pokud potřebujete informace o schématu pro rozšíření virtuálního počítače, přečtěte si článek o rozšíření Azure Disk Encryption pro Linux .

Důležité

Vytvořte snímek nebo zálohu instance virtuálního počítače založené na spravovaných discích ještě před povolením funkce Azure Disk Encryption. Snímek spravovaného disku můžete pořídit z portálu nebo použít Azure Backup. Pokud máte zálohu a při šifrování dojde nečekaně k chybě, bude možné virtuální počítač obnovit. Po provedení zálohy pomocí rutiny Set-AzVMDiskEncryptionExtension zašifrujte spravované disky zadáním parametru -skipVmBackup. Příkaz Set-AzVMDiskEncryptionExtension selže s virtuálními počítači založenými na spravovaných discích, dokud neprovedete zálohu a nezadáte tento parametr.

Šifrování nebo zakázání šifrování může způsobit restartování virtuálního počítače.

Pokud chcete šifrování zakázat, přečtěte si téma Zakázání šifrování a odebrání rozšíření šifrování.

Šifrování disků na šifrovaný virtuální pevný disk můžete povolit tak, že nainstalujete a použijete nástroj příkazového řádku Azure CLI . Můžete ho používat v prohlížeči pomocí služby Azure Cloud Shell nebo nainstalovat na místním počítači a používat ho v jakékoli relaci PowerShellu. Pokud chcete povolit šifrování u existujících nebo spuštěných virtuálních počítačů s Linuxem v Azure, použijte následující příkazy rozhraní příkazového řádku:

Povolte šifrování na spuštěném virtuálním počítači v Azure pomocí příkazu az vm encryption enable.

  • Šifrování spuštěného virtuálního počítače:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault "MySecureVault" --volume-type [All|OS|Data]
    
  • Šifrování spuštěného virtuálního počítače pomocí KEK:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault  "MySecureVault" --key-encryption-key "MyKEK_URI" --key-encryption-keyvault "MySecureVaultContainingTheKEK" --volume-type [All|OS|Data]
    

    Poznámka:

    Syntaxe pro hodnotu parametru disk-encryption-keyvault je řetězec úplného identifikátoru: /subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault-name]
    Syntaxe pro hodnotu parametru key-encryption-key je úplný identifikátor URI ke klíči KEK jako v: https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]

  • Ověřte, že jsou disky šifrované: Pokud chcete zkontrolovat stav šifrování virtuálního počítače, použijte příkaz az vm encryption show .

    az vm encryption show --name "MySecureVM" --resource-group "MyVirtualMachineResourceGroup"
    

Pokud chcete šifrování zakázat, přečtěte si téma Zakázání šifrování a odebrání rozšíření šifrování.

Použití funkce EncryptFormatAll pro datové disky na virtuálních počítačích s Linuxem

Parametr EncryptFormatAll zkracuje dobu šifrování datových disků Linuxu. Oddíly, které splňují určitá kritéria, jsou formátované spolu s jejich aktuálními systémy souborů a pak se znovu připojují k místa, kde byly před provedením příkazu. Pokud chcete vyloučit datový disk, který splňuje kritéria, můžete ho před spuštěním příkazu odpojit.

Když spustíte tento příkaz, Azure Disk Encryption naformátuje všechny jednotky, které byly dříve připojené, a spustí vrstvu šifrování nad nyní prázdnou jednotkou. Když vyberete tuto možnost, Azure Disk Encryption také zašifruje dočasný disk připojený k virtuálnímu počítači. Pokud dojde k resetování dočasného disku, Azure Disk Encryption při nejbližší příležitosti přeformátuje a znovu zašifruje dočasný disk virtuálního počítače. Jakmile je disk prostředků zašifrovaný, Microsoft Azure Linux Agent nemůže spravovat disk prostředků a povolit odkládací soubor, ale odkládací soubor můžete nakonfigurovat ručně.

Výstraha

Nepoužívejte EncryptFormatAll, pokud potřebná data existují na datových svazcích virtuálního počítače. Disky můžete z šifrování vyloučit tak, že je odpojíte. Nejprve zkuste parametr EncryptFormatAll na testovacím virtuálním počítači pochopit parametr funkce a jeho důsledky, než ho zkusíte na produkčním virtuálním počítači. Možnost EncryptFormatAll formátuje datový disk a všechna data na něm jsou ztracena. Než budete pokračovat, ověřte, že disky, které chcete vyloučit, jsou správně odpojené.

Pokud tento parametr nastavujete při aktualizaci nastavení šifrování, může to před skutečným šifrováním vést k restartování. V takovém případě byste měli odebrat disk, který nechcete formátovat ze souboru fstab. Podobně byste měli před zahájením operace šifrování přidat oddíl, který chcete zašifrovat do souboru fstab.

Kritéria "EncryptFormatAll"

Parametr prochází všemi oddíly a šifruje je, pokud splňují všechna níže uvedená kritéria:

  • Nejedná se o kořenový, systémový nebo spouštěcí oddíl.
  • Není zašifrovaný.
  • Není svazek BEK.
  • Není svazek RAID.
  • Není svazek LVM.
  • Je namontováno.

Zašifrujte disky, které tvoří svazek RAID nebo LVM, a nikoli svazek RAID nebo LVM.

Povolte šifrování na spuštěném virtuálním počítači v Azure pomocí příkazu az vm encryption enable.

  • Šifrování spuštěného virtuálního počítače pomocí EncryptFormatAll:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault "MySecureVault" --volume-type "data" --encrypt-format-all
    

Použití parametru EncryptFormatAll se správcem logických svazků (LVM)

Doporučujeme nastavit lvm-on-crypt. Podrobné pokyny k LVM v konfiguraci šifrování najdete v tématu Konfigurace LVM a RAID na šifrovaných zařízeních ADE.

Nové virtuální počítače vytvořené z virtuálních pevných disků šifrovaných zákazníkem a šifrovacích klíčů

V tomto scénáři můžete šifrování povolit pomocí rutin PowerShellu nebo příkazů rozhraní příkazového řádku.

Pokyny v ukázkových skriptech Azure Disk Encryption slouží k přípravě předšifrovaných imagí pro Azure. Po vytvoření image můžete pomocí kroků v další části vytvořit šifrovaný virtuální počítač Azure.

Důležité

Vytvořte snímek nebo zálohu instance virtuálního počítače založené na spravovaných discích ještě před povolením funkce Azure Disk Encryption. Snímek spravovaného disku můžete pořídit z portálu nebo můžete použít Azure Backup. Pokud máte zálohu a při šifrování dojde nečekaně k chybě, bude možné virtuální počítač obnovit. Po provedení zálohy pomocí rutiny Set-AzVMDiskEncryptionExtension zašifrujte spravované disky zadáním parametru -skipVmBackup . Příkaz Set-AzVMDiskEncryptionExtension selže s virtuálními počítači založenými na spravovaných discích, dokud neprovedete zálohu a nezadáte tento parametr.

Šifrování nebo zakázání šifrování může způsobit restartování virtuálního počítače.

Použití Azure PowerShellu k šifrování virtuálních počítačů s předšifrovanými virtuálními pevnými disky

Šifrování disku na šifrovaném virtuálním pevném disku můžete povolit pomocí rutiny PowerShell Set-AzVMOSDisk. V tomto příkladu jsou uvedeny některé běžné parametry.

$VirtualMachine = New-AzVMConfig -VMName "MySecureVM" -VMSize "Standard_A1"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name "SecureOSDisk" -VhdUri "os.vhd" Caching ReadWrite -Linux -CreateOption "Attach" -DiskEncryptionKeyUrl "https://mytestvault.vault.azure.net/secrets/Test1/514ceb769c984379a7e0230bddaaaaaa" -DiskEncryptionKeyVaultId "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.KeyVault/vaults/mytestvault"
New-AzVM -VM $VirtualMachine -ResourceGroupName "MyVirtualMachineResourceGroup"

Povolení šifrování na nově přidaném datovém disku

Nový datový disk můžete přidat pomocí příkazu az vm disk attach nebo prostřednictvím webu Azure Portal. Před šifrováním je potřeba nejprve připojit nově připojený datový disk. Musíte požádat o šifrování datové jednotky, protože jednotka není použitelná, zatímco probíhá šifrování.

Pokud byl virtuální počítač dříve zašifrován pomocí "All", --volume-type měl by parametr zůstat "All". Vše zahrnuje jak disky operačního systému, tak datové disky. Pokud byl virtuální počítač dříve šifrovaný pomocí typu operačního systému, změňte --volume-type parametr na All tak, aby byl zahrnutý operační systém i nový datový disk. Pokud byl virtuální počítač zašifrovaný pouze s typem svazku "Data", může zůstat "Data", jak je znázorněno v následujícím příkladu. Přidání a připojení nového datového disku k virtuálnímu počítači není dostatečnou přípravou na šifrování. Před povolením šifrování musíte také naformátovat a správně připojit nově připojený disk v rámci virtuálního počítače. V Linuxu musíte připojit disk v /etc/fstab pod trvalým názvem blokového zařízení.

Na rozdíl od syntaxe PowerShellu rozhraní příkazového řádku nevyžaduje, abyste při povolování šifrování zadali jedinečnou verzi sekvence. Rozhraní příkazového řádku automaticky vygeneruje a používá vlastní jedinečnou hodnotu verze sekvence.

  • Šifrování datových svazků spuštěného virtuálního počítače:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault "MySecureVault" --volume-type "Data"
    
  • Šifrování datových svazků spuštěného virtuálního počítače pomocí KEK:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault  "MySecureVault" --key-encryption-key "MyKEK_URI" --key-encryption-keyvault "MySecureVaultContainingTheKEK" --volume-type "Data"
    

Zakázání šifrování a odebrání rozšíření šifrování

Můžete zakázat Azure Disk Encryption a rozšíření Azure Disk Encryption odebrat. Zakázání a odebrání jsou dvě různé operace.

Pokud chcete ADE odebrat, nejprve zakažte šifrování a pak rozšíření odeberte. Pokud odeberete šifrovací rozšíření bez zakázání ADE, zůstanou disky zašifrované. Pokud šifrování po odebrání rozšíření zakážete, rozšíření se přeinstaluje (k provedení dešifrovací operace) a musí se odebrat podruhé.

Výstraha

Šifrování nemůžete zakázat, pokud je disk s operačním systémem šifrovaný. (Disky s operačním systémem se šifrují, když původní operace šifrování určuje volumeType=ALL nebo volumeType=OS.)

Zakázání šifrování funguje jenom v případech, kdy jsou datové disky šifrované, ale disk s operačním systémem není.

Zakázání šifrování

Šifrování můžete zakázat pomocí Azure PowerShell, Azure CLI nebo šablony Resource Manager. Zakázání šifrování neodebere rozšíření (viz Odebrání rozšíření šifrování).

  • Zakázání šifrování disků pomocí Azure PowerShellu: Pokud chcete šifrování zakázat, použijte rutinu Disable-AzVMDiskEncryption .

    Disable-AzVMDiskEncryption -ResourceGroupName "MyVirtualMachineResourceGroup" -VMName "MySecureVM" -VolumeType "data"
    
  • Zákaz šifrování pomocí Azure CLI: Pokud chcete zakázat šifrování, použijte příkaz az vm encryption disable .

    az vm encryption disable --name "MySecureVM" --resource-group "MyVirtualMachineResourceGroup" --volume-type "data"
    
  • Zakázání šifrování pomocí šablony Resource Manageru:

    1. V šabloně Zakázat šifrování disku na spuštěném virtuálním počítači s Linuxem vyberte možnost Nasadit do Azure.
    2. Vyberte předplatné, skupinu prostředků, umístění, VM, typ svazku, právní podmínky a smluvní podmínky.
    3. Výběrem možnosti Koupit zakážete šifrování disků na spuštěném virtuálním počítači s Linuxem.

Výstraha

Po spuštění dešifrování nezasahujte do procesu.

Pokud chcete zkontrolovat průběh dešifrování, použijte rutinu PowerShellu Get-AzVMDiskEncryptionStatus nebo příkaz az vm encryption show CLI. Po dokončení procesu dešifrování můžete rozšíření šifrování odebrat.

Odstraňte rozšíření šifrování

Pokud chcete dešifrovat disky a odebrat rozšíření šifrování, musíte před odebráním rozšíření zakázat šifrování; viz zakázání šifrování.

K odebrání rozšíření šifrování použijte Azure PowerShell nebo Azure CLI.

  • Odeberte rozšíření šifrování pomocí Azure PowerShell: Použijte rutinu Remove-AzVMDiskEncryptionExtension.

    Remove-AzVMDiskEncryptionExtension -ResourceGroupName "MyVirtualMachineResourceGroup" -VMName "MySecureVM"
    
  • Odeberte rozšíření šifrování pomocí Azure CLI: Použijte příkaz az vm extension delete.

    az vm extension delete -g "MyVirtualMachineResourceGroup" --vm-name "MySecureVM" -n "AzureDiskEncryptionForLinux"
    

Další kroky