# Configurando Volumes Cryptografados

&d-i; permite que você configure partições criptografadas. Todo arquivo que você escreva em uma partição deste tipo é imediatamente salvo no dispositivo de forma criptografada. O acesso aos dados criptografados é garantido apenas após o fornecimento da senha usada quando a partição criptografada foi originalmente criada. Essa característica é útil para proteger dados sensíveis em caso de furto do laptop ou do disco rígido. O ladrão pode obter acesso físico ao disco rígido, mas sem ter a senha correta, os dados do disco rígido irão parecer como caracteres aleatórios.

As duas partições mais importantes a serem criptografadas são: a partição home, onde seus dados pessoais são armazenados, e a partição swap, onde dados sensíveis podem ser guardados temporariamente durante o uso do disco rígido. Claro, nada impede você de criptografar qualquer outra partição que possa ser interessante. Como por exemplo `/var`, onde servidores de banco de dados, de correio eletrônico ou de impressão armazenam seus dados, ou `/tmp`, que é usado por vários programas para armazenar arquivos temporários potencialmente interessantes. Algumas pessoas talvez queiram criptografar todo o sistema. A única exceção é a partição `/boot`, a qual tem que permanecer descriptografada, porque atualmente não existe maneira de carregar o kernel a partir de uma partição criptografada.

Por favor note que a performance das partições criptografadas será menores do que as não criptografadas porque os dados precisam ser descriptografados ou criptografados para cada leitura ou escrita. O impacto na performance depende da velocidade da sua CPU, algoritmo escolhido e o comprimento da chave.

Para usar criptografia, você tem que criar uma nova partição selecionando algum espaço livre no menu principal de particionamento. Outra opção é escolher uma partição existente (e.g. uma partição comum, um volume lógico LVM ou um volume RAID). No menu Configurações da partição, você precisa selecionar volume físico a ser criptografado na opção Usar como: . O menu irá então mudar para incluir várias opções de criptografia para a partição.

&d-i; suporta vários métodos de criptografia. O método padrão é dm-crypt (incluído nos kernels Linux mais recentes, capaz de hospedar volumes LVM físicos), o outro é o loop-AES (mais antigo, mantido separadamente a partir da árvore do kernel do Linux). A menos que você tenha fortes motivos por outra opção, é recomendado usar o padrão.

Primeiro, vamos ver as opções disponíveis quando você seleciona `Device-mapper (dm-crypt)` como método de criptografia. Como sempre: quando estiver em dúvida, use o padrão. Eles foram cuidadosamente escolhidos, tendo em mente a segurança.

Cryptografia: `aes`

- Essa opção permite que você selecione o algoritmo de criptografia (cipher) que será usado para criptografar os dados da partição. &d-i; atualmente suporta os seguintes blocos criptográficos: aes, blowfish, serpent, e twofish. Está além do escopo deste documento discutir as qualidades destes diferentes algoritmos, contudo, deve ajudar em sua decisão saber que em 2000, AES foi escolhido pelo American National Institute of Standards and Technology como o algoritmo de criptografia padrão de proteção para informações sensíveis do século 21.

Tamanho da chave: `256`

- Aqui você pode especificar o comprimento da chave de criptografia. Com uma chave maior, a capacidade de criptografar geralmente é melhorada. Por outro lado, aumentar o comprimento da chave geralmente tem um impacto negativo na performance. A disponibilidade do tamanho da chave varia de acordo com o algoritmo.

Algoritmo IV: `cbc-essiv:sha256`

- O Initialization Vector ou algoritmo IV é usado na criptografia para garantir que aplicando o algoritmo no mesmo dado em texto plano com a mesma chave sempre produz um único texto cifrado. A idéia é prevenir que o atacante deduza informações a partir de padrões de repetição nos dados criptografados.

  A partir das alternativas fornecidas, o padrão `cbc-essiv:sha256` é, atualmente, o menos vulnerável a ataques conhecidos. Use as outras alternativas apenas quando você precisar garantir compatibilidade com algum sistema previamente instalado que não seja capaz de usar algoritmos mais recentes.

Chave criptográfica: `Senha (passphrase)`

- Aqui você pode escolher o tipo de chave criptográfica para esta partição.

  Passphrase

- A chave criptográfica será computada

  Usando uma senha como chave atualmente significa que a partição irá ser configurada usando LUKS.

  com base em uma senha que você será capaz de digitar mais adiante no processo.

Chave aleatória

- Uma nova chave criptográfica será gerada a partir de dados aleatórios cada vez que você tentar montar uma partição criptografada. Em outras palavras: em todo desligamento da máquina (shutdown) o índice da partição será perdido com a chave sendo apagada da memória. (Claro, você poderia tentar adivinhar a chave com um ataque de força bruta, mas a menos que existam falhas não conhecidas no algoritmo de criptografia, isso não é viável dentro da espectativa de vida atual).

  Chaves aleatórias são úteis para partições swap porque você não precisa se preocupar em lembrar a senha ou limpar informações sensíveis da partição swap antes de desligar seu computador. Contudo, isso também significa que você não será capaz de usar a funcionalidade suspend-to-disk oferecida pelos novos kernels Linux já que será impossível (durante uma subseqüente inicialização) recuperar os dados armazenados (suspended) na partição swap.

Apagar dados: `sim`

- Determina quando o índice desta partição deve ser sobrescrito com dados aleatórios antes da configuração da criptografia. Isso é recomendado porque de outra forma pode ser possível ao atacante discernir quais partes da partição estão sendo usadas e quais não estão. Em adição, isso irá tornar mais difícil a recuperação de qualquer dado deixado por instalações prévias

  Entretanto, acredita-se que o pessoal das agências de três letras (three-letter agencies) consegue recuperar os dados mesmo após várias reescritas em fitas magnéticas.

  .

Se você selecionar Método de criptografia: Loopback (loop-AES) , o menu é alterado, fornecendo as seguintes opções:

Criptografia: `AES256`

- Para loop-AES, diferentemente de dm-crypt, as opções para criptografia e tamanho da chave são combinados, então você pode selecionar os dois no mesmo momento. Por favor veja as seções acima sobre algoritmos e tamanho das chaves para mais informações.

Chave criptográfica: `Keyfile (GnuPG)`

- Aqui você pode selecionar o tipo de chave criptográfica para a partição.

  Keyfile (GnuPG)

- A chave criptográfica será gerada a partir de dados aleatórios durante a instalação. Além disso essa chave será criptografada com o GnuPG, então para usá-la, você precisará digitar a senha apropriada (você será questionado a fornecer uma mais tarde no processo).

Chave aleatória

- Por favor veja a seção sobre chaves aleatórias acima.

Apagar dados: `sim`

- Por favor veja a seção sobre apagar dados acima.

Após ter selecionado os parâmetros desejados para suas partições criptografadas, volte ao menu de particionamento principal. Deve agora existir um novo item chamado Configurar volumes criptografados. Depois de selecioná-lo, você será questionado a confirmar a remoção dos dados nas partições marcadas para serem apagadas e possivelmente outras ações como escrever uma nova tabela de partições. Para partições grandes isso pode levar algum tempo.

Continuando, você deverá digitar a senha para as partições configuradas para tal. Boas senhas devem ter mais de 8 caracteres, devem ser uma mistura de números, letras e outros caracteres e não deve conter palavras de dicionário ou informações facilmente associadas com você (como aniversários, hobbies, nomes de animais domésticos, nomes de familiares ou parentes, etc.).

Antes de você digitar qualquer senha, você deve ter certeza de que seu teclado está configurado corretamente e gera os caracteres esperados. Se estiver inseguro, você pode trocar para o segundo console virtual e digitar algum texto na linha de comando. Isso garante que você não terá surpresas mais tarde, e.g. tentando digitar senhas usando um teclado com disposição (layout) qwerty enquanto você usa uma disposição (layout) azerty, durante a instalação. Essa situação pode ter várias causas. Talvez você tenha trocado o teclado, e assim a disposição (layout), durante a instalação, ou a disposição das teclas do teclado selecionada ainda não tenha sido ajustada, durante a digitação da senha para o sistema de arquivos raiz.

Se você selecionou o uso de outros métodos ao invés de senha para criar chaves criptográficas, elas serão geradas agora. Por causa do kernel, pode não ter sido recolhido uma quantidade suficiente de entropia neste estágio inicial da instalação, e o processo pode demorar. Você pode ajudar a acelerar o processo gerando entropia: e.g. pressionando teclas aleatórias, ou trocando de shell no segundo console virtual e gerando algum tráfego no disco e na rede (baixando alguns arquivos, enviando arquivos grandes para `/dev/null`, etc.). Isso será repetido para cada partição a ser criptografada.

Após retornar para o menu principal de particionamento, você verá todos os volumes criptografados como partições adicionais as quais podem ser configuradas da mesma forma que as partições comuns. O seguinte exemplo mostra dois diferentes volumes. O primeiro é criptografado via dm-crypt, o segundo via loop-AES.

    Volume criptografado (sda2_crypt) - 115.1 GB Linux device-mapper
         #1 115.1 GB  F ext3

    Loopback (loop0) - 515.2 MB AES256 keyfile
         #1 515.2 MB  F ext3

Agora é hora de atribuir pontos de montagem aos volumes e opcionalmente alterar o sistema de arquivos se o padrão não lhe agradar.

Preste atenção aos identificadores entre os parênteses (`sda2_crypt` e `loop0` neste exemplo) e os pontos de montagem que você atribuiu para cada volume criptografado. Você irá precisar dessa informação mais tarde, durante a inicialização do novo sistema. As diferenças entre a inicialização comum e com criptografia envolvida será coberta mais tarde em mount-encrypted-volumes.

Uma vez que você esteja satisfeito com o esquema de particionamento, continue com a instalação.