Eseguo un piccolo computer con una partizione di dati crittografata. In modo da avere il minimo sforzo possibile per decrittografare il disco rigido dopo un riavvio (nessun accesso ssh extra, inserimento password ecc.), Ho pensato di archiviare il KeyFile su un piccolo Raspberry Zero nella rete locale in un contenitore crittografato. Il Raspberry viene eseguito 247 e monta il contenitore crittografato in / mnt / KeyStore /. Non appena il computer si avvia, recupera il KeyFile dal Raspberry, decodifica e monta la partizione dati, quindi distrugge il KeyFile. Il processo di decodifica dipende così tanto dal Raspberry.
Ho aggiunto un codice di esempio funzionante.
# Load SSH Agent and add Keys
eval 'ssh-agent -s -t 5m'
ssh-add -t 5m /root/.ssh/*.prv
# Create RamFS
[[ -d /root/myramfs ]] || mkdir /root/myramfs
mount ramfs /root/myramfs/ -t ramfs
# Get the KeyFile from the KeyStore
scp [email protected]:/mnt/keyStore/keyFile /root/myramfs/keyFile
# Decrypt the device
cryptsetup open /dev/sda1 storage --key-file /root/myramfs/keyFile
# Remove the KeyFile and close the RamFS memory
shred --remove --zero /root/myramfs/keyFile
umount /root/myramfs
# Mount the device
mount /dev/mapper/storage /mnt/storage -o noatime,defaults
Ci sono miglioramenti o dubbi?