Criptografia de disco
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.
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:
- Inicie o instalador
- Na etapa “Tipo de instalação”, selecione “Recursos avançados”
- Marque “Usar LVM” e “Criptografar a instalação para segurança”
- Defina uma senha de criptografia (lembre-se dela)
- 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
- Na etapa “Tipo de instalação” do instalador, habilite a criptografia completa do disco
- 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”
- O instalador gera uma chave de recuperação — armazene-a offline; é o único substituto quando TPM não consegue desbloquear o disco
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.
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 -fSiga 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 -fCriptografando 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_usbUso 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_usbGerenciamento 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-keyfileRemovendo 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/sda3Visualizando 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 oneDesbloqueio 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/crypttabAdicione a /etc/crypttab:
# <name> <device> <key file> <options>
data_encrypted UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /root/.luks-data-key luksAdicione 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/dataCriptografando 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=newuserHabilitando 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 ~/PrivateTroca de criptografia
Criptografando Swap com uma Chave Aleatória
# Edit /etc/crypttab
sudo nano /etc/crypttabAdicionar:
cryptswap /dev/sdXN /dev/urandom swap,cipher=aes-xts-plain64,size=256Atualizar /etc/fstab:
/dev/mapper/cryptswap none swap sw 0 0Usando 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/fstabOtimizaçã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/sOpçõ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/sdb1Fazendo 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-backupArmazene 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=2Isso 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