O objetivo deste tutorial é ensinar em passos rápidos como criar uma partição de disco criptografada com o
dm-crypt e o
LUKS. O foco aqui são os discos externos. É possível usar estas mesmas instruções para criptografar uma partição do seu disco principal. Todavia, se você quiser criptografar o seu disco inteiro, inclusive a partição root, o modo mais simples é reinstalando o sistema, embora seja também possível fazê-lo com alguns acréscimos às instruções abaixo.
Passo 0: instalar o
cryptsetup:
# apt-get install cryptsetup
Passo 0a: certificar-se de que os módulos necessários ao uso do LUKS foram carregados:
# modprobe dm_crypt
Passo 0b (opcional): preencher o disco com dados aleatórios (sobrescreve as informações anteriores, para o caso de um disco que já estava em uso, e ainda torna mais difícil um ataque criptoanalítico):
# time dd if=/dev/urandom of=/dev/sdb bs=1M
(isto provavelmente levará algumas horas)
Obs: antes de executar o comando acima é necessário descobrir qual arquivo no sistema (/dev/xxx) representa o disco desejado. Uma forma simples de fazê-lo é executar o comando "df -h" e identificar o disco pelo seu tamanho.
Passo 1: Particionar o disco usando o seu editor de partições de preferência. Na linha de comando o mais comum é o fdisk. No ambiente gráfico, o gparted realiza essa tarefa sem dificuldades, basta selecionar o disco desejado e clicar no ícone de nova partição, escolher o tamanho desejado e voilà.
Agora é o momento de decidir se a partição criptografada irá ocupar o disco inteiro ou se haverá outras partições não criptografadas ou criptografadas com diferentes chaves. Não crie um sistema de arquivos ainda, ele será destruído quando criptografarmos a partição.
Passo 2: Criar a partição criptografada:
# cryptsetup --verbose --verify-passphrase luksFormat /dev/sdb1
Obs: o sistema pedirá por uma senha. Quanto mais longa e aleatória, melhor. Porém, lembre-se de anotá-la em algum lugar, porque se você esquecê-la perderá tudo o que tinha no disco, já que as chances de quebrar a criptografia são quase nulas.
Passo 2a (opcional): verificar se a partição foi criptografada:
# cryptsetup luksDump /dev/sdb1
Passo 3: Abrir a partição criptografada, nomeando-a:
# cryptsetup luksOpen /dev/sdb1 nomequeeugosto
Passo 3a: Verificar se tudo deu certo até aqui e se foi criado um arquivo representando a partição aberta:
# ls -l /dev/mapper/
...
brw-r----- 1 root root 253, 0 Jul 16 01:52 nomequeeugosto
Passo 4: Criar um sistema de arquivos na partição aberta:
# /sbin/mkfs.ext4 -c -m 1 -O dir_index,filetype,extent,sparse_super /dev/mapper/nomequeeugosto
Obs: Agora é o momento de escolher o sistema de arquivos desejado. Se você for utilizar o disco apenas em uma máquina
Linux, o ext4 é uma ótima escolha. Por outro lado, se você pretende acessá-lo de máquinas Windows ou OSX, é aconselhável usar o FAT32, o NTFS ou o HFS. Para instruções sobre formatação com esses sistemas de arquivos, leia as páginas man ou google it. E pronto!
Para acessar seu disco no Linux (supondo que você está usando o Gnome, o KDE ou o XFCE), basta conectar o disco e o gerente de desktop abrirá uma janela perguntando pela senha da partição criptografada. Para acessar a partição no Windows, existe um programa muito útil que inclusive pode ser instalado em uma partição não criptografada do seu próprio disco externo.
Clique aqui para saber mais.
Referências:
roysindre e
saout.
Publicado originalmente em meu blog pessoal:
http://tagesuhu.wordpress.com/
Olá, infelizmente o vivaolinux não possui o recurso de edição posterior da dica. Acredito que o "sobrescrever" já deixa claro que há perda de dados e, mais que isto, que criptografia é um assunto avançado e presume-se que quem está estudando este tema já sabe alguma coisa sobre o resto.
De qualquer forma ficam os alertas aqui nos comentários: ESTE TUTORIAL DESTRÓI TODOS OS CONTEÚDOS ANTERIORES NOS DISCOS EM QUE FOR USADO.
Portanto, se for executá-los, tenha certeza de que realizou o backup dos dados importantes nele contidos. Aliás, antes de executar qualquer comando em qualquer tutorial que encontrar pela internet, o adequado é conferir com as páginas man para saber exatamente o que cada comando, incluindo argumentos, vai fazer no seu computador. Isso é ainda mais importante para os comandos executados como ROOT.
Para criptografar arquivos já existentes em um disco, em vez de seguir o tutorial acima (fazendo backup e movendo os arquivos depois), pode-se usar o tar e o gnupg ou então o ecryptfs que cria um diretório criptografado de tamanho não-fixo, sem destruição de dados. Cada alternativa tem sua vantagem.
RTFM