Indipendentemente dal provider di chiavi utilizzato, con la Crittografia delle macchine virtuali di vSphere è possibile creare macchine virtuali crittografate e crittografare le macchine virtuali esistenti. Poiché tutti i file della macchina virtuale con informazioni sensibili sono crittografati, la macchina virtuale è protetta. Solo gli amministratori con privilegi di crittografia possono eseguire attività di crittografia e decrittografia.

Importante: Gli utenti di ESXi Shell dispongono anche dei privilegi per le operazioni crittografiche. Per ulteriori informazioni, vedere Prerequisiti e privilegi necessari per le attività di crittografia della macchina virtuale.

Che tipo di archiviazione è supportata dalla Crittografia delle macchine virtuali di vSphere

La Crittografia delle macchine virtuali di vSphere funziona con qualsiasi tipo di archiviazione supportata (NFS, iSCSI, Fibre Channel, archiviazione collegata direttamente e così via), incluso VMware vSAN. Per ulteriori informazioni sull'utilizzo della crittografia in un cluster vSAN, vedere la documentazione di Amministrazione di VMware vSAN.

La Crittografia delle macchine virtuali vSphere e vSAN utilizzano le stesse librerie di crittografia, ma hanno profili diversi. La crittografia della macchina virtuale è una crittografia a livello della macchina virtuale e vSAN è una crittografia a livello di datastore.

Chiavi di crittografia e provider di chiavi di vSphere

vSphere utilizza due livelli di crittografia sotto forma di chiave di crittografia chiave (KEK) e chiave di crittografia dati (DEK). In breve, un host ESXi genera una DEK per crittografare macchine virtuali e dischi. La KEK viene fornita da un server delle chiavi e crittografa (o esegue il wrapping) della DEK. La KEK crittografa la DEK utilizzando l'algoritmo AES256 e la DEK crittografa VMDK utilizzando l'algoritmo XTS-AES-256 (dimensioni della chiave 512 bit). In base al tipo di provider di chiavi, vengono utilizzati metodi diversi per creare e gestire DEK e KEK.

Il provider di chiavi standard funziona come segue.
  1. L'host ESXi genera e utilizza chiavi interne per crittografare macchine virtuali e dischi. Queste chiavi vengono utilizzate come DEK.
  2. vCenter Server richiede le chiavi al server di chiavi (KMS). Queste chiavi vengono utilizzate come KEK. vCenter Server archivia solo l'ID di ogni KEK, ma non la chiave stessa.
  3. ESXi utilizza la chiave KEK per crittografare le chiavi interne e archivia la chiave interna crittografata sul disco. ESXi non archivia la KEK sul disco. Se un host viene riavviato, vCenter Server richiede la KEK con l'ID corrispondente al server di chiavi e lo mette a disposizione di ESXi. ESXi può pertanto decrittografare le chiavi interne in base alle esigenze.

Il provider di chiavi attendibili vSphere Trust Authority funziona come segue.

  1. Il vCenter Server del cluster attendibile verifica se il provider di chiavi attendibile predefinito è accessibile all'host ESXi in cui deve essere creata la macchina virtuale crittografata.
  2. Il vCenter Server del cluster attendibile aggiunge il provider di chiavi attendibile alla macchina virtuale ConfigSpec.
  3. La richiesta di creazione della macchina virtuale viene inviata all'host ESXi.
  4. Se un token di attestazione non è già a disposizione dell'host ESXi, ne viene richiesto uno al Servizio di attestazione.
  5. Il Servizio del provider di chiavi convalida il token di attestazione e crea una KEK da inviare all'host ESXi. La KEK viene crittografata con la chiave primaria configurata sul provider di chiavi. Il testo della crittografia KEK e il testo normale KEK vengono restituiti all'Host attendibile.
  6. L'host ESXi genera una DEK o chiave di crittografia dati per crittografare i dischi della macchina virtuale.
  7. KEK viene utilizzato per crittografare la chiave generata dall'host ESXi e il testo cifrato dal provider di chiavi viene archiviato insieme ai dati crittografati.
  8. La macchina virtuale è criptata e scritta nell'archivio.
Nota:

Gli host ESXi nei cluster vSphere contengono la KEK per le macchine virtuali crittografate nella memoria dell'host per abilitare le funzionalità di disponibilità come High Availability, vMotion, DRS e così via. Quando si elimina una macchina virtuale o se ne annulla la registrazione, gli host ESXi nel cluster eliminano la KEK dalla loro memoria. Gli host ESXi non possono quindi più utilizzare la KEK. Questo comportamento è lo stesso per i provider di chiavi standard e i provider di chiavi attendibili.

