Scenari di Crittografia dischi di Azure in macchine virtuali Linux

Importante

Crittografia dischi di Azure è pianificato per il ritiro il 15 settembre 2028. Fino a tale data, è possibile continuare a usare Crittografia dischi di Azure senza interruzioni. Il 15 settembre 2028 i carichi di lavoro abilitati per ADE continueranno a essere eseguiti, ma i dischi crittografati non riusciranno a sbloccarsi dopo il riavvio della macchina virtuale, causando un'interruzione del servizio.

Usare la crittografia nell'host per le nuove macchine virtuali o prendere in considerazione le dimensioni delle macchine virtuali riservate con crittografia del disco del sistema operativo per i carichi di lavoro di computing riservato. Tutte le macchine virtuali abilitate per ADE (inclusi i backup) devono eseguire la migrazione alla crittografia nell'host prima della data di ritiro per evitare interruzioni del servizio. Per informazioni dettagliate, vedere Eseguire la migrazione da Crittografia dischi di Azure alla crittografia nell'host .

Si applica a: ✔️ macchine virtuali di Linux ✔️ set di scalabilità flessibili

Crittografia dischi di Azure per macchine virtuali Linux usa la funzionalità DM-Crypt di Linux per offrire la crittografia completa del disco del sistema operativo e dei dischi dati. Inoltre, crittografa il disco temporaneo quando si usa la funzionalità EncryptFormatAll.

Crittografia dischi di Azure è integrato con Azure Key Vault per consentire il controllo e la gestione dei segreti e delle chiavi di crittografia dei dischi. Per una panoramica del servizio, vedere Crittografia dischi di Azure per macchine virtuali Linux.

Prerequisiti

È possibile applicare la crittografia del disco solo alle macchine virtuali di dimensioni e sistemi operativi supportati. È anche necessario soddisfare i prerequisiti seguenti:

In tutti i casi, eseguire un'istantanea, creare un backup o entrambe le operazioni prima che i dischi vengano crittografati. I backup garantiscono la disponibilità di un'opzione di ripristino nel caso si verifichi un errore imprevisto durante la crittografia. Le macchine virtuali con dischi gestiti richiedono il backup prima della crittografia. Dopo aver eseguito un backup, è possibile usare il cmdlet Set-AzVMDiskEncryptionExtension per crittografare i dischi gestiti specificando il parametro -skipVmBackup. Per altre informazioni su come eseguire il backup e il ripristino di macchine virtuali crittografate, vedere l'articolo Backup di Azure.

Restrizioni

Se in precedenza è stato usato Crittografia dischi di Azure con Microsoft Entra ID per crittografare una macchina virtuale, è necessario continuare a usare questa opzione per crittografare la macchina virtuale. Per i dettagli, vedere Crittografia dischi di Azure con Microsoft Entra ID (versione precedente).

Durante la crittografia dei volumi del sistema operativo Linux, la macchina virtuale non è disponibile. Evitare accessi SSH mentre la crittografia è in corso per evitare problemi che bloccano tutti i file aperti a cui è necessario accedere durante il processo di crittografia. Per controllare lo stato di avanzamento, usare il cmdlet di PowerShell Get-AzVMDiskEncryptionStatus o il comando dell'interfaccia della riga di comando vm encryption show. È possibile prevedere che questo processo richiede alcune ore per un volume del sistema operativo da 30 GB, oltre a un tempo aggiuntivo per la crittografia dei volumi di dati. Il tempo di crittografia del volume di dati è proporzionale alle dimensioni e alla quantità dei volumi di dati, a meno che non venga usata l'opzione encrypt format all .

La disabilitazione della crittografia nelle macchine virtuali Linux è supportata solo per i volumi di dati. La disabilitazione della crittografia non è supportata nei volumi di dati o del sistema operativo se il volume del sistema operativo è crittografato.

