Criptografando HD com Cryptsetup(dm-crypt)

Obs.: dos comandos abaixo podemos usar “open” no lugar de “luksOpen” e “close” no lugar de “luksClose“.  luksOpen e luksClose  são antiquados.

No artigo anterior vimos quais as opções podemos escolher para criptografar nosso disco. Também vimos que para dispositivos em bloco podemos usar uma das seguintes opções:

  • loop-AES
  • dm-crypt
  • TrueCrypt/VeraCrypt

Iremos usar aqui dm-crypt e sua ferramenta de gerenciamento, a cryptseup.

dm-crypt já é nativo no kernel linux, mas a ferramenta que a gerencia geralmente não e então cabe a nós a sua instalação.

Podemos usar qualquer dispositivo em bloco, seja um pen drive, HD externo ou partição de um disco/SSD. Aqui irei usar a partição sdb1 do meu disco /dev/sdb.

Atenção: os procedimentos abaixo irão apagar o conteúdo do disco, então escolha o disco corretamente e se houver arquivos faça backup.

Vamos instalar o cryptsetup.

Instalando Cryptsetup

 

No CentOS

sudo yum install cryptsetup  -y

 

No Debian

sudo apt install cryptsetup -y

 

Criptografando  com Cryptsetup

 

Vamos executar o comando “cryptsetup luksFormat /dev/sdb1”. Digite YES em maiúsculo e uma senha para o disco.

elder@server01:~$ sudo cryptsetup luksFormat /dev/sdb1  
AVISO: O dispositivo /dev/sdb1 já contém uma assinatura de superbloco "ext4".

WARNING!
========
Isto vai sobrescrever dados em /dev/sdb1 permanentemente.

Are you sure? (Type uppercase yes): YES
Digite a senha para /dev/sdb1: 
Verificar senha: 

 

No comando acima temos:

  • cryptsetup: ferramenta para criptografar usando dm-crypt.
  • luksFormat: opção da ferramenta cryptsetup para formatar o bloco.
  • /dev/sdb1: nosso bloco a ser criptografado.

 

Instalando um Sistema Operacional no Bloco

Agora iremos instalar um sistema de arquivos.  Podemos escolher qualquer sistema de arquivos. Em meu caso escolhi o ext4.

Após executado o comando anterior iremos usar a opção “luksOpen” para abrir o bloco /dev/sdb1 e então será gerado um dispositivo dentro de /dev/mapper/. O nome do dispositivo pode ser qualquer um que dermos. Irei dar o nome de hdCriptografado.

Execute o comando “cryptsetup luksOpen   /dev/sdb1   hdCriptografado”. Quando solicitado digite a senha que criamos acima para descriptografar o bloco.

elder@server01:~$ sudo cryptsetup luksOpen /dev/sdb1  hdCriptografado
Digite a senha para /dev/sdb1:

Foi criado o mapeamento /dev/mapper/hdCriptografado

Execute o comando abaixo para implantarmos o sistema de arquivos ext4

elder@server01:~$ sudo mkfs.ext4 /dev/mapper/hdCriptografado

 

Montando o Bloco

Vamos criar a pasta /media/meuHDCriptografado e após isso montar com o comando “mount /dev/mapper/hdCriptografado /media/meuHDCriptografado/

elder@server01:~$ sudo mkdir /media/meuHDCriptografado
elder@server01:~$ sudo mount /dev/mapper/hdCriptografado  /media/meuHDCriptografado/

Verifique a montagem com “df”

elder@server01:~$ df -h
Sist. Arq.                   Tam. Usado Disp. Uso% Montado em
udev                         480M     0  480M   0% /dev
..........
/dev/mapper/hdCriptografado  460M  2,3M  430M   1% /media/meuHDCriptografado

 

Verifique o tipo do bloco com

elder@server01:~$ sudo blkid
/dev/sda1: UUID="08d9728a-0edf-4f23-b06a-6cb3ee2fea50" TYPE="ext4" PARTUUID="143703ee-01"
..................
/dev/sdb1: UUID="f99af4a3-5af9-4804-913e-a89ac3d0fb45" TYPE="crypto_LUKS" PARTUUID="5e3dce61-01"
/dev/mapper/hdCriptografado: UUID="f7879354-d0c6-4e25-93df-3424b15c45b4" TYPE="ext4"

 

Desmontando e Desconectando o Mapeamento

Para desmontar o disco basta usar o comando umount.

elder@server01:~$ sudo umount /media/meuHDCriptografado

Agora desfaça o mapeamento hdCriptografado. Não precisa passar todo o caminho(/dev/mapper/hdCriptografado).

elder@server01:~$ sudo cryptsetup luksClose hdCriptografado

 

 

Conclusão

Aqui criptografamos uma partição inteira. Se esse disco for furtado nossos dados não serão acessados.

Podemos ver que o sistema de arquivos fica acima do bloco criptografado. Por exemplo, temos o bloco /dev/sdb1 que está criptografado mas o  sistema de arquivos está em /dev/mapper/nome_qualquer.

 

Leitor voraz e um dos administradores do GNU/Linux Brasil no Whatsapp, facebook, youtube e nesse dito site: www.gnulinuxbrasil.com.br

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *