Encriptar discos de VM existentes

Concluído

Suponha que sua empresa decida implementar o Azure Disk Encryption (ADE) em todas as máquinas virtuais. Você precisa avaliar como implantar a criptografia em volumes de máquina virtual (VM) existentes. Aqui, examinamos os requisitos para o ADE e as etapas envolvidas na criptografia de discos em VMs Linux e Windows existentes. Na próxima unidade, você trabalha através do processo de criptografia de discos VM existentes.

Pré-requisitos do Azure Disk Encryption

Para poder encriptar os disco de VMs, tem de:

  1. Criar um cofre de chaves.
  2. Configurar a política de acesso do cofre de chaves para suportar a encriptação de discos.
  3. Utilizar o cofre de chaves para armazenar as chaves de encriptação do ADE.

Azure Key Vault

As chaves de criptografia que o ADE usa podem ser armazenadas no Cofre de Chaves do Azure. O Azure Key Vault é uma ferramenta para armazenar e aceder a segredos em segurança. Um segredo é qualquer coisa à qual você deseja controlar rigorosamente o acesso, como chaves de API, senhas ou certificados. O Azure Key Vault fornece armazenamento seguro altamente disponível e escalável, conforme definido nos HSMs (Hardware Security Modules) validados pelos Padrões Federais de Processamento de Informações (FIPS) 140-2 Nível 2. Com o Key Vault, mantém o controlo total das chaves utilizadas para encriptar os dados e pode gerir e auditar a utilização de chaves.

Nota

O Azure Disk Encryption requer que o cofre de chaves e as VMs estejam na mesma região do Azure. Isto garante que os segredos de encriptação não ultrapassem limites regionais.

Pode configurar e gerir o seu cofre de chaves com:

PowerShell

