Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Segurança da Imagem

SUSE Virtualization permite que você criptografe e descriptografe imagens de máquinas virtuais. O mecanismo de criptografia utiliza o módulo do kernel dm_crypt e o utilitário de linha de comando cryptsetup.

Este recurso suporta apenas o Longhorn V1 Data Engine. Você não pode criptografar e descriptografar imagens que estão armazenadas em outras soluções de armazenamento.

Pré-requisitos

Prepare os seguintes recursos:

  • Máquina virtual de origem image: You can carregar ou criar uma imagem usando qualquer um dos métodos suportados.

    Não carregue uma imagem criptografada.

  • Segredo: Um segredo do Kubernetes é usado como a frase de acesso do dm_crypt. Você deve especificar o valor do campo CRYPTO_KEY_VALUE. Todos os outros campos são fixos.

    create encryption used secret

    Exemplo de um segredo:

    apiVersion: v1
    kind: Secret
    metadata:
      name: encryption
      namespace: default
    data:
      CRYPTO_KEY_CIPHER: aes-xts-plain64
      CRYPTO_KEY_HASH: sha256
      CRYPTO_KEY_PROVIDER: secret
      CRYPTO_KEY_SIZE: 256
      CRYPTO_KEY_VALUE: "Your encryption passphrase"
      CRYPTO_PBKDF: argon2i

    O exemplo contém o código YAML padrão para segredos do Kubernetes. Além disso, você pode usar opções de criptografia para o modo LUKS, que é um modo de operação do cryptsetup. Harvester v1.4.1 e versões posteriores suportam essas opções, mas você deve verificar se elas são suportadas pelos seus nós.

    Opção Valores Possíveis

    CRYPTO_KEY_CIPHER

    aes-xts-plain, aes-xts-plain64, aes-cbc-plain, aes-cbc-plain64, aes-cbc-essiv:sha256

    CRYPTO_KEY_HASH

    sha256, sha384, sha512

    CRYPTO_KEY_SIZE

    256, 384, 512

    CRYPTO_PBKDF

    argon2i, argon2id, pbkdf2

    Você pode criar um segredo no namespace do sistema usando kubectl e a interface SUSE Virtualization (Editar como YAML recurso). Recursos no namespace do sistema não são exibidos na tela Segredos.

  • Classe de Armazenamento : As imagens são criptografadas usando Longhorn, portanto, os campos obrigatórios devem ser passados para o Longhorn CSI Driver. Você pode especificar o segredo de criptografia ao criar um StorageClass. Para mais informações, veja Image StorageClass.

    create storage class

    Exemplo de um StorageClass:

    allowVolumeExpansion: true
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: encryption
    parameters:
      csi.storage.k8s.io/node-publish-secret-name: encryption
      csi.storage.k8s.io/node-publish-secret-namespace: default
      csi.storage.k8s.io/node-stage-secret-name: encryption
      csi.storage.k8s.io/node-stage-secret-namespace: default
      csi.storage.k8s.io/provisioner-secret-name: encryption
      csi.storage.k8s.io/provisioner-secret-namespace: default
      encrypted: "true"
      migratable: "true"
      numberOfReplicas: "3"
      staleReplicaTimeout: "2880"
    provisioner: driver.longhorn.io
    reclaimPolicy: Delete
    volumeBindingMode: Immediate

    Você pode criar um segredo no namespace do sistema usando kubectl e a interface SUSE Virtualization (Editar como YAML recurso). Recursos no namespace do sistema não são exibidos na tela Segredos.

Criptografar uma Imagem de Máquina Virtual

  1. Na interface do SUSE Virtualization, vá para Images.

  2. Clique em Criar.

  3. Especifique um namespace e um nome.

  4. Na aba Basics, selecione Encrypt e, em seguida, selecione uma imagem de origem.

    create encrypted image
  5. Na aba Storage, selecione um StorageClass que inclua campos relacionados à criptografia.

    SUSE Virtualization passa os campos necessários para o Longhorn.

    select encryption storage class
  6. Clique em Criar.

Descriptografar uma Imagem de Máquina Virtual

  1. Na interface do SUSE Virtualization, vá para Images.

  2. Clique em Criar.

  3. Especifique um namespace e um nome.

  4. Na aba Basics, selecione Decrypt e, em seguida, selecione uma imagem de origem.

    create decrypted image
  5. Na aba Storage, selecione harvester-longhorn (Padrão) ou outro StorageClass comumente usado.

    SUSE Virtualization utiliza o StorageClass da imagem de origem que você deseja descriptografar.

    select normal storage class
  6. Clique em Criar.

Use uma Imagem com Volumes Criptografados

Você deve selecionar a imagem que deseja usar ao criar uma máquina virtual.

create

A tela Virtual Machines exibe os seguintes ícones e mensagens quando os volumes usados por máquinas virtuais estão criptografados.

case1
case2

Para determinar quais volumes estão criptografados, verifique a aba Volumes na tela de detalhes da Virtual Machine.

volume detail

Uso avançado com integração SUSE Rancher Prime

O segredo é uma string codificada em Base64 não criptografada. Para manter o segredo seguro, você pode usar projetos e namespaces para isolar permissões. Para mais informações, consulte Multi-Tenancy.

Limitações

Você não pode executar as seguintes ações:

  • Exportar uma nova imagem a partir de uma imagem criptografada

  • Baixar uma imagem criptografada

  • Enviar uma imagem criptografada