Pular para o conteúdo principal

Criptografia em Dispositivos de Armazenamento em Bloco no Linux

O procedimento a seguir foi testado no Ubuntu 7.10 e no Fedora 8, utilizando um memory stick de 1 GB já particionado e contendo apenas uma partição. Foi utilizado o LUKS (Linux Unified Key Setup) para criptografar os dados.

Primeiro temos que formatar o dispositivo para que o LUKS possa utilizar a partição:

$ sudo -H cryptsetup luksFormat /dev/sda1



WARNING!

========
This will overwrite data on /dev/sda1 irrevocably.

Are you sure? (Type uppercase yes): YES
Enter LUKS passphrase:
Verify passphrase:
Command successful.


Note que no comando anterior foi solicitada a entrada de uma senha (passphrase), portanto memorize-a, se não os dados ficaram inacessíveis.

Inicie o dispositivo para que seja criado um ponto de acesso no diretório /dev. Este dispositivo é do tipo DM e ficará localizado em /dev/mapper/nome-do-device:


$ sudo -H cryptsetup luksOpen /dev/sda1 ms01-cr
Enter LUKS passphrase:
key slot 0 unlocked.
Command successful.


Crie o sistema de arquivos no dispositivo ms01-cr:


$ sudo -H mkfs.ext3 /dev/mapper/ms01-cr
mke2fs 1.40.2 (12-Jul-2007)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)

Fragment size=4096 (log=2)
125184 inodes, 250234 blocks
12511 blocks (5.00%) reserved for the super user
First data block=0

Maximum filesystem blocks=260046848
8 block groups
32768 blocks per group, 32768 fragments per group
15648 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376

Writing inode tables: done

Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.


Crie um ponto de montagem para poder ter acesso ao sistema de arquivos recém criado:

$ sudo mkdir /mnt/ms01-cr


Monte o sistema de arquivos:

$ sudo mount /dev/mapper/ms01-cr /mnt/ms01-cr


Faça um teste de criação de arquivo para certificar que tudo está funcionando normalmente:

$ sudo touch /mnt/ms01-cr/teste


Desmonte o sistema de arquivos:

$ sudo umount /mnt/ms01-cr


Feche o dispositivo de mapeamento:

$ sudo cryptsetup luksClose ms01-cr


Removar logicamente o memory stick:

$ sudo eject /dev/sda


Remova-o fisicamente.

Usando o memory stick encriptado

Conecte o memory-stick novamente e você verá a seguinte janela de diálogo solicitando a senha para acesso aos dados encriptados:



Após digitar a senha correta, na área de trabalho aparecerá um ícone chamado disk relativo ao volume encriptado. Detalhes sobre a montagem podem ser verificados com:

$ mount | grep luks
/dev/mapper/luks_crypto_64cbad69-0fcd-4fe5-b3c5-22bb5321ab78 on /media/disk type ext3 (rw,nosuid,nodev)


Agora o dispositivo pode ser utilizado normalmente com se não estivesse encriptado, pois todo o trabalho de criptografia é feito de forma transparente.

Antes de remover o dispositivo clique com o botão 2 sobre o ícone disk e selecione a opção ejetar, assim como é feito com qualquer outro disco removível.

Para mais informações consulte:

http://kbase.redhat.com/faq/FAQ_96_7091.shtm
http://www.howtoforge.com/ubuntu_dm_crypt_luks

Postagens mais visitadas deste blog

VIM: Como copiar blocos de texto lado a lado

Supondo que você possua o seguinte texto e esteja usando o VIM para editá-lo, 1o. bloco aaa bbbbb ccc 2o. bloco ddd eeeee fff e queira colocar o segundo bloco ao lado do primeiro, podemos utilizar os seguintes comandos do VIM para tal tarefa: Mova o cursor até o início do segundo bloco e tecle CTRL-v; Mova o cursor de seleção até o final do bloco que é na linha cujo conteúdo é "fff"; Tecle $ para selecionar até o final de linha; Tecle d para apagar a seleção; Mova o cursor para o final da primeira linha do primeiro bloco, tecle a e insira a quantidade de espaços ou tabulações necessários; Tecle CTRL-v e SHIFT-p para colar o bloco apagado anteriormente na posição do cursor. Assim teremos o seguinte resultado, 1o. bloco 2o. bloco aaa ddd bbbbb eeeee ccc fff

Resolvendo problema UnsignedAccessViolationException com applets JAVA

Após atualizar a versão do Java para 6u33 ou 7u5 algumas aplicações JAVA Web Start (JWS) passaram a apresentar falha com a seguinte mensagem de erro: "Erro: aplicativo não assinado solicitando acesso ilimitado ao sistema" (UnsignedAccessViolationException). Achei a solução aqui que basicamente consiste em limpar o cache JAVA: 1. Feche a aplicação ou applet Java 2. Abra o Painel de Controle Java ( $JAVA_PATH/bin/ControlPanel ) 3. Clique em Configurações... na seção Arquivos temporários de Internet 4. Clique em Excluir arquivos... Nota: Isto exclui todas as aplicações e applets baixados para o cache . 5. Clique em OK na janela Arquivos temporários excluídos 6. Reinicie sua aplicação ou applet

Como instalar extensões no Gnome Shell manualmente

As extensões do Gnome Shell são instaladas em /usr/share/gnome-shell/extensions ou em ~/.local/share/gnome-shell/extensions, sendo o primeiro global e o segundo válido apenas para o próprio usuário. Para instalar uma extensão de forma manual, obtenha o pacote ZIP correspondente a extensão desejada em https://extensions.gnome.org . Em cada página de extensão do extentions.gnome.org há um link que aponta para a Home Page do projeto. Seguindo um desses links , procure o pacote ZIP para download . Após o download do ZIP, abra-o com o Gerenciador de Pacotes conforme: Clique no botão Extrair , use a combinação de teclas Control+H para exibir arquivos ocultos e navegue até o diretório ~/.local/share/gnome-shell/extensions , quando estiver no diretório clique no botão Criar pasta e digite o nome do novo diretório (obs.: use o nome da extensão). Depois de criada a pasta, selecione-a e clique em Extrair . Por garantia efetue logout e abra uma nova sessão do Gnome She