Sistema de arquivos criptografado

Atendo a uma empresa que trabalha com dados pra lá de sigilosos. Então me pediram pra arrumar um jeito de aumentar a segurança dos dados em disco, prevendo uma situação onde o computador ou o próprio HD pudesse vir a parar na mão de terceiros.

[ Hits: 27.027 ]

Por: Carlos Affonso Henriques. em 01/05/2005


Montando o volume criptografado



8 - Agora vamos montar nosso volume, montando o dispositivo de loop e não a partição diretamente, pois é impossível montá-la diretamente. Não se esqueça de antes criar um diretório para o ponto de montagem. No meu caso criei em /mnt:

# mkdir /mnt/hdb1
# mount -t reiserfs /dev/loop0 /mnt/hdb1


9 - Pronto, já temos nossa partição criptografada. Podemos também ao invés de fazer isso com uma partição, fazermos com um arquivo e montá-lo como um volume, caso já tenhamos um sistema pronto e desejamos aumentar sua segurança.

10 - Este procedimento é totalmente inútil se não criptografarmos o volume de swap, recuperadores de dados profissionais podem recuperar resíduos ou mesmo informações inteiras a partir do swap.

Então vamos lá! Em meu caso a partição de swap é a /dev/hda7.

# dd if=/dev/random of=/dev/hda7

Relembro que o procedimento da linha de comando acima é extremamente demorado.

11 - Agora criaremos o dispositivo de loop para o setup:

# losetup -e twofish -p 0 /dev/loop1 /dev/hda7

Note o parâmetro "-p 0".

12 - Formataremos agora a(s) partição(ões) de swap:

# /sbin/mkswap /dev/loop1

13 - Agora montaremos a(s) partição(ões) de swap. A swap é montada na inicialização do sistema procure pela linha "/sbin/swapon -a" no arquivo /etc/rc.d/rc.S no caso do Slackware ou no /etc/rc.d/, o script que a contenha e altere-o para o seguinte: este procedimento irá tornar a inicialização bem mais lenta, no entanto é uma pequena demora comparada ao enorme benefício proporcionado:

/bin/dd if=/dev/zero of=/dev/hda7
/sbin/losetup -e twofish -p 0 /dev/loop1 /dev/hda7
/sbin/swapon -a

Não esqueçam de carregar os módulos antes disso adicionando as linhas dos itens 2 e 3:

modprobe cryptoloop
modprobe twofish
Página anterior    

Páginas do artigo
   1. Criando um volume criptografado em partição ReiserFS
   2. Montando o volume criptografado
Outros artigos deste autor

TrueCrypt Forever

Quando próximo, finja estar longe; quando longe, finja estar próximo

Administrando usuários no GNU/Linux e Samba via web com PHP

Enviando e-mail pelo shell com smtp remoto

Impedindo o compartilhamento de conexão

Leitura recomendada

Configurando o CACIC (parte 5)

MaraDNS: Simples - Seguro - Robusto (parte 2)

Colinux com Debian - Linux Rodando Dentro do Windows

Configurando seu Openbox para reconhecer teclas multimídia

Linux, USB-IrDA, T300 on the rocks

  
Comentários
[1] Comentário enviado por Tango em 01/05/2005 - 13:07h

Matéria interessantíssima! Apesar de tal metodologia ser geralmente desnecessário em computadores desktop caseiros, num ambiente corporativo isso é frequentemente necessário e NÃO IMPLEMENTADO. Algumas informações que senti falta são:

- Onde fica localizada a chave para o acesso à unidade?
- Se sim, em que estágio do acesso (Montagem? Leitura?) à unidade é requerida a senha?

No mais um artigo que cobre uma área utilíssima, mas pouquíssimo explorada, não só no Linux mas em quase todos os sistemas operacionais com essa capacidade.

[2] Comentário enviado por CapitainKurn em 01/05/2005 - 13:56h

Eu poderia ter feito um script para isso, ou usar um dispositivo usb para tal, so que isso gera um inconveniente, alguem poderia ter acesso ao script ou chaveiro usb. Por isso optei que ao se chegar pela manha o administrador monte o volume manulmente e insira sua senha.
Quando vocë levanta o dispositivo de loop ele pede uma passwd aotomaticamente. que deve ser igual a que foi criada quando voce criou o loop da primeira vez.
Mas valeu a observacao vou implementar uma forma mais amigavel de se fazer isso. Lembro ainda que saiu na Linux Magazine uma materia sobre isso embora eu a tenha achado um tanto incompleta.

[3] Comentário enviado por Tango em 01/05/2005 - 22:11h

Pelo que pude ver d processo, é simples e indolor, e ainda deve permitir (corrija-me se eu estiver errado) o uso de uma imagem ReiserFS como dispositivo de loop criptografado. Não sei se você percebeu (ou conhece o PGP), mas dessa forma é possível simular um comportamento extremamente semelhante ao PGPDisk, disponível em versões corporativas do PGP (http://www.pgp.com/).

Isso é um trunfo incrível. Por sinal, deixarei então você com esta dica, se for do seu interesse: um artigo sobre o uso de dispositivos criptografados em arquivos de imagem de filesystem.

[4] Comentário enviado por shocker em 02/05/2005 - 14:22h

Interessante o artigo.
Parabéns!

Atc,
Alan Cota.

[5] Comentário enviado por CapitainKurn em 02/05/2005 - 23:10h

Nunca implementei nada com PGP mas vou experimentar, mas o fato de eu haver feito o volume com uma ou melhor com duas partições Reiser foi o fato de serem mais imunes a corrupções do sistema de arquivos, também poderia ter feito um arquivão sendo montado como fs mas não julguei muito confiável além do fato de ter uma rotina de backup no crontab que sincroniza a cada 2 horas a /mnt/hda3 e a /mnt/hdb3 o pequeno servidor tem dois hds

[6] Comentário enviado por agk em 04/05/2005 - 10:23h

Parabéns excelente artigo. O artigo aborta um ponto muito importante e quase nunca observado pelos administradores de rede que é a segurança referente ao acesso local da máquina. Muitos se preocupam com os acessos remotos e nem ligam para a segurança local. Restringir o boot loader com senha até ajuda, mas pense, se tiver algum outro meio de dar boot no sistema, qualquer live-cd ou até uma mini-distro em disquete consegue entrar no sistema e obter acesso total ao seus preciosos arquivos.

[7] Comentário enviado por rufoz em 09/06/2005 - 22:07h

Interessante o seu artigo, no entanto é sim possível fazer isso com kernel 2.4.x, só que é necessário aplicar um patch tanto no kernel como no pacote util-linux.
O projeto chama-se loop-AES e é inclusive citado na referida matéria da Linux Magazine. O readme é beeem completo e contém informações muito detalhadass, informando inclusive como utilizar uma chave GPG como "senha" (continua existindo a possibilidade de uma senha, no caso a passphrase da chave)
Só uma dúvida, utilizando ReiserFS não pode haver inconsistencias no journal? Eu optei por utilizar ext2 devido a essa possibilidade, mas se não tiver nenhum problema com o journaling eu pretendo mudar

[8] Comentário enviado por capitainkurn em 30/10/2005 - 11:47h

infelizmente não consegui fazer funcionar com o Kernel 2.4

[9] Comentário enviado por leomarie em 13/12/2007 - 08:19h

Ótimo artigo!

Mas tive um probleminha... estou realizando a criptografia com kernel 2.6.23,
Recompilei o kernel com as opções aqui citadas, gerei o dd conforme informado, mas ao criar o Loop, digito a senha e ele me informa o seguinte erro:
- ioctl: LOOP_SET_STATUS: No such file or directory

O que pode ser?

[10] Comentário enviado por capitainkurn em 13/12/2007 - 09:02h

Verifique no diretorio de sua distro se o dispositivo de loop0 existe, ele pode ter outro nome ou estar representado por um link simbolico

[11] Comentário enviado por leomarie em 19/12/2007 - 11:44h

Bom. Resolvi o problema anterior, e consegui, aparentemente, criptografar a partição. Ao compartilhar a partição via Samba, criei um arquivo .txt com um conteúdo. Copiei o mesmo para uma outra maquina, local. Pelo que entendi do artigo, deveria estar criptografado o .txt, mas não é isso que acontece, consigo abrir e ler normalmente o mesmo. Sera que tem algo errado com minhas configurações?

[12] Comentário enviado por capitainkurn em 19/12/2007 - 16:37h

Nao... nao ha nada errado, quando vocë monta a particao criptografada ela fica inteiramente transparente para voce, o que ocorre e que voce nao conseguiria monta-la sem sua chave e se seu disco rigido fosse colocado em uma outra maquina para uma analise simplesmente seria impossivel montar a particao ou resgatar qualquer dado dela mesmo desmontada.

[13] Comentário enviado por leomarie em 19/12/2007 - 17:09h

Ah sim! mas pro samba, isso nao interfere entao! Bom. e nao tem uma forma de eu criptografar todos os arquivos usados em um compartilhamento samba?
É que meu caso, é parecido com o seu. Porém a empresa quer proteger os arquivos até mesmo dos próprios funcionários, tipo: O joão 'rouba' um projeto da empresa e envia por e-mail, copia num pendrive, etc.. mas quando vai abrir em outro computador, o arquivo pede a senha de criptografia, entende como eh?
Se tiver essa solução, ficaria grato.


Obrigado.

[14] Comentário enviado por capitainkurn em 20/12/2007 - 12:17h

Um projeto de seguranca elaborado como o que voce precisa nao se faz assim, requer um trabalho de analise que pode ser mais ou menos demorado e conhecer os metodos de trabalho da empresa.

E nao basta so fazer implementacoes de hardware e software, e preciso adotar certos procedimentos no nivel social.

Eu presto estes servicos.

Mas a grosso modo voce poderia implementar um projeto de virtualizacao onde a " maquina" virtual totalmente isolada da sua rede manipularia os arquivos sigilosos ou seja somente entra ou sai da maquina virtual o que o administrador determinar.

Ex:
Uma estacao Linux ou mesmo windows em sua rede executaria uma maquina virtual que estaria em uma imagem em um servidor e esta por sua vez rodaria os aplicativos usados no projeto porem sem nehum contato com a rede ou mundo exterior.

No seu caso penso ser a melhor alternativa.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts