LUKS + BTRFS + RAID1

0

Eu gostaria de usar o BTRFS RAID1 com dm_crypt em um microserver. A parte difícil é que eu não entendo muitas coisas sobre como os sistemas de arquivos e o LUKS funcionam. Digamos que temos duas partições em uma unidade e fazemos uma criptografia de unidade inteira. Isso significa que ambas as partições serão criptografadas e, sem conhecer a chave, não serei capaz de dizer quais sistemas de arquivos elas possuem? Em caso afirmativo, não entendo como é possível ter uma partição de inicialização não criptografada (necessária para carregar o dm_crypt) em tais unidades ou como o btrfs raid1 funcionará se eu criptografar ambas as unidades e elas não souberem uma da outra até que ambas deles são descriptografados? Por outro lado, se dm_crypt usa as partições btrfs para armazenar os dados criptografados, por exemplo, em um arquivo enorme, o btrfs scrub não funcionaria somente nesse arquivo enorme e um único erro incorrigível não mataria todo o conteúdo dos discos? ?

    
por inf3rno 05.01.2018 / 17:44

2 respostas

0

Eu li alguns textos no tópico. De acordo com eles, o particionamento e formatação são processos separados, então eu não tenho que dar o tipo de sistema de arquivos particionando um dispositivo de bloco (ssd / hdd / virtual?). O dm-crypt pode converter um dispositivo de bloco não criptografado em um criptografado criptografando cada bloco (ou setor?) Individualmente e o btrfs pode viver naquele dispositivo de bloco criptografado.

Nota: o dmcrypt + btrfs precisa de mais de 4 núcleos para funcionar corretamente; 3.2 - os kernels têm problemas de compatibilidade e segurança, os kernels 4.0- têm problemas de desempenho.

O principal problema com essa configuração é que, como o raid1 estará no nível superior, ambos os hdds / ssds serão criptografados de maneira diferente, o que significa penalidade de desempenho e muita criptografia desnecessária. De acordo com outros textos / respostas que li, não há como fazer isso agora. As pessoas estão trabalhando na criptografia do btrfs, mas ainda não há nada estável. Atualmente, a abordagem empilhada com o ecryptfs - a FAQ do btrfs menciona - é muito mais lenta que o dm-crypt, então isso também não seria uma boa solução. Outra opção é usar zfs, que tem suporte a criptografia, mas afaik. consome muita memória comparado ao btrfs. Eu vou ler mais sobre esse sistema de arquivos.

    
por inf3rno 15.01.2018 / 17:22
0
% bl0ck_qu0te%

Sim, ambas as partições serão criptografadas como partições LUKS. Você será capaz de dizer que eles são partições criptografadas LUKS. Sem a chave (e / ou passphrase), você não será capaz de dizer o que está dentro da partição.

% bl0ck_qu0te%

Ou (a) a partição de inicialização é uma partição separada [e não criptografada] ou (b) o carregador de inicialização [GRUB?] solicita a frase secreta e sabe como descriptografar e montar a partição de inicialização. (Eu normalmente uso uma partição de boot não criptografada com o Ubuntu. Eu vi uma partição de boot criptografada em uma instalação do Manjaro Linux.)

% bl0ck_qu0te%

Ouvi dizer que a sobrecarga da criptografia de disco é insignificante. Eu nunca tive um problema com isso. Mas eu nunca medi o impacto no desempenho e não preciso de E / S de disco de alta velocidade no meu sistema.

Em qualquer caso, você pagará apenas o custo da criptografia múltipla ao gravar dados. Ao ler, apenas uma cópia dos dados precisará ser lida.

Eu uso o LUKS + ZFS + RAID1, mas apenas para /home . Eu uso ext4 para / e ext2 para /boot .

(Note que se você tiver N > 2 discos, o modo "RAID1" do BTRFS não é realmente RAID1, pois o BTRFS criará apenas 2 cópias de seus dados, não N cópias conforme requerido pelo RAID1. Em outras palavras, BTRFS "RAID1 "com N > 2 discos oferece mais espaço de armazenamento, não mais redundância.)

    
por mpb 24.08.2018 / 00:05