Introduzione
In questa guida verrà descritto come installare linux slackware 14.0 full encrypted (root e swap crittate) combinando LUKS e LVM. Il sistema verrà installato su un volume logico creato sopra la partizione crittata con luks avendo così il vantaggio di inserire una sola passphrase per accere al sistema.
Preparazione dei dischi
Bootiamo la macchina con il sistema di installazione che più si preferisce(CD, DVD, PXE, USB), al promp, dopo essersi loggati come root, avvieremo cfdisk e provvederemo alla creazione delle partizioni necessarie per ospitare la slackware, in questo caso una piccola partizione di boot da 100MB, e il restante spazio su disco per la root.
|
sda1 primary 100MB sda2 primary 200GB |
crittiamo la partizione
A questo punto procediamo alla creazione della partizione crittata con una chiave di grandezza pari a 256 e con l algoritmo di cifratura di default (aes), ci verrà chiesta una passphrase che verrà impostata a nostro piacimento
|
cryptsetup -s 256 -y luksFormat /dev/sda2 |
Apriamo la partizione crittata in modo da poterla usare in modo chiaro su un mapped device, verrà chiesta la passphrase usata da luksFormat
|
cryptsetup luksOpen /dev/sda2 slackluks |
l’ ultimo argomento del comando indica il nome che vogliamo assegnare al mapped device questo verrà usato per le operazioni di decrittazione e si troverà in /dev/mapper/slackluks
Creiamo i volumi logici con LVM
Ora verrà creato il PV sul device /dev/mapper/slackluks, un VG chiamato cryptvg che ospiterà i due LV, uno per la / e uno per la swap:
|
pvcreate /dev/mapper/slackluks vgcreate cryptvg /dev/mapper/slackluks lvcreate -L 1G -n swap cryptvg lvcreate -L 200G -n root cryptvg |
creiamo i device nodes, attiviamo i volumi logici e formattiamo il volume di swap in modo che venga identificata una partizione di swap valida al momento del setup
|
vgscan --mknodes vgchange -ay mkswap /dev/cryptvg/swap |
Installiamo il sistema
Ora possiamo finalmente possiamo avviare il setup, verrà identificata la LV swap che provvederemo ad attivare, selezioneremo come partizione di root la /dev/cryptvg/root e /dev/sda1 per filesystem di /boot; procediamo come una normalissima installazione.
Configuriamo LILO
A sistema installato, dovremmo occuparci del bootloader lilo, sceglieremo di configuarlo in modalità esperta e di installarlo nell’ MBR. Per prima cosa andremmo ad aggiungere i parametri extra nel kernel, il supporto all’ utf-8 per la console e la partizione di swap che verrà utilizzate per l’ ibernazione:
|
vt.default_utf8=1 resume=/dev/cryptvg/swap |
selezioniamo /dev/cryptvg/root come root partition e installiamo Lilo nell’ MBR, noteremo subito un messaggio di errore “installation failed” , questo succede perchè dobbiamo ancora creare l’initrd, per ora ignoriamolo e selezioniamo exit per finire l’ installazione. A questo punto ci ritorneremo dinuovo al promp, è molto importante che la macchina NON venga riavviata prima che provvederemo alla creazione dell’ initrd.
Per la sua creazione bisogna chrootarsi sul filesystem della slackware appena installata
ora ci troviamo sulla root della slackware, nella quale andremmo a creare l’ initrd con il supporto per LVM , CRYPT e HIBERNATION. Assumendo che sia stata formattata la / come ext3 e installato il kernel di default 3.2.29-smp, lanciamo il comando:
|
mkinitrd -c -k 3.2.29-smp -m ext3 -f ext3 -r /dev/cryptvg/root -C /dev/sda2 -L -l it -h /dev/cryptvg/swap |
che provvederà a creare l’ initial ramdisk con il supporto all’ LVM, mappatura tastiera italiana (ulite quando si inserià la passphrase) e per finire sarà specificata la partizione di swap per l’ ibernazione.
/etc/lilo.conf
Fatto il tutto avremmo il file di configuarzione di Lilo simile a quello postato quà sotto.
|
lba32 boot = /dev/sda bitmap = /boot/slack.bmp bmp-colors = 255,0,255,0,255,0 bmp-table = 60,6,1,16 bmp-timer = 65,27,0,255 append=" vt.default_utf8=1 resume=/dev/cryptvg/swap" prompt timeout = 50 vga=769 image = /boot/vmlinuz initrd = /boot/initrd.gz root = /dev/cryptvg/root label = slackware read-only |
Il sistema ora è pronto per essere rebootato, e al suo avvio verrà chiesta la passphrase e se valida verranno sbloccate le partizioni crittate.