Sie sind auf Seite 1von 5

7/17/2018 Criptografia de disco [Artigo]

CRIPTOGRAFIA DE DISCO

Autor: Henrique Vieira Leanor <henrique.inside at gmail.com>


Data: 02/02/2010

PORQUE CRIPTOGRAFAR O DISCO

Quando falamos de segurança da informação, podemos usar várias técnicas e ferramentas para evitar
intrusões remotas e locais através do terminal. Mas nós devemos pensar em outras possibilidades além do
acesso ao terminal propriamente dito.

Como podemos garantir a segurança do nosso servidor se ele for roubado? E se alguém conseguir clonar o
HD? E se roubarem o nosso notebook?

Nessas situações não teremos o que fazer, o ladrão (invasor) vai ter acesso a todas as nossas informações.

O que podemos fazer para evitar esse tipo de situação?

Existem duas coisas que podemos fazer:

A primeira é ter uma boa proteção física aos seus servidores, colocando acessos através de cartões,
acessos biométricos, salas cofres ou pelo menos que a sala fique trancada e somente pessoas de confiança
tenham acesso a eles.

O segundo ponto é criptografar o disco, ou melhor dizendo, colocar uma criptografia nas partições onde
ficam as informações confidencias da empresa.

COMO FAZER ESSA CRIPTOGRAFIA

Para trabalharmos com criptografia de discos e partições, devemos adotar primeiramente um método de
criptografia. Um método que é muito recomendado em sistemas GNU/Linux (//www.vivaolinux.com.br/linux/)
é o LUKS, que significa Linux Unified Key Setup.

O LUKS foi desenvolvido para implementar uma padrão único de criptografia de discos, pois outras soluções
não mantinham uma padronização de criptografia, o que causava grandes dores de cabeças aos usuários
quando precisavam fazer alguma migração de versão ou migração de ferramentas.

Por que o LUKS?

Por que o LUKS é um método padronizado de implementar criptografia de discos.

Qual tipo de padrão?

https://www.vivaolinux.com.br/artigos/impressora.php?codigo=11019 1/5
7/17/2018 Criptografia de disco [Artigo]

O LUKS se baseia em uma documentação escrita por Clemens Fruhwirth chamada "TKS1 - An anti-forensic,
two level, and iterated key setup scheme". Pode-se dizer que o LUKS é a implementação de prova de
conceitos dessa documentação. Para implementarmos o LUKS em um sistema Linux
(//www.vivaolinux.com.br/linux/) utilizaremos as seguintes ferramentas:

dm-crypt: o dm-crypt é um subsistema de criptografia de discos em kernel Linux versão 2.6. Ele faz
parte do infraestrutura device-mapper (sistema de mapeamento de dispositivos de blocos). O dm-
crypt foi desenvolvido para trabalhar com vários modos de criptografia, como CBC, ESSIV, LRW e
XTS. Como o dm-crypt reside na camada de kernel, ele precisa de front-ends para criar os
dispositivos criptografados e manuseá-los. Esses front-ends são o cryptsetup e cryptmount.
cryptsetup: o cryptsetup é usado para configurar a criptografia nos dispositivos utilizando o dm-crypt.
Ele possui comandos para trabalhar com e sem o LUKS.
cryptmount: comando usado para montar/desmontar dispositivos criptografados. Ele permite que
usuários montem dispositivos criptografados sem a necessidade do superusuário.

O QUE A NORMA DA SEGURANÇA DIZ SOBRE CRIPTOGRAFIA DE DISCO

Em relação ao acesso físico, a norma ABNT NBR ISO/IEC 27002:2005 diz no item 9.1.1, que convém que
sejam utilizados perímetros de segurança (barreiras tais como paredes, portões de entrada controlados por
cartão ou balcões de recepção com recepcionistas) para proteger as áreas que contenham informações e
instalações de processamento da informação.

Sobre a criptografia a norma diz no item 12.3.1, na letra C, que convém o uso de criptografia para a
proteção de informações sensíveis transportadas em celulares e PDAs, mídias removíveis ou móveis,
dispositivos ou linhas de comunicação.

Essa criptografia é feita na instalação do sistema operacional ou depois que ele está instalado?

Quando trabalhamos com criptografia de discos, podemos escolher se desejamos fazer na instalação do
sistema ou fazer depois que o sistema já está instalado. As distribuições Debian e Red Hat tem essa opção
de fazer a criptografia logo na instalação.

Como será o nosso trabalho?

No nosso caso, estamos supondo que estamos trabalhando em um servidor que já estava instalado, então
temos alguns procedimentos a seguir para fazer esse trabalho. Se vamos fazer em um servidor que já está
em produção, qual é o primeiro passo a ser feito?

Se vamos criptografar uma partição que já está montada e já contém dados, vamos ter que fazer um
backup, pois na construção do sistema de criptografia os dados serão perdidos. Caso seja uma partição que
ainda não contenha dados esse procedimento é mais tranquilo.

Para o nosso ambiente, vou supor que vocês tem uma partição sobrando, no caso no meu exemplo, vou

https://www.vivaolinux.com.br/artigos/impressora.php?codigo=11019 2/5
7/17/2018 Criptografia de disco [Artigo]

usar a /dev/sda10.

Para trabalharmos com o sistema de criptografia dm-crypt precisamos que os módulos relacionados a ele
estejam ativados:

# lsmod | grep dm
dm_crypt 11172 0
crypto_blkcipher 15236 1 dm_crypt
dm_mod 46184 1 dm_crypt
# lsmod | grep md5
# cat /proc/crypto

Com os módulos carregados, podemos instalar a ferramenta cryptsetup:

# aptitude install cryptsetup

Com o cryptsetup instalado, podemos configurar como será utilizada a criptografia em nossa partição:

# cryptsetup -y --cipher aes-cbc-essiv:sha256 --key-size 256


luksFormat
/dev/sda10
WARNING!
========
This will overwrite data on /dev/hda10 irrevocably.
Are you sure? (Type uppercase yes): YES
Enter LUKS passphrase: <Digite a senha>
Verify passphrase: <Confirme a senha>
Command successful.

Parâmetros do cryptsetup:

-y ou --verify-passphrase: faz a checagem da senha digitada.


--cipher: define qual é o modo de criptografia que o dispositivo vai usar.
--key-size: define em bits o tamanho da chave de criptografia.
luksFormat: indica que o dispositivo vai utilizar o padrão LUKS.

Nesse momento, outros módulos de criptografia foram ativados:

# lsmod | grep aes


# cat /proc/crypto

ATIVANDO O SERVIÇO E DANDO OS ÚLTIMOS RETOQUES

https://www.vivaolinux.com.br/artigos/impressora.php?codigo=11019 3/5
7/17/2018 Criptografia de disco [Artigo]

Após configurarmos o nosso dispositivo, precisamos ativá-lo para ser usado:

# cryptsetup luksOpen /dev/sda10 crypt1


Enter LUKS passphrase:

Com a opção luksOpen, o nosso dispositivo /dev/sda10 foi mapeado para /dev/mapper/crypt1, e a partir de
agora, não pode mais ser acessado diretamente por /dev/sda10, somente por /dev/mapper/crypt1.

# ls -l /dev/mapper/crypt1

Para acessarmos o dispositivo, temos que definir um sistema de arquivos para ele:

# mkfs.ext3 /dev/mapper/crypt1

Agora o nosso dispositivo está pronto para ser usado. Vamos definir um diretório onde ele será montado:

# mdkir /documentos
# mount /dev/mapper/crypt1 /documentos
# ls -l /documentos

O que devemos fazer para a partição ser montada na inicialização do sistema?

Dessa maneira a nossa partição não vai ser montada na inicialização do sistema. E quando estamos falando
partições criptografadas, não basta apenas acrescentar a partição ao /etc/fstab. Ele precisa ser configurado
em mais um arquivo, que é o /etc/crypttab.

Vamos configurar o dispositivo no arquivo /etc/crypttab:

# vim /etc/crypttab

# <target name> <source device> <key file> <options>


  crypt1             /dev/sda10    none       luks

Notem que a key_file está definida como none. Existe a possibilidade de criar um arquivo ou um dispositivo
removível com a chave para esse dispositivo ser iniciado. No nosso caso, a senha será solicitada na
inicialização do sistema.

Agora seguindo os moldes padrão de sistemas Linux (//www.vivaolinux.com.br/linux/), temos que colocar
esse dispositivo no /etc/fstab:

# vim /etc/fstab

/dev/mapper/crypt1   /documentos   ext3   defaults   0 2

https://www.vivaolinux.com.br/artigos/impressora.php?codigo=11019 4/5
7/17/2018 Criptografia de disco [Artigo]

Podemos fazer um teste manual antes de reinicializar o sistema. Para isso precisamos desativar o
dispositivo criptografado e iniciar o script /etc/init.d/cryptdisks:

# cryptsetup luksClose crypt1


# /etc/init.d/cryptdisks start
Enter passphrase to unlock the disk /dev/sda10 (crypt1):
# mount -a
# mount

Agora podemos fazer o teste reinicializando o sistema:

# reboot

Logo na inicialização do sistema será pedido para digitar a senha do ponto de montagem criptografado.

Postado por Henrique Inside.

Espero que gostem!

 Voltar (verArtigo.php?codigo=11019)

https://www.vivaolinux.com.br/artigos/impressora.php?codigo=11019 5/5

Das könnte Ihnen auch gefallen