Criando um repositório criptografado de dados com Cryptsetup (dm-crypt) sem (re)particionamento do HD

Aprenda a criar um repositório criptografado para arquivos e diretórios sem a necessidade de (re)particionar o disco rígido.

[ Hits: 37.150 ]

Por: Stefano Fontes em 17/08/2010


Provendo outros pré-requisitos



Uma vez providos os devidos suportes no kernel, instale os seguintes pacotes, se já não estiverem instalados em sua distribuição:
  • util-linux - normalmente provê o programa "losetup";
  • cryptsetup.

Observação importante:

Se você desejar, poderá criar o volume criptografado em uma partição comum, como por exemplo /dev/hda5; se for o seu caso, você não precisará criar o arquivo vazio abaixo mencionado, nem utilizar o programa "losetup" para associá-lo e desassociá-lo; neste caso, vá direto para a próxima página, ignore tudo o que for dito em relação ao programa "losetup" e substitua o dispositivo de blocos aqui mencionado como /dev/loop1 pelo nome do dispositivo de blocos "real" a ser utilizado, por exemplo, /dev/hda5.

MAS ATENÇÃO: Lembre-se de que a partição que você deseja utilizar para esta finalidade deverá estar disponível para uso (SEM DADOS A SEREM PRESERVADOS), pois o processo DESTRUIRÁ TODO E QUALQUER DADO PREVIAMENTE EXISTENTE NA PARTIÇÃO. Para maiores informações consulte a documentação do "cryptsetup" disponível em seu sistema e na Internet.

Normalmente estes programas não necessitam de nenhuma configuração especial, entretanto em caso de dúvidas, consulte os manuais de sua distribuição.

A seguir, crie um arquivo vazio do tamanho necessário para armazenar seus arquivos confidenciais, o que poderá ser feito através do seguinte comando, por exemplo:

# dd if=/dev/zero of=/tmp/teste bs=1k count=1024k

No exemplo acima será criado um arquivo de nome "teste" no diretório "/tmp" com tamanho de 1GB.

Para maiores informações sobre o comando dd consulte sua página "man".

Associe o arquivo vazio criado a um dispositivo de "loop" da seguinte forma:

# losetup /dev/loop1 /tmp/teste

No caso utilizamos o dispositivo /dev/loop1, pois o loop0 normalmente é utilizado para a montagem do cdrom e outras mídias, mas poderia ser utilizado qualquer dispositivo de loop disponível; para saber qual o primeiro dispositivo de loop disponível, utilize o seguinte comando:

# losetup -f

Mas, como dissemos, é conveniente EVITAR utilizar o /dev/loop0, pois normalmente é utilizado para a montagem de mídias contendo imagens ISO (cdrom etc).

Finalizada esta etapa, poderemos então prosseguir.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Provendo os suportes no kernel
   3. Provendo outros pré-requisitos
   4. Criando o volume criptografado
   5. Formatando o volume criptografado
   6. Finalizando
Outros artigos deste autor

Provendo dados em um servidor PostgreSQL através do Apache e PHP

Configurando disquete e pendrive para boot sem suporte na BIOS

Leitura recomendada

Implementação de WAF mod_security e integração com Graylog utilizando Filebeat e Logstash

Attik Firewall

Configurando logout automático para conta root

Identificando dispositivos IoT usando Wireshark e criando uma estratégia interessante de visibilidade em Linux e Unix

Desenvolvimento Web - Simples dicas de segurança

  
Comentários
[1] Comentário enviado por Arthur Andrade em 17/08/2010 - 15:15h

Cara, apesar de te dar os meus parabéns pelo texto.
Devo adimitir que não compreendi nada, e anda longe de ser
devido á tua didática, que por sinal é muito boa.

Mas devido a minha falta de conhecimento. Eu sonho com
o dia em que eu leia um texto de tal complexidade e o
compreenda.

Parabéns pelo texto! ;]

[2] Comentário enviado por rogeriojlle em 18/08/2010 - 07:24h

@Arthur

uso uma forma diferente de criptografar meus dados, me pareceu mais simples, mas não sei te dizer se é equivalente em segurança à do artigo acima, eu ao menos estou satisfeito
meu sistema é o OpenSuse 11.3

instale o pacote "encfs" (não é necessário, mas se você reiniciar a máquina logo depois disso, não precisa passar um parâmetro extra aos comandos a seguir, vou assumir que a máquina foi reiniciada ...)

crie uma pasta onde ficarão fisicamente os dados criptografados ex:

mkdir /home.... (tá use o nautilus mesmo, é mais fácil)

crie/use outra pasta onde os dados vão aparecer para uso

mkdir ...(já sabe)

o comando é equivalente ao "mount", só troca por "encfs" (aí faz no terminal mesmo, não tem gui pro OpenSuse, só pra Ubuntu até onde sei, é o Gencfs)

$ encfs /pasta/onde/ficará/o/conteúdo criptografado /pasta/de/onde/eles/devem/ser/acessados

da primeira vez tem um wizard pra criar, sugestão: use a opção "P"
para desmontar é igual a qualquer outro FUSE

$ fusermount -u /pasta/de/onde/eles/devem/ser/acessados

é rapidinho e precisa ser root só pra instalar as coisas
outra sugestão: crie a pasta onde ficam os dados, em sua pasta de disco virtual (ex: Dropbox), já ajuda no backup

[3] Comentário enviado por removido em 18/08/2010 - 14:27h

Tenho uns arquivos que são super secretos, então uso o encfs dentro de uma partição criptografada com o cryptsetup.Segurança duplicada.

[4] Comentário enviado por nicolo em 21/08/2010 - 16:55h

Se quiserem fazer isso tudo mais fácil ainda é só instalar o truecrypt , é tudo gráfico.

[5] Comentário enviado por rogeriojlle em 21/08/2010 - 18:58h

@nicolo

o truecrypt tem alguns problemas quando executado por usuário comum, e se voce dar "sudo" mesmo que só pro truecrypt, ele pode usar todo o sistema como root, se não fizer uma série de outras modificações, agora se for o unico usuario do computador, concordo com voce o truecrypt é bastante fácil de usar


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts