Hvordan man nemt kan lave krypterede backups på DVD'er med dmcrypt og en ekstra partition

Det nytter ikke meget at man krypterer sin harddisk, hvis man laver ukrypterede backups. Selvom man ikke krypterer sin harddisk kan det give mening af kryptere sine backup, fx hvis de skal transporteres til en off-site beliggenhed.

Antagelser

Opsætning af diske

Først finder vi på nogle variable til enhederne for dvd-brænderen og for den partition, vi vil konstruere backup-en på. Og vi skal have et sted midlertidigt at mounte vore backup.

#!/bin/bash -x
bdev=/dev/hdb2
dvddev=/dev/hdc
mkdir /mnt/bak /mnt/genskab

 
Først skal vi bruge en partition bdev, der er lige så stor som en DVD. En DVD kan fx være på 4.7GByte, men det er ikke de samme GByte som vi regner harddiske i. Hvis vi kommer en tom dvd-skive i brænderen og kører dvd+rw-mediainfo $dvddev så får vi a vide at "Track Size" er fx "2184848*2KB", Dvs 4474568704 bytes eller 2184848*4=8739392 sektorer. Dvs, med fx cfdisk skal vi lave en partition, $bdev, der er lidt mindre end 8739392 sektorer (ikke alle "4.7 GB" dvd'er er helt lige store).

Man kan dog godt bruge en partition, der er større end, hvad der kan være på en DVD og senere give antallet af blokke som argument til mkfs

Krypteringen

Vi bruger dmcrypt som findes i nyere kerner. Jeg antager, at vi har et sted i filsystemet at gemme krypteringsnøglen; fx en USB-stick eller en krypteret partition på harddisken. Men man kan også lade være med at angive en "keyfile", så skal man bare taste nøglen ind selv. Under alle omstændigheder er det dumt at tage krypteret backup fra en disk, hvis nøglen kun ligger på samme disk og man ikke kan huske den.

cryptsetup --key-file /hemmelig/nogle create bak  $bdev
mkfs.ext2 -m0 /dev/mapper/bak
mount /dev/mapper/bak /mnt/bak
 
Nu har vi så et helt tomt filsystem på ca 4.4 GByte at komme vores fortrolige filer i:

cp -r /hemmelig/* /mnt/bak
 
Nu skal vi bare rydde op og brænde vore DVD:

umount /dev/mapper/bak
cryptsetup remove bak 
growisofs -dvd-compat -Z $dvddev=$bdev
 

Genskabe backup

Men en backup er jo ikke meget værd, hvis vi kan få fat i filerne igen. Når vi skal bruge filer på en krypteret backup, sætter vi DVD-skiven i $dvddev og kører:

cryptsetup --key-file /hemmelig/nogle create genskab  $dvddev
mount /dev/mapper/genskab /mnt/genskab
 
Herefter kan vi tilgå filerne i /mnt/genskab

Niels Elgaard Larsen

Tilbage til Elgaards projekter Creative Commons License
This work is licensed under a Creative Commons License.


Tilbage til Elgaards projekter