New-AzKeyVault -Location <location> `
    -ResourceGroupName <resource-group> `
    -VaultName "myKeyVault" `
    -EnabledForDiskEncryption

CLI do Azure

az keyvault create \
    --name "myKeyVault" \
    --resource-group <resource-group> \
    --location <location> \
    --enabled-for-disk-encryption True

Portal do Azure

Um Cofre da Chave do Azure é um recurso que você pode criar no portal do Azure usando o processo normal de criação de recursos.

  1. No menu do portal do Azure ou a partir da Home Page, selecione Criar um recurso.

  2. Na caixa de pesquisa, procure e selecione Cofre da Chave. O painel Cofre da Chave é exibido.

  3. Selecione Criar. O painel Criar um cofre de chaves é exibido.

  4. Na guia Noções básicas, insira os seguintes valores para cada configuração.

    Definição Value
    Detalhes do projeto
    Subscrição Selecione a assinatura na qual colocar o cofre de chaves (o padrão é sua assinatura atual).
    Grupo de recursos Selecione um grupo de recursos existente ou crie um novo.
    Detalhes da instância
    Nome do Key Vault Introduza um nome para o cofre de chaves.
    País/Região Selecione a região em que sua VM reside.
    Escalão de preço Standard. Você pode selecionar Standard ou Premium para o nível de preço. A principal diferença é que a camada Premium permite chaves com criptografia de hardware.

    Captura de ecrã a mostrar o painel Cofre da chave.

  5. Selecione Avançar para ir para a guia Configuração do Access. Você deve alterar as políticas de acesso para oferecer suporte à criptografia de disco. Por padrão, ele adiciona sua conta à política.

  6. Na guia Configuração do Access, insira o seguinte valor para a configuração.

    Definição Value
    Acesso aos recursos Marque a caixa para Criptografia de Disco do Azure para criptografia de volume. Você pode remover sua conta se quiser, pois não é necessário se você só pretende usar o cofre de chaves para criptografia de disco.
  7. Selecione Rever + criar.

  8. Depois que a validação for aprovada, para criar o novo Cofre de Chaves, selecione Criar.

Ativar políticas de acesso no cofre de chaves

O Azure precisa de aceder às chaves de encriptação ou aos segredos no cofre de chaves para que fiquem disponíveis para a VM para o arranque e a desencriptação dos volumes. Você habilitou esse acesso nas etapas anteriores quando alterou a política de acesso.

Há três políticas que você pode ativar:

  • Criptografia de disco: necessária para a criptografia de disco do Azure.
  • Implantação: (Opcional) Permite que o Microsoft.Compute provedor de recursos recupere segredos desse cofre de chaves quando esse cofre de chaves é referenciado na criação de recursos. Por exemplo, ao criar uma VM.
  • Implantação de modelo: (Opcional) Permite que o Azure Resource Manager obtenha segredos desse cofre de chaves quando esse cofre de chaves é referenciado em uma implantação de modelo.

Veja a seguir como ativar a política de encriptação de discos. As outras duas políticas são semelhantes, mas usam bandeiras diferentes.

Set-AzKeyVaultAccessPolicy -VaultName <keyvault-name> -ResourceGroupName <resource-group> -EnabledForDiskEncryption
az keyvault update --name <keyvault-name> --resource-group <resource-group> --enabled-for-disk-encryption true

Encriptar um disco de VM existente

Depois de configurar o cofre de chaves, você pode criptografar a VM usando a CLI do Azure ou o Azure PowerShell. Na primeira vez que encripta uma VM do Windows, pode optar por encriptar todos os discos ou apenas o disco do SO. Em algumas distribuições Linux, apenas os discos de dados podem ser criptografados. Para serem elegíveis para encriptação, os discos do Windows têm de ser formatados como volumes NTFS (New Technology File System).

Aviso

Tem de tirar um instantâneo ou fazer uma cópia de segurança dos discos geridos para poder ativar a encriptação. O sinalizador a seguir SkipVmBackup informa à ferramenta que o backup foi concluído em discos gerenciados. Sem o backup, você não poderá recuperar a VM se a criptografia falhar por algum motivo.

Para habilitar a criptografia usando o PowerShell, execute o Set-AzVmDiskEncryptionExtension cmdlet.


Set-AzVmDiskEncryptionExtension `
    -ResourceGroupName <resource-group> `
    -VMName <vm-name> `
    -VolumeType [All | OS | Data]
    -DiskEncryptionKeyVaultId <keyVault.ResourceId> `
    -DiskEncryptionKeyVaultUrl <keyVault.VaultUri> `
     -SkipVmBackup

Para habilitar a criptografia usando a CLI do Azure, execute o az vm encryption enable comando e especifique o volume que você deseja criptografar usando o --volume-type [all | os | data] parâmetro. Aqui está um exemplo de criptografia de todos os volumes para uma máquina virtual:

az vm encryption enable \
    --resource-group <resource-group> \
    --name <vm-name> \
    --disk-encryption-keyvault <keyvault-name> \
    --volume-type all

Ver estado do disco

Pode verificar se discos específicos estão encriptados.

Get-AzVmDiskEncryptionStatus  -ResourceGroupName <resource-group> -VMName <vm-name>
az vm encryption show --resource-group <resource-group> --name <vm-name>

Ambos os comandos retornam o status de cada disco conectado à VM especificada.

Desencriptar unidades

Para reverter a criptografia por meio do PowerShell, execute o Disable-AzVMDiskEncryption cmdlet.

Disable-AzVMDiskEncryption -ResourceGroupName <resource-group> -VMName <vm-name>

Para a CLI do Azure, execute o comando vm encryption disable.

az vm encryption disable --resource-group <resource-group> --name <vm-name>

Esses comandos desabilitam a criptografia para volumes do tipo todos para a VM especificada. Assim como a versão de criptografia, para decidir quais discos descriptografar, você pode especificar um -VolumeType parâmetro [All | OS | Data]. Assumirá como predefinição All se não forem indicados.

Aviso

A desativação da encriptação dos discos de dados numa VM do Windows quando os discos do SO e de dados foram encriptados não funciona conforme esperado. Em vez disso, tem de desativar a encriptação em todos os discos.

No próximo exercício, você experimenta alguns desses comandos em uma nova VM.