francescomecca.eu/_site/index.php/archives/19.html
2017-03-20 00:51:47 +01:00

948 lines
15 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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 &middot; 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>
<a class="sidebar-nav-item" href="/contattami/">Contact me</a>
<a class="sidebar-nav-item" href="/feed.xml">RSS</a>
<a class="sidebar-nav-item" href="http://francescomecca.eu:3000/explore/repos">Personal Git</a>
<a class="sidebar-nav-item" href="https://github.com/FraMecca">Github</a>
<span class="sidebar-nav-item" href="" >Powered by Jekyll and Hyde</span>
</nav>
<p>&copy; 2017. 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>&#8220;When privacy is outlawed, only outlaws will have privacy&#8221;</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 alluso 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 lintegrita`, lefficacia e la robustezza degli algoritmi e lassenza 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 lalgoritmo 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 unanalisi 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 alluso 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>
<!--<div class="related">-->
<!--<related-posts />-->
<!--<h2>Related Posts</h2>-->
<!--<ul class="related-posts">-->
<!---->
<!--<li>-->
<!--<h3>-->
<!--<a href="/pescewanda/2017/03/07/spazio-digitale-rant-facebook/">-->
<!--Breve riflessione dal mio piccolo mondo virtuale-->
<!--<small>07 Mar 2017</small>-->
<!--</a>-->
<!--</h3>-->
<!--</li>-->
<!---->
<!--<li>-->
<!--<h3>-->
<!--<a href="/pescewanda/2016/11/15/machine-learning-PARTE3/">-->
<!--Capire il Machine Learning (parte 3)-->
<!--<small>15 Nov 2016</small>-->
<!--</a>-->
<!--</h3>-->
<!--</li>-->
<!---->
<!--<li>-->
<!--<h3>-->
<!--<a href="/pescewanda/2016/11/11/machine-learning-PARTE2/">-->
<!--Capire il Machine Learning (parte 2)-->
<!--<small>11 Nov 2016</small>-->
<!--</a>-->
<!--</h3>-->
<!--</li>-->
<!---->
<!--<li>-->
<!--<h3>-->
<!--<a href="/pescewanda/2016/11/10/machine-learning-intro/">-->
<!--Capire il Machine Learning (parte 1)-->
<!--<small>10 Nov 2016</small>-->
<!--</a>-->
<!--</h3>-->
<!--</li>-->
<!---->
<!--<li>-->
<!--<h3>-->
<!--<a href="/pescewanda/2016/07/07/pres-berk/">-->
<!--A short talk about cryptography at the Berkman Klein Center-->
<!--<small>07 Jul 2016</small>-->
<!--</a>-->
<!--</h3>-->
<!--</li>-->
<!---->
<!--</ul>-->
<!--</div>-->
</div>
<!--<link rel="alternate" type="application/rss+xml" title="Francesco Mecca RSS" href="/feed.xml">-->
</body>
</html>