Criptografar sua atual partição root usando dm-crypt com luks

Atualmente há vários métodos de criptografia disponíveis dos quais, por exemplo, loop-aes. Minha escolha por cryptsetup-luks com dm-crypt se deu por ser considerado o método adequado para grande volume de dados, por não ter uma perda muito grande na performance e por ser considerado o mais seguro.

[ Hits: 47.219 ]

Por: Aline de Freitas em 11/01/2008


Preparativos iniciais



Requerimentos

  • Kernel: >= 2.6.20
  • Suporte para udev
  • Partição de boot separada.
  • Algum mecanismo para backup. No meu caso utilizei um velho disco rígido de 20GB
  • Paciência e persistência.

Preparando o kernel

O seu kernel deve estar configurado com as opções a seguir:

# make menuconfig

General setup --->
            [*] Initial RAM filesystem and RAM disk (initramfs/initrd) support
            ()    Initramfs source file(s) (Deixe este campo em branco!)

Device Drivers  --->
            [*] Multiple devices driver support (RAID and LVM)  --->
                             <*>   Device mapper support
                          <*>     Crypt target support

--- Cryptographic API  --->        
                <*>   SHA256 digest algorithm
            <*>   SHA384 and SHA512 digest algorithms
            <*>   Blowfish cipher algorithm
            <*>   Serpent cipher algorithm
            <*>   AES cipher algorithms
se estiver usando um sistema amd64 troque a opção acima por
            <*>   AES cipher algorithms (x86_64)

Então,

# make && make modules modules_install
# mount /boot
# make install


Para quem usa Debian:

# make-kpkg kernel-image
# dpkg -i <o novo kernel>


Obtenha as ferramentas

Verifique se você possui cryptsetup-luks instalado.

# emerge -avn cryptsetup-luks

ou

# apt-get install cryptsetup

Fazendo backup dos dados (obrigatório)

Primeiro precisamos fazer o backup da partição root. Digamos que seu disco principal seja /dev/sda e sua partição root seja /dev/sda3 e que o disco para backup seja /dev/sdb. Esta será a referência no decorrer do tutorial. Não se esqueça de trocar estes valores para a sua situação. Criamos uma partição única para armazenar os dados que futuramente serão encriptados:

# fdisk /dev/sdb

O número de cilindros para este disco está configurado para 2491. Não existe nada de errado, mas isto é maior que 1024, e pode em certas configurações causar problemas com:

1) programas que executam em tempo de inicialização (versões velhas do LILO)

2) inicialização e programas de particionamento de outros OSs (p.ex., DOS FDISK, OS/2 FDISK)

Comando (m para ajuda): n
Comando - ação
   l   lógica (5 ou superior)
   p   partição primária (1-4)
p
Número da partição (1-4): 1

Depois enter + enter para utilizar todo o disco e então para salvar:

Comando (m para ajuda): w

# mkfs.ext3 /dev/sdb1

Agora vamos fazer o backup dos dados:

# mkdir /mnt/crypt
# mount /dev/sdb1 /mnt/crypt
# cd /
# cp -avx / /mnt


Aproveite para comer algo enquanto os dados são transferidos...

Vamos preparar a nova partição:

# vi /mnt/crypt/etc/fstab

Troque a partição de root atual por /dev/sdb1.

/dev/sdb1     /       ext3     noatime         0 1

Edite também seu gerenciador de inicialização, no caso do grub, edite /boot/grub/menu.lst.

kernel /vmlinuz root=/dev/sda3

Troque pelos valores da sua nova partição (lembre-se estes são exemplos. Substitua pelas SUAS partições).

kernel /vmlinuz root=/dev/sdb1

# reboot

Depois da inicialização, verifique se realmente está na nova partição:

# mount | grep 'on / type'

Deve apresentar a partição de backup, no meu caso /dev/sdb1.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Preparativos iniciais
   3. Preparando as partições root e swap a criptografar
   4. Criando a imagem initramfs
   5. Últimos passos
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Debian Sarge + Snort + MySQL + Acidlab + Apache

Prevenção e rastreamento de um ataque

John The Ripper - Teste de Quebra de Senhas

Capturando e-mails da rede com Mailsnarf

SELinux na prática

  
Comentários
[1] Comentário enviado por EDUPERSOFT em 11/01/2008 - 22:02h

Excelente, assunto sofisticado, atual, útil e por outro lado pouco difundido. O artigo bem escrito, direto, prático. Muito bom ver um artigo escrito por uma mulher aqui no VOl, ainda mais um artigo deste nível. As barreiras vão caindo, as mulheres conquistando espaço no mundo Linux e o Linux conquistando espaço no mundo feminido.

[2] Comentário enviado por maykonhammer em 11/01/2008 - 22:16h

Parabéns pelo atigo...

[3] Comentário enviado por fred_m em 12/01/2008 - 03:05h

Muito bom Aline.
Escrevi também um artigo durante minha pós em segurança sobre o assunto, gostaria de compartilhar com você.
http://www.madeira.eng.br/wiki/index.php?page=Criptografia+de+Disco+%E2%80%93+Garantindo+a+seguran%C... (arquivo em PDF)

[4] Comentário enviado por edupersoft em 12/01/2008 - 08:48h

fred_m, seu artigo também é muito bom. Porque você não coloca aqui no VOL também?

[5] Comentário enviado por capitainkurn em 12/01/2008 - 12:26h

Chix!
Excelente o seu artigo! Tanto em conteúdo quanto em didática!
Já está em meus favoritos!

[6] Comentário enviado por kalib em 12/01/2008 - 13:53h

Parabéns pelo artigo amiga. ;]
Continue com contribuições deste nível com a comunidade e todos ficaremos gratos! :D
Interessante ver meninas se destacando por aqui... ;]

abraços e boa sorte

[7] Comentário enviado por sermart em 12/01/2008 - 15:41h

O que eu mais gostei foi sua imparcialidade quanto as distros, isto é muito importante aqui no vol.

[8] Comentário enviado por removido em 14/01/2008 - 09:52h

Arrepiou-ne até a alma este trabalho... ;-)

[9] Comentário enviado por hiroyuki em 15/01/2008 - 10:24h

Veri gud! Muito bom... estou pensando em até criptografar meu disco tb =)

[10] Comentário enviado por marceloviana em 16/04/2016 - 09:50h

Alinef, obrigado pelo artigo!

É possível remover a senha do cryptsetup da inicialização do sistema e configurar para pedir senha somente quando for necessário descriptografar a partição para alguma manutenção nos arguivos?

Obrigado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts