Gostaria de proteger os dados do meu servidor Linux contra roubo físico usando partições criptografadas com um arquivo-chave armazenado em outro servidor da minha rede. O outro servidor seria, na verdade, meu roteador, que é muito pequeno, em um local físico diferente do servidor e acessível por ssh.
Eu imagino que as chances de alguém roubar o servidor de um local, invadir um segundo local, localizar e roubar o roteador e, posteriormente, configurá-los na mesma rede são muito pequenas. Isso significa que meu servidor sempre reinicializará e iniciará todos os serviços, desde que esteja conectado à minha rede, mas meus dados importantes estarão protegidos se algum dia sair do prédio.
A sequência de inicialização seria algo como:
/
, /var
, /tmp
etc.) /home
, /opt
etc.) Eu não sei como ligar a sequência de inicialização LVM / crypto para inserir um script para obter a chave, nem sei como alterar a seqüência de inicialização para que a rede seja iniciada antes dessa etapa.
O usuário root na caixa Linux teria uma chave ssh configurada no roteador, de modo que pudesse ssh sem senha, algo como:
PASSPHRASE=$(ssh router cat /config/disk-passphrase.txt)
cryptsetup luksOpen /dev/sda6 sda6_crypt <<< $PASSPHRASE
Este é o layout do disco que tenho até agora, embora esteja aberto para alterá-lo, se necessário:
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda2
├─sda5 LVM2_memb fjRt18-XKFm-z3RN-1D7t-zkuw-sMal-KyOZ6Z
│ ├─garage--main--vg-tmp ext4 e90a6186-bf09-41f7-b8bc-392e0fba2207 /tmp
│ ├─garage--main--vg-var ext4 ee878d29-3b44-463f-adba-083155ea29da /var
│ └─garage--main--vg-root ext4 f4fa0962-3c2c-456c-9ee0-84c47d6c12c9 /
├─sda1 ext4 60d06dea-a07b-4af3-bf30-70fa3f82267d /boot
└─sda6 crypto_LU 31b7b643-188c-4ae9-bac6-75316b37d562
└─sda6_crypt LVM2_memb ynUOJB-iRsP-djql-Tzrl-nfHh-Smga-ji4OcT
├─garage--enc--vg-opt ext4 2f149989-f64c-4cab-8a47-fea80ebf4c8e /opt
├─garage--enc--vg-swap_0 swap bab96476-7209-42c7-9f2a-113dd5c4da67 [SWAP]
└─garage--enc--vg-home ext4 c73b9432-ec32-412c-baa4-1329adef9c56 /home
Tags lvm disk-encryption