Crittografia dischi di Azure non funziona per gli scenari, le funzionalità e la tecnologia Linux seguenti:

  • Crittografia di una macchina virtuale o di macchine virtuali di livello Basic create tramite il metodo di creazione classico.
  • Crittografia di macchine virtuali serie v6 con dischi temporanei (Ddsv6, Dldsv6, Edsv6, Dadsv6, Daldsv6, Eadsv6, Dpdsv6, Dpldsv6, Epdsv6 o Endsv6). Per altre informazioni, vedere le singole pagine per ognuna di queste dimensioni di macchina virtuale elencate in Dimensioni per le macchine virtuali in Azure
  • Crittografia delle serie V7 e delle dimensioni delle macchine virtuali più recenti.
  • Disabilitazione della crittografia in un'unità del sistema operativo o un'unità dati di una macchina virtuale Linux quando l'unità del sistema operativo è crittografata.
  • Crittografia dell'unità del sistema operativo per i set di scalabilità di macchine virtuali Linux.
  • Crittografia di immagini personalizzate in macchine virtuali Linux.
  • Integrazione con un sistema di gestione delle chiavi locale.
  • File di Azure (file system condiviso).
  • NFS (Network File System).
  • Volumi dinamici.
  • Dischi del sistema operativo temporanei.
  • Crittografia di file system condivisi/distribuiti quali ad esempio: DFS, GFS, DRDB e CephFS.
  • Trasferimento di una macchina virtuale crittografata a un'altra sottoscrizione o area.
  • Creazione di un'immagine o uno snapshot di una macchina virtuale crittografata e uso per distribuire più macchine virtuali.
  • Dump di arresto anomalo del kernel (kdump).
  • Oracle ACFS (file system cluster ASM).
  • Dischi NVMe, ad esempio quelli in dimensioni di macchine virtuali con prestazioni elevate o in dimensioni di macchine virtuali ottimizzate per l'archiviazione.
  • Macchina virtuale con "punti di montaggio annidati", che sono più punti di montaggio in un singolo percorso ( ad esempio "/1stmountpoint/data/2ndmountpoint").
  • Una macchina virtuale con un'unità dati montata sopra una cartella del sistema operativo.
  • Una macchina virtuale in cui è esteso un volume logico radice (disco del sistema operativo) usando un disco dati.
  • Ridimensionamento del disco del sistema operativo.
  • Serie di dimensioni delle macchine virtuali ottimizzate per l'archiviazione della famiglia 'L'.
  • Macchine virtuali serie M con dischi di acceleratore di scrittura.
  • Applicazione di Crittografia dischi di Azure a una macchina virtuale con dischi crittografati con la crittografia a livello di host o la crittografia sul lato server con chiavi gestite dal cliente (SSE + CMK). Anche l'applicazione SSE + CMK a un disco dati o l'aggiunta di un disco dati con SSE + CMK configurato per una macchina virtuale crittografata con ADE è uno scenario non supportato.
  • Migrazione di una macchina virtuale crittografata con ADE o mai crittografata con ade, a crittografia in host o crittografia lato server con chiavi gestite dal cliente.
  • Crittografia delle macchine virtuali nei cluster di failover.
  • Crittografia dei dischi Ultra di Azure.
  • Crittografia dei dischi SSD Premium v2.
  • Per la crittografia delle macchine virtuali nelle sottoscrizioni con segreti , il criterio di validità massimo specificato deve essere abilitato con l’effetto DENY.

Installare gli strumenti e connettersi ad Azure

È possibile abilitare e gestire Crittografia dischi di Azure tramite interfaccia della riga di comando di Azure e Azure PowerShell. A tale scopo, è necessario installare gli strumenti localmente e connettersi alla sottoscrizione di Azure.

L'interfaccia della riga di comando di Azure 2.0 è uno strumento da riga di comando per la gestione delle risorse di Azure. L'interfaccia della riga di comando è progettata per eseguire query sui dati in modo flessibile, supportare operazioni a esecuzione prolungata come processi non bloccanti e semplificare la creazione di script. È possibile installarla in locale seguendo i passaggi descritti in Installare l'interfaccia della riga di comando di Azure..

Per accedere all'account di Azure con l'interfaccia della riga di comando di Azure, usare il comando az login.

az login

Se vuoi selezionare un tenant con cui accedere, usa:

az login --tenant <tenant>

In caso di più sottoscrizioni, per specificarne una in particolare è necessario ottenere l'elenco di sottoscrizioni tramite az account list (elenco account di accesso di AZ) e specificarla da az account set (imposta account di accesso di AZ).

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

Per altre informazioni, vedere Azure Service Fabric e interfaccia della riga di comando di Azure 2.0.

Abilitare la crittografia in una macchina virtuale Linux esistente o in esecuzione

In questo scenario è possibile abilitare la crittografia usando il modello di Resource Manager, i cmdlet di PowerShell o i comandi dell'interfaccia della riga di comando. Per informazioni sullo schema dell'estensione della macchina virtuale, leggere l'articolo Crittografia dischi di Azure per Linux.

Importante

Creare uno snapshot o eseguire il backup di un'istanza di macchina virtuale basata su disco gestito all'esterno di e prima di abilitare Crittografia dischi di Azure. È possibile creare uno snapshot del disco gestito dal portale o usare Backup di Azure. I backup garantiscono la disponibilità di un'opzione di ripristino nel caso si verifichi un errore imprevisto durante la crittografia. Dopo aver eseguito un backup, usare il cmdlet Set-AzVMDiskEncryptionExtension per crittografare i dischi gestiti specificando il parametro -skipVmBackup. Il comando Set-AzVMDiskEncryptionExtension non riesce nelle macchine virtuali basate su disco gestito fino a quando non si esegue un backup e si specifica questo parametro.

La crittografia o la disabilitazione della crittografia può causare il riavvio della macchina virtuale.

Per disabilitare la crittografia, vedere Disabilitare la crittografia e rimuovere l'estensione di crittografia.

È possibile abilitare la crittografia dischi nel disco rigido virtuale crittografato installando e usando lo strumento di interfaccia della riga di comando di Azure. È possibile usarlo nel browser con Azure Cloud Shell oppure installarlo nel computer locale e usarlo in una sessione di PowerShell. Per abilitare la crittografia in macchine virtuali Linux esistenti o in esecuzione in Azure, usare i comandi dell'interfaccia della riga di comando seguenti:

Usare il comando az vm encryption enable per abilitare la crittografia in una macchina virtuale in esecuzione in Azure.

  • Crittografare una macchina virtuale in esecuzione:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault "MySecureVault" --volume-type [All|OS|Data]
    
  • Crittografare una macchina virtuale in esecuzione usando la chiave 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]
    

    Note

    La sintassi per il valore del parametro disk-encryption-keyvault è la stringa dell'identificatore completo: /subscriptions/[subscription-id-guid]/resourceGroups/[resource-group-name]/providers/Microsoft.KeyVault/vaults/[keyvault-name]
    La sintassi per il valore del parametro key-encryption-key è l'URI completo KEK come in: https://[keyvault-name].vault.azure.net/keys/[kekname]/[kek-unique-id]

  • Verificare che i dischi siano crittografati: per controllare lo stato della crittografia di una macchina virtuale, usare il comando az vm encryption show.

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

Per disabilitare la crittografia, vedere Disabilitare la crittografia e rimuovere l'estensione di crittografia.

Usare la funzionalità EncryptFormatAll per i dischi dati nelle macchine virtuali Linux

Il parametro EncryptFormatAll riduce la durata per la crittografia dei dischi dati Linux. Le partizioni che soddisfano determinati criteri vengono formattate, insieme ai file system correnti, quindi rimontate nella posizione in cui erano prima dell'esecuzione del comando. Se si desidera escludere un disco dati che soddisfa i criteri, è possibile smontarlo prima di eseguire il comando.

Quando si esegue questo comando, Crittografia dischi di Azure formatta tutte le unità montate in precedenza e avvia il livello di crittografia sopra l'unità ora vuota. Quando si seleziona questa opzione, Crittografia dischi di Azure crittografa anche il disco temporaneo collegato alla macchina virtuale. Se il disco temporaneo viene reimpostato, Crittografia dischi di Azure riformatta e crittografa nuovamente il disco temporaneo della macchina virtuale alla successiva opportunità. Dopo aver crittografato il disco delle risorse, l'agente Linux Microsoft Azure non può gestire il disco delle risorse e abilitare il file di scambio, ma è possibile configurare manualmente il file di scambio.

Avviso

Non usare EncryptFormatAll quando i dati necessari esistono nei volumi di dati di una macchina virtuale. Per escludere i dischi dalla crittografia, è possibile smontarli. Provare il parametro EncryptFormatAll in una macchina virtuale di test prima di comprendere il parametro della funzionalità e le relative implicazioni prima di provarlo nella macchina virtuale di produzione. L'opzione EncryptFormatAll formatta il disco dati e tutti i dati in esso contenuti vengono persi. Prima di procedere, verificare che i dischi da escludere siano smontati correttamente.

Se si imposta questo parametro durante l'aggiornamento delle impostazioni di crittografia, si potrebbe verificare un riavvio prima della crittografia effettiva. In questo caso, è necessario rimuovere dal file fstab il disco che non si vuole formattare. Analogamente, è necessario aggiungere al file fstab la partizione che si desidera formattare con crittografia e poi avviare l'operazione di crittografia.

Criteri EncryptFormatAll

Il parametro esamina tutte le partizioni e le crittografa, a patto che soddisfino tutti i criteri seguenti:

  • Non è una partizione di avvio/del sistema operativo/radice
  • Non è già stata crittografata
  • Non è un volume BEK
  • Non è un volume RAID
  • Non è un volume LVM
  • È montata

Crittografare i dischi che compongono il volume RAID o LVM anziché il volume stesso.

Usare il comando az vm encryption enable per abilitare la crittografia in una macchina virtuale in esecuzione in Azure.

  • Crittografare una macchina virtuale in esecuzione usando EncryptFormatAll:

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

Usare il parametro EncryptFormatAll con Logical Volume Manager (LVM)

È consigliabile usare una configurazione LVM-on-crypt. Per istruzioni dettagliate sulla LVM nella configurazione della crittografia, vedere Configurare LVM e RAID nei dispositivi crittografati con Crittografia dischi di Azure.

Nuove macchine virtuali create da chiavi di crittografia e dischi rigidi virtuali crittografati dal cliente

In questo scenario è possibile abilitare la crittografia usando i cmdlet di PowerShell o i comandi dell'interfaccia della riga di comando.

Usare le istruzioni negli script di esempio Crittografia dischi di Azure per preparare le immagini pre-crittografate per Azure. Dopo aver creato l'immagine, è possibile usare i passaggi della sezione successiva per creare una VM di Azure crittografata.

Importante

Creare uno snapshot o eseguire il backup di un'istanza di macchina virtuale basata su disco gestito all'esterno di e prima di abilitare Crittografia dischi di Azure. È possibile creare uno snapshot del disco gestito dal portale oppure usare Backup di Azure. I backup garantiscono la disponibilità di un'opzione di ripristino nel caso si verifichi un errore imprevisto durante la crittografia. Dopo aver eseguito un backup, usare il cmdlet Set-AzVMDiskEncryptionExtension per crittografare i dischi gestiti specificando il -skipVmBackup parametro . Il comando Set-AzVMDiskEncryptionExtension non riesce nelle macchine virtuali basate su disco gestito fino a quando non si esegue un backup e si specifica questo parametro.

La crittografia o la disabilitazione della crittografia può causare il riavvio della macchina virtuale.

Usare Azure PowerShell per crittografare le macchine virtuali con dischi rigidi virtuali pre-crittografati

È possibile abilitare la crittografia del disco nel disco rigido virtuale crittografato usando il cmdlet Set-AzVMOSDisk di PowerShell. Questo esempio fornisce alcuni parametri comuni.

$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"

Abilitare la crittografia in un disco dati appena aggiunto

È possibile aggiungere un nuovo disco dati usando az vm disk attach o tramite il portale di Azure. Prima che sia possibile eseguire la crittografia, è necessario montare il disco appena collegato. È necessario richiedere la crittografia dell'unità dati perché l'unità non è utilizzabile mentre è in corso la crittografia.

Se la macchina virtuale è stata precedentemente crittografata con "All", il --volume-type parametro deve rimanere "All". Tale parametro include il disco del sistema operativo e il disco dati. Se la macchina virtuale è stata crittografata in precedenza con un tipo di volume "OS", modificare il --volume-type parametro in "All" in modo che sia il sistema operativo che il nuovo disco dati siano inclusi. Se la macchina virtuale è stata crittografata solo con il tipo di volume "Data", può rimanere "Data" come illustrato nell'esempio seguente. L'aggiunta e il collegamento di un nuovo disco dati a una macchina virtuale non sono condizioni sufficienti alla preparazione per la crittografia. È anche necessario formattare e montare correttamente il disco appena collegato all'interno della macchina virtuale prima di abilitare la crittografia. In Linux è necessario montare il disco in /etc/fstab con un nome di dispositivo a blocchi persistente.

A differenza della sintassi di PowerShell, l'interfaccia della riga di comando non richiede di fornire una versione della sequenza univoca quando si abilita la crittografia. L'interfaccia della riga di comando genera e usa automaticamente uno specifico valore di versione di sequenza univoco.

  • Crittografare i volumi di dati di una macchina virtuale in esecuzione:

    az vm encryption enable --resource-group "MyVirtualMachineResourceGroup" --name "MySecureVM" --disk-encryption-keyvault "MySecureVault" --volume-type "Data"
    
  • Crittografare i volumi di dati di una macchina virtuale in esecuzione usando la chiave 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"
    

Disabilitare la crittografia e rimuovere l'estensione di crittografia

È possibile disabilitare Crittografia dischi di Azure ed è possibile rimuovere l'estensione Crittografia dischi di Azure. La disabilitazione e la rimozione sono due operazioni distinte.

Per rimuovere Ade, disabilitare prima la crittografia e quindi rimuovere l'estensione. Se si rimuove l'estensione di crittografia senza disabilitare ADE, i dischi rimangono crittografati. Se si disabilita la crittografia dopo la rimozione dell'estensione, l'estensione viene reinstallata (per eseguire l'operazione di decrittografia) e deve essere rimossa una seconda volta.

Avviso

Non è possibile disabilitare la crittografia se il disco del sistema operativo è crittografato. I dischi del sistema operativo vengono crittografati quando l'operazione di crittografia originale specifica volumeType=ALL o volumeType=OS.

La disabilitazione della crittografia funziona solo quando i dischi dati sono crittografati, ma il disco del sistema operativo non lo è.

Disabilitare la crittografia

È possibile disabilitare la crittografia usando Azure PowerShell, il interfaccia della riga di comando di Azure o con un modello di Resource Manager. La disabilitazione della crittografia non rimuove l'estensione (vedere Rimuovere l'estensione di crittografia).

  • Disabilitare la crittografia del disco con Azure PowerShell: per disabilitare la crittografia, usare il cmdlet Disable-AzVMDiskEncryption.

    Disable-AzVMDiskEncryption -ResourceGroupName "MyVirtualMachineResourceGroup" -VMName "MySecureVM" -VolumeType "data"
    
  • Disabilitare la crittografia con l'interfaccia della riga di comando di Azure: per disabilitare la crittografia, usare il comando az vm encryption disable.

    az vm encryption disable --name "MySecureVM" --resource-group "MyVirtualMachineResourceGroup" --volume-type "data"
    
  • Disabilitare la crittografia con un modello di Resource Manager:

    1. Selezionare Deploy to Azure (Distribuisci in Azure) dal modello Disable disk encryption on running Linux VM (Disabilitare la crittografia del disco nell'esecuzione della macchina virtuale Linux).
    2. Selezionare la sottoscrizione, il gruppo di risorse, la posizione, la macchina virtuale, il tipo di volume, i termini legali e il contratto.
    3. Selezionare Acquista per disabilitare la crittografia del disco in una macchina virtuale Linux in esecuzione.

Avviso

Dopo l'avvio della decrittografia, non interferire con il processo.

Per controllare lo stato di avanzamento della decrittografia, usare il cmdlet Get-AzVMDiskEncryptionStatus di PowerShell o il comando az vm encryption show dell'interfaccia della riga di comando. Al termine del processo di decrittografia, è possibile rimuovere l'estensione di crittografia.

Rimuovere l'estensione di crittografia

Per decrittografare i dischi e rimuovere l'estensione di crittografia, è necessario disabilitare la crittografia prima di rimuovere l'estensione. Vedere Disabilitare la crittografia.

Usare Azure PowerShell o il interfaccia della riga di comando di Azure per rimuovere l'estensione di crittografia.

  • Rimuovere l'estensione di crittografia con Azure PowerShell: usare il cmdlet Remove-AzVMDiskEncryptionExtension.

    Remove-AzVMDiskEncryptionExtension -ResourceGroupName "MyVirtualMachineResourceGroup" -VMName "MySecureVM"
    
  • Rimuovere l'estensione di crittografia con il interfaccia della riga di comando di Azure: usare il comando az vm extension delete.

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

Passaggi successivi