2016-05-01 11:13:57 +02:00
<!DOCTYPE html>
< html lang = "en-us" >
< head >
< link href = "http://gmpg.org/xfn/11" rel = "profile" >
< meta http-equiv = "X-UA-Compatible" content = "IE=edge" >
< meta http-equiv = "content-type" content = "text/html; charset=utf-8" >
<!-- Enable responsiveness on mobile devices -->
< meta name = "viewport" content = "width=device-width, initial-scale=1.0, maximum-scale=1" >
< title >
Guida pratica a LUKS · Caught in the Net
< / title >
<!-- CSS -->
< link rel = "stylesheet" href = "/public/css/poole.css" >
< link rel = "stylesheet" href = "/public/css/syntax.css" >
< link rel = "stylesheet" href = "/public/css/hyde.css" >
<!-- Icons -->
< link rel = "apple-touch-icon-precomposed" sizes = "144x144" href = "/public/apple-touch-icon-144-precomposed.png" >
< link rel = "shortcut icon" href = "/public/favicon.ico" >
<!-- RSS -->
< link rel = "alternate" type = "application/rss+xml" title = "RSS" href = "/atom.xml" >
< / head >
< body class = "theme-base-09" >
< div class = "sidebar" >
< div class = "container sidebar-sticky" >
< div class = "sidebar-about" >
< h1 >
< a href = "/" >
Caught in the Net
< / a >
< / h1 >
< p class = "lead" > < / p >
< / div >
< nav class = "sidebar-nav" >
< a class = "sidebar-nav-item" href = "/" > Home< / a >
< a class = "sidebar-nav-item" href = "/about/" > About< / a >
< a class = "sidebar-nav-item" href = "/archive/" > Archive< / a >
2016-07-22 21:12:39 +02:00
< a class = "sidebar-nav-item" href = "/contattami/" > Contact me< / a >
2016-05-01 11:13:57 +02:00
2016-09-17 15:13:02 +02:00
2016-05-01 11:13:57 +02:00
2016-05-03 23:38:08 +02:00
2016-07-15 04:40:39 +02:00
2016-05-01 11:13:57 +02:00
2016-09-17 15:13:02 +02:00
2016-05-01 11:13:57 +02:00
2016-09-17 15:13:02 +02:00
< a class = "sidebar-nav-item" href = "/feed.xml" > RSS< / a >
2016-11-18 20:45:39 +01:00
< a class = "sidebar-nav-item" href = "http://francescomecca.eu:3000/explore/repos" > Personal Git< / a >
2016-05-01 11:13:57 +02:00
< span class = "sidebar-nav-item" href = "" > Powered by Jekyll and Hyde< / span >
< / nav >
< p > © 2016. CC BY-SA 4.0 International < / p >
< / div >
< / div >
< h3 class = "masthead-title" >
< a href = "/" title = "Home" > Caught in the Net< / a >
< / h3 >
< div class = "content container" >
< div class = "post" >
< h1 class = "post-title" > Guida pratica a LUKS< / h1 >
< span class = "post-date" > 01 Jun 2015< / span >
< blockquote >
< div style = "text-align: left;" >
< i > “ When privacy is outlawed, only outlaws will have privacy” < / i >
< / div >
< / blockquote >
< p style = "text-align: right;" >
< a href = "https://en.wikipedia.org/wiki/Phil_Zimmermann" > Phil Zimmerman < / a >
< / p >
< p style = "text-align: left;" >
Questa e` una guida pratica all’ uso di LUKS su Linux.
< / p >
< p style = "text-align: left;" >
LUKS e` un acronimo che sta per Linux Unified Key Setup ed e` il formato standard per il disk-encryption, creato nel 2004, si distingue da molti altri formati crittografici per la particolareggiata documentazione e soprattutto per esser stato sottoposto ad auditing, ovvero il processo di controllo del codice sorgente per verificarne l’ integrita`, l’ efficacia e la robustezza degli algoritmi e l’ assenza di backdoor o bug software critici.
< / p >
< p style = "text-align: left;" >
Il primo passo per utilizzare LUKS e` installarlo sulla propria distribuzione, o controllare se e` gia` presente.
< / p >
< h2 style = "text-align: left;" >
Preparare la partizione
< / h2 >
< p style = "text-align: left;" >
In questo esempio la partizione /dev/sda1 viene formattata e sovrascritta.
< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # cryptsetup -y -v luksFormat /dev/sda1
WARNING!
========
This will overwrite data on /dev/sda1 irrevocably.
Are you sure? (Type uppercase yes): YES
Enter LUKS passphrase:
Verify passphrase:
Command successful.< / pre >
< p > In questo post useremo i parametri di default che sono:< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # cryptsetup -v – cipher aes-xts-plain64 – key-size 256 – hash sha1 – iter-time 1000 – use-urandom – verify-passphrase luksFormat /dev/sda1< / pre >
< p > ed equivalgono al precedente; se si vuole adottare un livello di sicurezza maggiore e personalizzata si puo` eseguire< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > #cryptsetup benchmark< / pre >
< p > e scegliere il cypher e l’ algoritmo che si preferisce. Si ricorda che il numero relativo alla dimensione della chiave e` la meta` di quello usato da LUKS, ovvero 512 bit in questo caso.< / p >
< p > Il prossimo comando inizializza il volume dopo aver inserito la chiave per il volume. Il terzo argomento e` il nome che si vuole scegliere per la partizione.< / p >
< p > La password scelta non puo` esser in nessun modo recuperata.< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > #cryptsetup luksOpen /dev/sda1 testvolume
Enter passphrase for /dev/sda1:< / pre >
< p style = "text-align: left;" >
Ora /dev/sda1 correttemente inizializzato viene mappato su /dev/mapper/testvolume. Per verificare lo stato del volume:
< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # cryptsetup -v status testvolume
/dev/mapper/testvolume is active.
type: LUKS1
cipher: aes-cbc-essiv:sha256
keysize: 512 bits
device: /dev/sda1
offset: 4096
sectors size: 419426304
sectors mode: read/write
Command successful.< / pre >
< h2 style = "text-align: left;" >
Formattare la partizione
< / h2 >
< p > Ora ci si deve assicurare che in caso di un’ analisi esterna ogni dato venga visto come una serie random di zero ed uno senza valore e assicurarsi che non ci sia un leak di informazioni relative all’ uso del disco:< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # dd if=/dev/zero of=/dev/mapper/testvolume< / pre >
< p > Poi creare un filesystem, in questo caso ext4< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # mkfs.ext4 /dev/mapper/testvolume< / pre >
< h2 style = "text-align: left;" >
Montare e chiudere il disco
< / h2 >
< p > Per montare da /dev/mapper il disco e poterlo utilizzare digitare:< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # mount /dev/mapper/testvolume /mnt/testvolume< / pre >
< p > e per chiudere il volume in maniera sicura:< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # umount /mnt/testvolume
# cryptsetup luksClose testvolume< / pre >
< h2 style = "text-align: left;" >
Cambiare password
< / h2 >
< p > LUKS supporta anche piu` di una password per volume quindi si procede aggiungendo una nuova password:< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # cryptsetup luksAddKey /dev/sda1
Enter any passphrase:
Enter new passphrase for key slot:
Verify passphrase:< / pre >
< p > e poi rimuovendo quella precedente:< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > # cryptsetup luksRemoveKey /dev/sda1< / pre >
< p > Oppure in alternativa si puo` utilizzare< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > #cryptsetup luksChangekey /dev/sda1< / pre >
< p > Se si volesse rendere completamente inaccessibile il volume basta rimuovere la chiave attraverso il comando:< / p >
< pre class = "wp-code-highlight prettyprint linenums:1" > #cryptsetup luksErase /dev/sda< / pre >
< p style = "text-align: left;" >
questa opzione non richiede password ed e` irreversibile.
< / p >
< p style = "text-align: right;" >
Francesco Mecca
< / p >
< / div >
2016-09-17 15:13:02 +02:00
<!-- <div class="related"> -->
<!-- <related - posts /> -->
<!-- <h2>Related Posts</h2> -->
<!-- <ul class="related - posts"> -->
<!-- -->
<!-- <li> -->
<!-- <h3> -->
2016-11-18 20:45:39 +01:00
<!-- <a href="/pescewanda/2016/11/11/machine - learning - PARTE2/"> -->
<!-- Capire il Machine Learning (parte 2) -->
<!-- <small>11 Nov 2016</small> -->
2016-09-17 15:13:02 +02:00
<!-- </a> -->
<!-- </h3> -->
<!-- </li> -->
<!-- -->
<!-- <li> -->
<!-- <h3> -->
2016-11-18 20:45:39 +01:00
<!-- <a href="/pescewanda/2016/11/10/machine - learning - intro/"> -->
<!-- Capire il Machine Learning (parte 1) -->
<!-- <small>10 Nov 2016</small> -->
2016-09-17 15:13:02 +02:00
<!-- </a> -->
<!-- </h3> -->
<!-- </li> -->
<!-- -->
<!-- <li> -->
<!-- <h3> -->
2016-11-18 20:45:39 +01:00
<!-- <a href="/pescewanda/2016/07/07/pres - berk/"> -->
<!-- A short talk about cryptography at the Berkman Klein Center -->
<!-- <small>07 Jul 2016</small> -->
2016-09-17 15:13:02 +02:00
<!-- </a> -->
<!-- </h3> -->
<!-- </li> -->
<!-- -->
<!-- <li> -->
<!-- <h3> -->
2016-11-18 20:45:39 +01:00
<!-- <a href="/pescewanda/2016/07/06/IM - services/"> -->
<!-- Phone messaging apps comparison -->
<!-- <small>06 Jul 2016</small> -->
2016-09-17 15:13:02 +02:00
<!-- </a> -->
<!-- </h3> -->
<!-- </li> -->
<!-- -->
2016-11-18 20:49:28 +01:00
<!-- <li> -->
<!-- <h3> -->
<!-- <a href="/pescewanda/2016/07/05/arduino_keyboard/"> -->
<!-- Arduino Uno as HID keyboard -->
<!-- <small>05 Jul 2016</small> -->
<!-- </a> -->
<!-- </h3> -->
<!-- </li> -->
<!-- -->
2016-09-17 15:13:02 +02:00
<!-- </ul> -->
<!-- </div> -->
2016-11-18 20:45:39 +01:00
2016-09-17 15:13:02 +02:00
2016-11-18 20:45:39 +01:00
2016-09-17 15:13:02 +02:00
2016-11-18 20:49:28 +01:00
2016-09-17 15:13:02 +02:00
2016-11-18 20:45:39 +01:00
2016-09-17 15:13:02 +02:00
2016-11-18 20:45:39 +01:00
2016-09-17 15:13:02 +02:00
2016-11-18 20:49:28 +01:00
2016-09-17 15:13:02 +02:00
2016-11-18 20:45:39 +01:00
2016-09-17 15:13:02 +02:00
2016-11-18 20:45:39 +01:00
2016-09-17 15:13:02 +02:00
2016-11-18 20:45:39 +01:00
2016-11-18 20:49:28 +01:00
2016-11-18 20:45:39 +01:00
2016-09-17 15:13:02 +02:00
2016-05-01 11:13:57 +02:00
< / div >
2016-09-17 15:13:02 +02:00
<!-- <link rel="alternate" type="application/rss+xml" title="Francesco Mecca RSS" href="/feed.xml"> -->
2016-05-01 11:13:57 +02:00
< / body >
< / html >