Pesquisa de site

Como configurar sistemas de arquivos criptografados e trocar espaço usando a ferramenta ‘Cryptsetup’ no Linux – Parte 3


Um LFCE (abreviação de Linux Foundation Certified Engineer) é treinado e tem experiência para instalar, gerenciar e solucionar problemas de serviços de rede em sistemas Linux, e é responsável pelo projeto, implementação e manutenção contínua da arquitetura do sistema.

Apresentando o Programa de Certificação Linux Foundation (LFCE).

A ideia por trás da criptografia é permitir que apenas pessoas confiáveis acessem seus dados confidenciais e protegê-los de cair em mãos erradas em caso de perda ou roubo de sua máquina/disco rígido.

Em termos simples, uma chave é usada para “bloquear” o acesso às suas informações, para que elas fiquem disponíveis quando o sistema estiver em execução e desbloqueadas por um usuário autorizado. Isso implica que se uma pessoa tentar examinar o conteúdo do disco (conectando-o ao seu próprio sistema ou inicializando a máquina com um LiveCD/DVD/USB), ela encontrará apenas dados ilegíveis em vez dos arquivos reais.

Neste artigo discutiremos como configurar sistemas de arquivos criptografados com dm-crypt (abreviação de mapeador de dispositivos e criptografia), a ferramenta padrão de criptografia em nível de kernel. Observe que, como dm-crypt é uma ferramenta em nível de bloco, ela só pode ser usada para criptografar dispositivos completos, partições ou dispositivos de loop (não funcionará em arquivos ou diretórios normais).

Preparando uma unidade/partição/dispositivo de loop para criptografia

Como iremos limpar todos os dados presentes na unidade escolhida (/dev/sdb), primeiro de tudo, precisamos realizar um backup de todos os arquivos importantes contidos nessa partição ANTES prosseguindo.

Limpe todos os dados de /dev/sdb. Usaremos o comando dd aqui, mas você também pode fazer isso com outras ferramentas, como shred. A seguir, criaremos uma partição neste dispositivo, /dev/sdb1, seguindo a explicação na Parte 4 – Criar Partições e Sistemas de Arquivos no Linux da série LFCS.

dd if=/dev/urandom of=/dev/sdb bs=4096 
Teste de suporte à criptografia

Antes de prosseguirmos, precisamos ter certeza de que nosso kernel foi compilado com suporte a criptografia:

grep -i config_dm_crypt /boot/config-$(uname -r)

Conforme descrito na imagem acima, o módulo do kernel dm-crypt precisa ser carregado para configurar a criptografia.

Instalando o Cryptsetup

Cryptsetup é uma interface frontend para criar, configurar, acessar e gerenciar sistemas de arquivos criptografados usando dm-crypt.

aptitude update && aptitude install cryptsetup 		[On Ubuntu]
yum update && yum install cryptsetup 				[On CentOS] 
zypper refresh && zypper install cryptsetup 			[On openSUSE]

Configurando uma partição criptografada

O modo operacional padrão para cryptsetup é LUKS (Linux Unified Key Setup), então vamos continuar com ele. Começaremos definindo a partição LUKS e a senha:

cryptsetup -y luksFormat /dev/sdb1

O comando acima executa cryptsetup com parâmetros padrão, que podem ser listados com,

cryptsetup --version

Se você quiser alterar os parâmetros cipher, hash ou key, você pode usar os parâmetros –cipher, < b>–hash e –key-size, respectivamente, com os valores obtidos de /proc/crypto.

Em seguida, precisamos abrir a partição LUKS (seremos solicitados a senha que inserimos anteriormente). Se a autenticação for bem sucedida, nossa partição criptografada estará disponível dentro de /dev/mapper com o nome especificado:

cryptsetup luksOpen /dev/sdb1 my_encrypted_partition

Agora formataremos a partição como ext4.

mkfs.ext4 /dev/mapper/my_encrypted_partition

e crie um ponto de montagem para montar a partição criptografada. Finalmente, podemos querer confirmar se a operação de montagem foi bem-sucedida.

mkdir /mnt/enc
mount /dev/mapper/my_encrypted_partition /mnt/enc
mount | grep partition

Quando terminar de gravar ou ler seu sistema de arquivos criptografado, simplesmente desmonte-o

umount /mnt/enc

e feche a partição LUKS usando,

cryptesetup luksClose my_encrypted_partition
Testando criptografia

Finalmente, verificaremos se nossa partição criptografada é segura:

1. Abra a partição LUKS

cryptsetup luksOpen /dev/sdb1 my_encrypted_partition

2. Digite sua senha

3. Monte a partição

mount /dev/mapper/my_encrypted_partition /mnt/enc

4. Crie um arquivo fictício dentro do ponto de montagem.

echo “This is Part 3 of a 12-article series about the LFCE certification” > /mnt/enc/testfile.txt

5. Verifique se você pode acessar o arquivo que acabou de criar.

cat /mnt/enc/testfile.txt

6. Desmonte o sistema de arquivos.

umount /mnt/enc

7. Feche a partição LUKS.

cryptsetup luksClose my_encrypted_partition

8. Tente montar a partição como um sistema de arquivos normal. Deve indicar um erro.

mount /dev/sdb1 /mnt/enc

Criptografando o espaço de troca para maior segurança

A senha que você digitou anteriormente para usar a partição criptografada é armazenada na memória RAM enquanto ela está aberta. Se alguém conseguir colocar as mãos nessa chave, ele será capaz de descriptografar os dados. Isso é especialmente fácil de fazer no caso de um laptop, pois durante a hibernação o conteúdo da RAM é mantido na partição swap.

Para evitar deixar uma cópia da sua chave acessível a um ladrão, criptografe a partição swap seguindo estas etapas:

1 Crie uma partição para ser usada como swap com o tamanho apropriado (/dev/sdd1 no nosso caso) e criptografe-a conforme explicado anteriormente. Nomeie-o apenas como “swap ” por conveniência.’

2. Defina-o como swap e ative-o.

mkswap /dev/mapper/swap
swapon /dev/mapper/swap

3. Em seguida, altere a entrada correspondente em /etc/fstab.

/dev/mapper/swap none        	swap	sw          	0   	0

4. Finalmente, edite /etc/crypttab e reinicie.

swap               /dev/sdd1         /dev/urandom swap

Assim que o sistema terminar a inicialização, você poderá verificar o status do espaço de troca:

cryptsetup status swap

Resumo

Neste artigo, exploramos como criptografar uma partição e trocar espaço. Com esta configuração, seus dados devem estar consideravelmente seguros. Sinta-se à vontade para experimentar e não hesite em entrar em contato conosco se tiver dúvidas ou comentários. Basta usar o formulário abaixo – teremos o maior prazer em ouvir você!