Installazione criptata di Debian: Difference between revisions

From RVM Wiki
Jump to navigation Jump to search
m Created page with "==Scenario== * La macchian da installare contiene due dischi sda=boot+root sdb=data * Viene fatta l'installazione e successivamente creata la partizione dati sul secondo disco …"
 
mNo edit summary
Line 6: Line 6:
* Si configura l'unlock automatico della partizione dati
* Si configura l'unlock automatico della partizione dati
* Si configura l'unlock da renoto per la partizione root
* Si configura l'unlock da renoto per la partizione root
* '''ATTENZIONE: l'unlock remoto consente di sbloccare solo la root, quindi se nons i abilita prima l'unlock automatico delle altre partizioni, il sistema si blocca.
* '''ATTENZIONE: l'unlock remoto consente di sbloccare solo la root, quindi se non si abilita prima l'unlock automatico delle altre partizioni, il sistema si blocca.


==Installazione==
==Installazione==
* Far partire l'installazione avanzata
* Far partire l'installazione avanzata
* Creare una partizione di boot ext4 NON crtiptata sda1
* Creare una partizione di boot ext4 NON criptata sda1
* Creare un'altra partizione che conterrà il volume di root criptato sda2
* Creare un'altra partizione che conterrà il volume di root criptato sda2
* Installare
* Installare
Line 20: Line 20:
  sudo cryptsetup --verify-passphrase --verbose --hash=sha256 --cipher=aes-cbc-essiv:sha256 --key-size=256 luksFormat /dev/sdb1
  sudo cryptsetup --verify-passphrase --verbose --hash=sha256 --cipher=aes-cbc-essiv:sha256 --key-size=256 luksFormat /dev/sdb1
* Attivarla con il nome sdb1_crypt
* Attivarla con il nome sdb1_crypt
  cryptsetup luksOpen
  sudo cryptsetup luksOpen /dev/sdb1 sdb1_crypt
* Formattarla
sudo mkfs.ext4 /dev/mapper/sdb1_crypt
* Identificare l'UUID della partizioen cifrata:
sudo cryptsetup luksUUID /dev/sdb1
aae1dcfb-6114-4e17-ab9d-72856414287c
 
* Inserirla in /etc/crypttab
sudoedit /etc/crypttab
 
sdb1_crypt UUID=aae1dcfb-6114-4e17-ab9d-72856414287c none luks
 
* Montarla e inserirla in /etc/fstab
* Aggiornare l'initrd
sudo update-initramfs -u -k all
* Smontare la partizione
* Fermarla
sudo cryptsetup luksClose sdb1_crypt
* Riavviare: deve essere richiesta la password per la root e per la partizione dati, che deve risultare montata
 
==Unlock automatico della partizione dati==
* In pratica si consente lo sblocco del volume dati tramite un keyfile, che si trova sulla root, a sua volta criptata. In questo modo lo sblocco della root consente lo sblocco della dati in automatico
* Creare il file di unlock
  sudo dd if=/dev/urandom of=/root/sdb1_crypt-keyfile bs=1024 count=4
* Dare le permission:
sudo chmod 0400 /etc/sdb1_crypt-keyfile
* Aggiungere il keyfile al volume, inserendo una password qualsiasi che non sarà utilizzata:
sudo cryptsetup luksAddKey /dev/sdb1 /etc/sdb1_crypt-keyfile
* Aggiornare crypttab per usare il keyfile:
sudoedit /etc/crypttab
 
sdb1_crypt UUID=aae1dcfb-6114-4e17-ab9d-72856414287c /etc/sdb1_crypt-keyfile luks
 
