Skip to Content

Criptografia de disco

Warning

Restrição de atualização 26.10 (verificada em 18/10/2026): Os sistemas FDE suportados por FDE não podem ser atualizados a partir de 26.04 no lançamento. LUKS genéricos e Ubuntu TPM/FDE usam caminhos de gerenciamento diferentes; não aplique rotação de chave genérica ou edições GRUB a TPM/FDE. Consulte Problemas conhecidos do 26.10.

A criptografia de disco é uma medida crítica para proteger a segurança dos dados. Mesmo que um dispositivo seja perdido ou roubado, os dados criptografados não poderão ser lidos por pessoas não autorizadas. Este artigo aborda várias opções de criptografia de disco no Ubuntu 26.04.

Caution

A senha criptografada é a única credencial para acessar seus dados. Se você esquecer a senha e não tiver nenhum arquivo de chave de backup ou backup de cabeçalho LUKS, os dados criptografados serão permanentemente irrecuperáveis. Certifique-se de salvar sua senha em um gerenciador de senhas e armazenar um backup do cabeçalho LUKS em um local externo seguro.

Criptografia de disco completo LUKS

LUKS (Linux Unified Key Setup) é a solução padrão de criptografia de disco para Linux.

Habilitando criptografia de disco completo durante a instalação

Habilitar a criptografia completa do disco durante a instalação do Ubuntu 26.04 é a abordagem mais simples:

  1. Inicie o instalador
  2. Na etapa “Tipo de instalação”, selecione “Recursos avançados”
  3. Marque “Usar LVM” e “Criptografar a instalação para segurança”
  4. Defina uma senha de criptografia (lembre-se dela)
  5. Conclua a instalação

Após a instalação, você precisará inserir a senha de criptografia a cada inicialização para desbloquear o disco.

Criptografia de disco completo apoiada por TPM (FDE apoiada por FDE)

O instalador de desktop Ubuntu 26.04 suporta criptografia de disco completo suportada por TPM: a chave de criptografia é selada no chip TPM 2.0 da placa-mãe e vinculada às medições de inicialização segura. Na inicialização, se a integridade do sistema estiver intacta, o TPM libera a chave para desbloquear o disco automaticamente, sem exigir senha todas as vezes.

Habilitando durante a instalação

  1. Na etapa “Tipo de instalação” do instalador, habilite a criptografia completa do disco
  2. Se um TPM 2.0 utilizável for detectado e a inicialização segura estiver habilitada, o instalador oferece uma opção para “desbloquear com o TPM deste computador”
  3. O instalador gera uma chave de recuperação — armazene-a offline; é o único substituto quando TPM não consegue desbloquear o disco
Caution

A chave selada TPM está vinculada às medições de inicialização. Substituir a placa-mãe, limpar TPM, desabilitar a inicialização segura ou uma atualização importante de firmware pode fazer com que TPM se recuse a desbloquear. Nesse caso, você deve usar a chave de recuperação para desbloquear manualmente ou os dados ficarão inacessíveis. Mantenha a chave de recuperação em um local seguro, separado do dispositivo.

Note

A partir de 26.04.1, o PIN TPM/FDE obrigatório pode ser desabilitado em hardware cujo firmware não pode ser verificado automaticamente. A documentação oficial alerta que isso diminui a proteção contra adulteração de firmware, então decida com base no seu modelo de ameaça.

Gerenciando Ubuntu TPM/FDE

Gerencie o PIN, a senha e a chave de recuperação por meio de Security Center. Os comandos genéricos de reinscrição systemd-cryptenroll não são instruções para manter Ubuntu TPM/FDE gerenciado pelo instalador. Não exclua slots de chave usando um exemplo /dev/sda3 fixo.

Inspecione o layout de armazenamento com este comando somente leitura; não estabelece que TPM/FDE está habilitado:

lsblk -f

Siga a documentação oficial de criptografia baseada em hardware  para gerenciamento de chaves. As verificações LUKS abaixo aplicam-se apenas a volumes LUKS comuns gerenciados de forma independente; substitua os nomes dos dispositivos por dispositivos reais verificados.

Verificando o status da criptografia

# View LUKS devices sudo dmsetup status # View LUKS details sudo cryptsetup luksDump /dev/sda3 # View encrypted volume status sudo cryptsetup status luks-volume-name # View block devices and encryption relationships lsblk -f

Criptografando dispositivos de armazenamento externo

Criptografando uma unidade USB com LUKS

# Confirm the device name (very important -- avoid encrypting the wrong device) lsblk # Encrypt the partition (this will erase all data!) sudo cryptsetup luksFormat /dev/sdb1 # Confirm by typing YES (uppercase), then set a password # Open the encrypted partition sudo cryptsetup luksOpen /dev/sdb1 encrypted_usb # Format sudo mkfs.ext4 /dev/mapper/encrypted_usb # Mount sudo mkdir -p /mnt/encrypted sudo mount /dev/mapper/encrypted_usb /mnt/encrypted # Unmount when done sudo umount /mnt/encrypted sudo cryptsetup luksClose encrypted_usb

Uso diário de dispositivos USB criptografados

No ambiente de desktop GNOME, um prompt de senha aparecerá automaticamente quando você conectar um dispositivo USB criptografado. Operações de linha de comando:

# Open the encrypted device sudo cryptsetup luksOpen /dev/sdb1 encrypted_usb # Mount sudo mount /dev/mapper/encrypted_usb /mnt/encrypted # ... use ... # Unmount and close sudo umount /mnt/encrypted sudo cryptsetup luksClose encrypted_usb

Gerenciamento de chaves LUKS

Adicionando Chaves

Ubuntu 26.04 usa LUKS2 por padrão, que suporta até 32 slots de chave (LUKS1 suporta apenas 8, 0-7):

# Add a new password sudo cryptsetup luksAddKey /dev/sda3 # You must first enter an existing password, then enter the new one # Add a key file sudo dd if=/dev/urandom of=/root/luks-keyfile bs=4096 count=1 sudo chmod 600 /root/luks-keyfile sudo cryptsetup luksAddKey /dev/sda3 /root/luks-keyfile

Removendo Chaves

# Remove a specific key slot sudo cryptsetup luksKillSlot /dev/sda3 1 # Remove a specific password (enter the password to remove) sudo cryptsetup luksRemoveKey /dev/sda3

Visualizando o status do slot de chave

sudo cryptsetup luksDump /dev/sda3 | grep "Key Slot" # Example output: # Key Slot 0: ENABLED # Key Slot 1: ENABLED # Key Slot 2: DISABLED # ...

Alterando uma senha

# Change an existing password sudo cryptsetup luksChangeKey /dev/sda3 # Enter the old password first, then enter the new one

Desbloqueio automático com arquivos principais

Configurando o desbloqueio automático para partições de dados

Se o disco do sistema já estiver criptografado, você poderá usar um arquivo de chave para desbloquear automaticamente as partições de dados depois que o disco do sistema for desbloqueado:

# Generate a key file sudo dd if=/dev/urandom of=/root/.luks-data-key bs=4096 count=1 sudo chmod 400 /root/.luks-data-key # Add the key file to the LUKS device sudo cryptsetup luksAddKey /dev/sdb1 /root/.luks-data-key # Get the UUID sudo blkid /dev/sdb1 # Configure /etc/crypttab sudo nano /etc/crypttab

Adicione a /etc/crypttab:

# <name> <device> <key file> <options> data_encrypted UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /root/.luks-data-key luks

Adicione configuração de montagem a /etc/fstab:

/dev/mapper/data_encrypted /mnt/data ext4 defaults 0 2
# Test the configuration sudo cryptdisks_start data_encrypted sudo mount /mnt/data

Criptografando o diretório inicial

Usando fscrypt para criptografia de diretório inicial

Ubuntu 26.04 recomenda fscrypt para criptografia em nível de diretório:

# Install fscrypt sudo apt install fscrypt libpam-fscrypt # Initialize fscrypt (on the filesystem) sudo fscrypt setup sudo fscrypt setup /home # Encrypt a new user's home directory sudo fscrypt encrypt /home/newuser --user=newuser

Habilitando criptografia para diretórios existentes

# Create an encrypted directory mkdir ~/Private fscrypt encrypt ~/Private # Choose a protection method (password, PAM login, etc.) # PAM login protection is recommended -- auto-unlocks on login # Lock the directory fscrypt lock ~/Private # Unlock the directory fscrypt unlock ~/Private # Check encryption status fscrypt status ~/Private

Troca de criptografia

Criptografando Swap com uma Chave Aleatória

# Edit /etc/crypttab sudo nano /etc/crypttab

Adicionar:

cryptswap /dev/sdXN /dev/urandom swap,cipher=aes-xts-plain64,size=256

Atualizar /etc/fstab:

/dev/mapper/cryptswap none swap sw 0 0

Usando um arquivo de troca (em um disco criptografado com LUKS)

Se o sistema já usa criptografia de disco completo LUKS, o arquivo de troca já está protegido por criptografia:

# Create a swap file sudo fallocate -l 4G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile # Persist echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Otimização de desempenho LUKS

Verificando o desempenho da criptografia

# View current encryption algorithm sudo cryptsetup luksDump /dev/sda3 | grep "Cipher" # Benchmark encryption performance sudo cryptsetup benchmark # Example output: # PBKDF2-sha1 1200000 iterations per second # PBKDF2-sha256 800000 iterations per second # Algorithm | Key | Encryption | Decryption # aes-cbc 128b 1200.0 MiB/s 3500.0 MiB/s # aes-cbc 256b 900.0 MiB/s 2800.0 MiB/s # aes-xts 256b 2500.0 MiB/s 2600.0 MiB/s # aes-xts 512b 2100.0 MiB/s 2200.0 MiB/s

Opções de otimização

# Use AES-NI hardware acceleration (most modern CPUs support it) grep aes /proc/cpuinfo # Specify high-performance parameters when creating an encrypted partition sudo cryptsetup luksFormat --type luks2 --cipher aes-xts-plain64 --key-size 512 --hash sha256 /dev/sdb1

Fazendo backup do cabeçalho de criptografia

A corrupção do cabeçalho LUKS pode levar à perda completa de dados; sempre faça backup:

# Back up the LUKS header sudo cryptsetup luksHeaderBackup /dev/sda3 --header-backup-file /safe/location/luks-header-backup # Restore the LUKS header (for data recovery) sudo cryptsetup luksHeaderRestore /dev/sda3 --header-backup-file /safe/location/luks-header-backup

Armazene o backup do cabeçalho LUKS em um local externo seguro (como um dispositivo USB em um cofre).

Apagamento de dados de emergência

Se você precisar destruir dados criptografados com urgência:

# Wipe the LUKS header (data will be permanently unrecoverable!) sudo cryptsetup luksErase /dev/sda3 # Or overwrite the LUKS header area sudo dd if=/dev/urandom of=/dev/sda3 bs=1M count=2

Isso leva apenas alguns segundos porque você só precisa destruir as chaves de criptografia e não apagar todos os dados.

Solução de problemas

Senha esquecida

Se você esqueceu a senha do LUKS e não possui um arquivo de chave de backup, os dados não poderão ser recuperados. Medidas preventivas:

  • Salve a senha de criptografia em um gerenciador de senhas
  • Configure vários slots de chave como backups
  • Faça backup do cabeçalho LUKS

Não é possível desbloquear na inicialização

# Boot from a Live USB # Open the encrypted partition sudo cryptsetup luksOpen /dev/sda3 recovery # Mount sudo mount /dev/mapper/recovery /mnt # Check and repair sudo fsck /dev/mapper/recovery # When done sudo umount /mnt sudo cryptsetup luksClose recovery