Qual é a maneira mais fácil de criptografar um diretório? (no Ubuntu)

12

Qual é a maneira mais fácil de criptografar um diretório em um sistema baseado no Ubuntu?

Digamos que eu tenha um laptop que esteja executando o Ubuntu 10.04, e nele eu tenho alguns documentos que devem ser mantidos em segurança (se eu perder o laptop).

Digamos que todos os documentos estejam em um diretório chamado ~ / work /, e nada secreto está fora desse diretório. Portanto, não é necessário criptografar todo o diretório inicial.

Deverá haver uma maneira de bloquear / desbloquear este diretório a partir da linha de comando.

Parece haver algumas maneiras diferentes de fazer isso:

  • ecryptfs-utils
  • cryptsetup
  • truecrypt (no entanto, não é código aberto aprovado pelo OSI)

Mas qual é o método mais fácil e confiável?

Obrigado Johan

Atualização : questão relacionada, mas não é a mesma Qual é a maneira mais fácil de criptografar todos os meus arquivos no Ubuntu 10.04?

    
por Johan 29.08.2010 / 12:33

5 respostas

9

Existem três métodos: configurar um volume criptografado em uma partição ( dm-crypt , configurado com cryptsetup ), configurar um arquivo que é um volume criptografado (truecrypt), configurar um diretório no qual cada arquivo é criptografado separadamente ( ecryptfs ou encfs ).

A configuração de um volume criptografado oferece um pouco mais de confidencialidade, porque os metadados (tamanho, tempo de modificação) de seus arquivos são invisíveis. No lado negativo, é menos flexível (você tem que decidir com antecedência sobre o tamanho do volume criptografado). A ecryptfs FAQ lista algumas diferenças entre as duas abordagens.

Se você optar por criptografar arquivo por arquivo, estou ciente de duas opções: ecryptfs e encfs . O primeiro usa um driver in-kernel enquanto o último usa o FUSE. Isso pode dar ecryptfs uma vantagem de velocidade; isso dá a encfs uma vantagem de flexibilidade, já que nada precisa ser feito como root. Um possível benefício de ecryptfs é que uma vez que você tenha feito a configuração inicial, você pode usar sua senha de login como uma senha do sistema de arquivos graças ao módulo pam_ecryptfs .

Para meu próprio uso em uma situação semelhante, escolhi encfs , porque não vi nenhum benefício real de segurança para outras soluções, por isso a facilidade de uso foi o fator determinante. O desempenho não foi um problema. O fluxo de trabalho é muito simples (a primeira execução de encfs cria o sistema de arquivos):

aptitude install encfs
encfs ~/.work.encrypted ~/work
... work ...
fusermount -u ~/work

Eu recomendo que você também criptografe seu espaço de troca e qualquer lugar onde arquivos temporários temporários possam ser gravados, como /tmp e /var/spool/cups (se você imprimir arquivos confidenciais). Use cryptsetup para criptografar sua partição swap. A maneira mais fácil de lidar com /tmp é mantê-lo na memória montando-o como tmpfs (isso pode dar um leve benefício de desempenho em qualquer caso).

    
por 29.08.2010 / 20:58
1

Eu uso exclusivamente o TrueCrypt para essas coisas. Aprovado pelo OSI ou não, acho que nunca me decepcione e precisei de criptografia várias vezes.

    
por 29.08.2010 / 21:52
1

Se você está apenas preocupado com a perda do seu laptop, o Ubuntu tem ecryptfs configurado para você.

Basta escolher "diretório pessoal criptografado" ao criar sua conta de usuário e fornecer uma senha decente. Isso protegerá o que estiver dentro da sua pasta pessoal.

Sim, ele criptografará mais de ~/work , mas é perfeito.

Para o /tmp use tmpfs .

Prós:

  • Você não precisa fazer mais nada, o Ubuntu faz tudo para você.
  • Seus amigos podem usar seu computador em trânsito, eles só precisarão de uma senha se quiserem acessar seus arquivos.

Con:

  • Existem outros lugares onde você faz dados de vazamento - a resposta de Gilles é a mais completa (+1 para ele).

Então, se você não acha que algum especialista forense tentará obter dados de coisas que você imprimiu, isso é bom o suficiente.

ecryptfs pode criptografar o swap também, mas eu recomendo que você desative o swap, a menos que tenha acontecido com você que você saiu da RAM. A vida é melhor sem swap. (ou apenas execute ecryptfs-setup-swap e siga as instruções para alterar o fstab)

Aviso : Em qualquer caso, a menos que você tenha acabado de comprar este laptop, já há muitas coisas gravadas no seu disco rígido. Eu encontrei um monte de coisas nas minhas e nada esclareceria. Você precisa fazer um backup para outra unidade ou partição, sobrescrever seu sistema de arquivos atual com zeros e restaurar seus arquivos (é claro, restaurar apenas os arquivos confidenciais depois que a criptografia estiver configurada).

    
por 09.09.2010 / 19:27
1

A maneira mais fácil e rápida de configurar isso é instalar ecryptfs-utils e cryptkeeper :

sudo apt-get install ecryptfs-utils cryptkeeper

Então, uma vez feito, procure no seu systray. Você verá um ícone de duas chaves. Clique nele e escolha Nova Pasta Criptografada. Digite o nome e clique no botão Avançar (estranhamente na parte inferior esquerda, não à direita). Em seguida, digite a senha desejada, reconfirme-a e clique em Encaminhar novamente e, em seguida, em OK.

Isso montará a pasta criptografada e você poderá copiar arquivos para ela. Quando terminar, se você fizer logout ou desmarcar essa pasta montada (clique no ícone de Chaves na bandeja do sistema para fazer isso), ela precisará de uma senha novamente antes de remontá-la.

    
por 09.09.2013 / 06:52
0

A maneira rápida e fácil é tar e compress e, em seguida, bcrypt .

tar cfj safe-archive.tar.bz2 Directory/ 
bcrypt safe-archive.tar.bz2 
# will ask you an 8 char password twice to lock it up.
# But, remember to delete your Directory after this,
rm -rf Directory/ 
# And, I hope you don't forget the password, or your data is gone!

Faz com que safe-archive.tar.bz2.bfe - que você pode renomear, caso se sinta paranóico.

Para abrir o pacote criptografado,

bcrypt safe-archive.tar.bz2.bf3 # Or, whatever you called it
tar xfj safe-archive.tar.bz2 
# And, your directory is back!

Se você estiver pronto para ficar mais confuso, sugiro truecrypt e fazer volumes criptografados.
Mas, eu não acho que seja necessário para dados regulares (como não relacionado à segurança nacional, por exemplo).

ps: note que eu não estou sugerindo que o bcrypt seja fraco ou incapaz de segurança nacional de qualquer forma.

Responder aos comentários da minha resposta acima.
Eu tentei dar uma resposta simples - e, eu concordo que a minha escolha de não sugerir Truecrypt como a primeira opção pode ser inapropriada para alguns aqui.

A pergunta pede uma maneira fácil de criptografar um diretório.
Minha medida de segurança aqui é baseada em duas coisas,

  1. O que você deseja proteger e
  2. De quem você deseja protegê-lo de

Eu classifico isso como o nível da sua 'paranóia'.

Agora, sem dizer que o Truecrypt (ou outros métodos semelhantes) são mais caros,
tudo que eu quero dizer é que uma seqüência de bcrypt executada no tmpfs é suficiente para o seu uso diário hoje
(provavelmente não será assim em cerca de uma década, eu acho, mas realmente é por agora).
Além disso, também presumo que o valor dos dados que estão sendo protegidos aqui não será comparável a uma tentativa de "recuperação" de classe mona lisa.

Pergunta simples então - você espera que alguém tente pegar seu laptop desligado e tente recuperar dados do seu espaço frio de RAM?
Se você fizer isso, você provavelmente deve reconsiderar o seu software de hardware e, em primeiro lugar, verificar a qual ISP você se conecta, quem pode ouvir suas teclas pressionadas, e assim por diante.

ps: Eu gosto do Truecrypt e o uso. A conformidade do OSI, ou a falta dela, não importa realmente. E eu não estou encenando bcrypt e o esquema proposto aqui em competição a ele.

    
por 29.08.2010 / 13:47