vSphere Native Key Provider funziona come segue.

  1. Quando si crea il provider di chiavi, vCenter Server genera una chiave primaria ed esegue il push agli host ESXi nel cluster. (Nessun server di chiavi esterno coinvolto.)
  2. Gli host ESXi generano una DEK su richiesta.
  3. Quando si esegue un'attività di crittografia, i dati vengono crittografati mediante DEK.

    Le DEK crittografate vengono archiviate insieme ai dati crittografati.

  4. Quando i dati vengono decrittografati, viene utilizzata la chiave primaria per decrittografare la DEK, quindi i dati.

Quali componenti vengono crittografati dalla Crittografia delle macchine virtuali di vSphere?

La Crittografia della macchina virtuale vSphere supporta la crittografia dei file della macchina virtuale, dei file del disco virtuale e dei file del dump principale.
File della macchina virtuale
La maggior parte dei file delle macchine virtuali, in particolare i dati guest non archiviati nel file VMDK, sono crittografati. Questo set di file include, a titolo esemplificativo e non limitativo, i file NVRAM, VSWP e VMSN. La chiave del provider di chiavi sblocca un bundle crittografato nel file VMX che contiene chiavi interne e altri segreti. Il recupero della chiave funziona come segue, in funzione del provider di chiavi:
  • Provider di chiavi standard: vCenter Server gestisce le chiavi provenienti dal server di chiavi e gli host Il ESXi non possono accedere direttamente al provider di chiavi. Gli host attendono che vCenter Server esegua il push delle chiavi.
  • Provider di chiavi attendibili e vSphere Native Key Provider: gli host ESXi accedono direttamente ai provider di chiavi, quindi recuperano le chiavi richieste direttamente dal servizio vSphere Trust Authority o dal vSphere Native Key Provider.
Quando si utilizza il vSphere Client per creare una macchina virtuale crittografata, è possibile crittografare e decrittografare i dischi virtuali separatamente dai file delle macchine virtuali. Tutti i dischi virtuali sono crittografati per impostazione predefinita. Per altre attività di crittografia, come la crittografia di una macchina virtuale esistente, è possibile crittografare e decrittografare i dischi virtuali separatamente dai file della macchina virtuale.
Nota: Non è possibile associare un disco virtuale criptato a una macchina virtuale che non è criptata.
File di disco virtuale
I dati contenuti in un file di disco virtuale crittografato (VMDK) non vengono mai scritti con testo non crittografato nell'archivio o nel disco fisico e non vengono mai trasmessi in rete con testo non crittografato. Il file descrittore VMDK è principalmente non crittografato, ma contiene un ID chiave per la KEK e la chiave interna (DEK) nel bundle crittografato.
È possibile utilizzare vSphere Client o vSphere API per eseguire un'operazione di ricrittografia superficiale con una nuova chiave KEK oppure utilizzare vSphere API per eseguire un'operazione di ricrittografia completa con una nuova chiave interna.
Dump principali
I dump principali in un host ESXi in cui è abilitata la modalità di crittografia sono sempre crittografati. Vedere Crittografia delle macchine virtuali vSphere e dump principale. I dump principali nel sistema vCenter Server non sono crittografati. Proteggere l'accesso al sistema vCenter Server.
File di swap della macchina virtuale
Il file di swap della macchina virtuale viene crittografato ogni volta che si aggiunge un vTPM a una macchina virtuale. Negli ambienti con RAM insufficiente può verificarsi il paging relativo alla crittografia che può influire sulle prestazioni.
vTPM
Quando si configura un vTPM, i file della macchina virtuale vengono crittografati, ma i dischi no. È possibile scegliere di aggiungere la crittografia in modo esplicito per la macchina virtuale e i relativi dischi. Per ulteriori informazioni, vedere Protezione delle macchine virtuali con Trusted Platform Module virtuale.
Nota: Per informazioni su alcune limitazioni relative ai dispositivi e alle funzionalità con cui può interagire la Crittografia delle macchine virtuali vSphere, vedere Interoperabilità della crittografia delle macchine virtuali.

Quali componenti non vengono crittografati dalla Crittografia delle macchine virtuali di vSphere?

Alcuni dei file associati a una macchina virtuale non sono crittografati o sono parzialmente crittografati.
File di registro
I file di registro non sono crittografati perché non contengono dati sensibili.
File di configurazione delle macchine virtuali
La maggior parte delle informazioni di configurazione delle macchine virtuali, archiviate nei file VMX e VMSD, non è crittografata.
File descrittore del disco virtuale
Per supportare la gestione del disco senza chiave, la maggior parte del file descrittore del disco virtuale non è crittografato.

Privilegi necessari per eseguire operazioni crittografiche

Solo gli utenti a cui sono assegnati i privilegi delle Operazioni crittografiche possono eseguire operazioni crittografiche. Il set di privilegi è dettagliato. Il ruolo di amministratore di sistema predefinito include tutti i privilegi delle Operazioni crittografiche. Il ruolo di amministratore senza crittografia supporta tutti i privilegi di amministratore, ad eccezione dei privilegi di Operazioni crittografiche.

Oltre a utilizzare i privilegi Crittografo.*, vSphere Native Key Provider può utilizzare il privilegio Cryptographer.ReadKeyServersInfo, specifico per Provider di chiavi nativi vSphere.

Per ulteriori informazioni, vedere Privilegi delle operazioni crittografiche.

È possibile creare ruoli personalizzati aggiuntivi, ad esempio per consentire a un gruppo di utenti di crittografare le macchine virtuali, impedendo loro tuttavia di decrittografarle.

Come eseguire operazioni crittografiche

Il vSphere Client supporta molte delle operazioni crittografiche. Per altre attività, è possibile utilizzare PowerCLI o vSphere API.

Tabella 1. Interfacce per l'esecuzione di Operazioni crittografiche
Interfaccia Operazioni Informazioni
vSphere Client Creare una macchina virtuale crittografata

Crittografare e decrittografare le macchine virtuali

Eseguire una ri-crittografia superficiale di una macchina virtuale (utilizzare una KEK diversa)

Il presente documento
PowerCLI Creare una macchina virtuale crittografata

Crittografare e decrittografare le macchine virtuali

Configurare vSphere Trust Authority

Riferimento Cmdlets VMware PowerCLI
SDK per vSphere Web Services Creare una macchina virtuale crittografata

Crittografare e decrittografare le macchine virtuali

Eseguire una ri-crittografia approfondita di una macchina virtuale (utilizzare una DEK diversa)

Eseguire una ri-crittografia superficiale di una macchina virtuale (utilizzare una KEK diversa)

Guida alla programmazione di vSphere Web Services SDK

Riferimento API per Servizi Web di vSphere

crypto-util Decrittografare dump principali crittografati

Verificare se i file sono crittografati

Eseguire altre attività di gestione direttamente nell'host ESXi

Guida della riga di comando

Crittografia delle macchine virtuali vSphere e dump principale

Come crittografare nuovamente (ridefinire la chiave) una macchina virtuale crittografata

È possibile crittografare nuovamente (ovvero ridefinire la chiave) una macchina virtuale con nuove chiavi, ad esempio nel caso in cui una chiave scada o venga danneggiata. Sono disponibili le seguenti opzioni per la nuova crittografia.

  • Una nuova crittografia superficiale che sostituisce solo la KEK (Key Encryption Key)
  • Una nuova crittografia approfondita che sostituisce sia la DEK (Disk Encryption Key) sia la KEK (Key Encryption Key)

Una ri-crittografia approfondita richiede che la macchina virtuale sia spenta e non contenga snapshot. È possibile eseguire un'operazione di riesecuzione della crittografia superficiale se la macchina virtuale è accesa e se sono presenti snapshot nella macchina virtuale. Una nuova crittografia superficiale di una macchina virtuale crittografata con snapshot è consentita solo in un singolo ramo di snapshot (catena di dischi). I rami di snapshot multipli non sono supportati. Inoltre, una ri-crittografia superficiale non è supportata in un clone collegato di una macchina virtuale o di un disco. Se la nuova crittografia superficiale produce un errore prima che vengano aggiornati tutti i collegamenti nella catena con la nuova KEK, sarà comunque possibile accedere alla macchina virtuale crittografata se sono presenti le KEK nuove e quelle precedenti. Tuttavia, è meglio eseguire nuovamente l'operazione di ri-crittografia superficiale prima di eseguire qualsiasi operazione di snapshot.

È possibile eseguire la ridefinizione della chiave di una macchina virtuale utilizzando vSphere Client, la CLI o l'API. Vedere Ridefinizione della chiave di una macchina virtuale crittografata mediante vSphere Client, Ridefinizione della chiave di una macchina virtuale crittografata mediante la CLI e Guida alla programmazione di vSphere Web Services SDK.