* Aggiornare l'initrd
sudo update-initramfs -u -k all
* Riavviare: deve essere richiesta '''SOLO''' la password per la root e la partizione dati deve montarsi senza alcuna richiesta di password.
==Consentire lo sblocco da remoto in SSH==
* Si installa dropbear, che consente di lanciare ssh dall'initrd, ed accedere da remoto. Una volta entrati, si inserisce la password in una pipe, ed il boot procede. Al boot dropbear verrà chiuso e si riattiverà nuovamente openssh
 
 
==Riferimenti==
*[http://guide.debianizzati.org/index.php/Volumi_criptati_LUKS_-_Creazione_e_uso_con_cryptmount#Mappare_e_montare_la_partizione_criptata Volumi criptati LUKS - Creazione e uso con cryptmount - Guide@Debianizzati.Org]
*[http://debianalwaysmore.blogspot.it/2011/06/encrypted-filesystems-in-debian-squeeze.html Encrypted filesystems in Debian Squeeze]
*[http://www.howtoforge.com/automatically-unlock-luks-encrypted-drives-with-a-keyfile HOWTO: Automatically Unlock LUKS Encrypted Drives With A Keyfile | HowtoForge - Linux Howtos and Tutorials]

Revision as of 14:18, 7 November 2012

Scenario

  • La macchian da installare contiene due dischi
sda=boot+root
sdb=data
  • Viene fatta l'installazione e successivamente creata la partizione dati sul secondo disco
  • Si configura l'unlock automatico della partizione dati
  • Si configura l'unlock da renoto per la partizione root
  • ATTENZIONE: l'unlock remoto consente di sbloccare solo la root, quindi se non si abilita prima l'unlock automatico delle altre partizioni, il sistema si blocca.

Installazione

  • Far partire l'installazione avanzata
  • Creare una partizione di boot ext4 NON criptata sda1
  • Creare un'altra partizione che conterrà il volume di root criptato sda2
  • Installare
  • Al reboot viene richiesta la password ed il boot procede

Creazione partizione dati

  • Creare partizione sdb1
  • Cifrarla:
sudo cryptsetup --verify-passphrase --verbose --hash=sha256 --cipher=aes-cbc-essiv:sha256 --key-size=256 luksFormat /dev/sdb1
  • Attivarla con il nome sdb1_crypt
sudo cryptsetup luksOpen /dev/sdb1 sdb1_crypt
  • Formattarla
sudo mkfs.ext4 /dev/mapper/sdb1_crypt
  • Identificare l'UUID della partizioen cifrata:
sudo cryptsetup luksUUID /dev/sdb1
aae1dcfb-6114-4e17-ab9d-72856414287c
  • Inserirla in /etc/crypttab
sudoedit /etc/crypttab
sdb1_crypt UUID=aae1dcfb-6114-4e17-ab9d-72856414287c none luks
  • Montarla e inserirla in /etc/fstab
  • Aggiornare l'initrd
sudo update-initramfs -u -k all
  • Smontare la partizione
  • Fermarla
sudo cryptsetup luksClose sdb1_crypt
  • Riavviare: deve essere richiesta la password per la root e per la partizione dati, che deve risultare montata

Unlock automatico della partizione dati

  • In pratica si consente lo sblocco del volume dati tramite un keyfile, che si trova sulla root, a sua volta criptata. In questo modo lo sblocco della root consente lo sblocco della dati in automatico
  • Creare il file di unlock
 sudo dd if=/dev/urandom of=/root/sdb1_crypt-keyfile bs=1024 count=4 
  • Dare le permission:
sudo chmod 0400 /etc/sdb1_crypt-keyfile
  • Aggiungere il keyfile al volume, inserendo una password qualsiasi che non sarà utilizzata:
sudo cryptsetup luksAddKey /dev/sdb1 /etc/sdb1_crypt-keyfile
  • Aggiornare crypttab per usare il keyfile:
sudoedit /etc/crypttab
sdb1_crypt UUID=aae1dcfb-6114-4e17-ab9d-72856414287c /etc/sdb1_crypt-keyfile luks
  • Aggiornare l'initrd
sudo update-initramfs -u -k all
  • Riavviare: deve essere richiesta SOLO la password per la root e la partizione dati deve montarsi senza alcuna richiesta di password.

Consentire lo sblocco da remoto in SSH

  • Si installa dropbear, che consente di lanciare ssh dall'initrd, ed accedere da remoto. Una volta entrati, si inserisce la password in una pipe, ed il boot procede. Al boot dropbear verrà chiuso e si riattiverà nuovamente openssh


Riferimenti