• Non ci sono risultati.

Crittografia

Nel documento Introduzione a Linux (pagine 185-190)

Capitolo 9.  Tecniche fondamentali di backup

9.4.  Crittografia

9.4.1. Note generali

9.4.1.1. Perché dovreste crittografare i dati?

La crittografia è sinonimo di segretezza. Nel contesto delle copie di sicurezza la crittografia può 

essere molto utile, per esempio se avete necessità di lasciare i vostri dati salvati in un posto in cui 

non potete controllare gli accessi, come il server del vostro provider.

non è criptata e spesso viene inviata allo scoperto sulla rete o su Internet. Se il vostro messaggio 

contiene delle informazioni sensibili, allora è meglio crittografarlo.

9.4.1.2. GNU Privacy Guard

Nei sistemi Linux potrete trovare GnuPG, Gnu Privacy Guard, che è un complesso di programmi 

compatibili con gli strumenti PGP (Pretty Good Privacy), che sono disponibili commercialmente.

In   questa   guida   tratteremo   soltanto   dell'uso   più   elementare   degli   strumenti   di   crittografia   e 

mostreremo ciò di cui avrete bisogno per generare una chiave di codifica e per usarla da voi stessi 

nella   crittografia   dei   dati   (che   poi   potrete   conservare   tranquillamente   in   un   luogo   pubblico). 

Indicazioni per un uso maggiormente avanzato possono essere rintracciate nelle pagine man dei vari 

comandi.

9.4.2. La generazione di una chiave

Prima di cominciare a criptare i vostri dati, dovete creare un paio di chiavi. La coppia consiste in 

una chiave privata ed in una pubblica. Potete inviare la chiave pubblica ai corrispondenti, che 

possono usarla per criptare i dati a voi desinati, che decripterete con la vostra chiave privata. Tenete 

sempre la chiave, non condividetela con qualunque altro, o essi saranno in grado di decriptare i dati 

destinati solo a voi. Esclusivamente per essere certi che non accadano incidenti, la chiave privata è 

protetta da una password. La coppia di chiavi viene creata usando questo comando:

willy@ubuntu:~$ gpg --key-gen

gpg (GnuPG) 1.4.2.2; Copyright (C) 2005 Free Software Foundation, Inc. This program comes with ABSOLUTELY NO WARRANTY.

This is free software, and you are welcome to redistribute it under certain conditions. See the file COPYING for details.

gpg: directory `/home/willy.gnupg' created

gpg: new configuration file `/home/willy/.gnupg/gpg.conf' created gpg: WARNING: options in `/home/willy/.gnupg/gpg.conf' are not yet active during this run

gpg: keyring `/home/willy/.gnupg/secring.gpg' created gpg: keyring `/home/willy/.gnupg/pubring.gpg' created Please select what kind of key you want:

(1) DSA and Elgamal (default) (2) DSA (sign only)

(5) RSA (sign only) Your selection? 1

DSA keypair will have 1024 bits.

ELG-E keys may be between 1024 and 4096 bits long. What keysize do you want? (2048) 4096

Requested keysize is 4096 bits

Please specify how long the key should be valid. 0 = key does not expire

<n> = key expires in n days <n>w = key expires in n weeks <n>m = key expires in n month <n>y = key expires in n years Key is valid for? (0) 0

Key does not expire at all Is this correct? (y/N) y

You need a user ID to identify your key; the software constructs the user ID from the Real Name, Comment and Email Address in this form: "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"

Email address: wdw@mvg.vl Comment: Willem

You selected this USER-ID:

"Willy De Wandel (Willem) <wdw@mvg.vl>"

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O You need a Passphrase to protect your secret key.

Passphrase:

Ora inserite la vostra password. Questa può essere una frase, la più lunga, la migliore: l'unica 

condizione è che dovreste ricordarla ogni volta. Per verifica dovete inserire la stessa frase un'altra 

volta.

Ora viene generata la coppia di chiavi da un programma che produce numeri casuali e che, fra gli 

altri fattori, viene alimentato dai dati dell'attività del sistema. Cosicché è una buona idea avviare ora 

alcuni programmi, muovere il cursore del mouse o battere alcuni caratteri a caso in una finestra di 

terminale. In questo modo saranno molto più grandi le possibilità di creare un numero che contenga 

molte cifre differenti e la chiave sarà molto difficile da individuare.

9.4.3. A proposito della vostra chiave

Dopo   che   è   stata   creata   la   vostra   chiave,   riceverete   u   messaggio   circa   l'impronta   digitale 

(fingerprint). Si tratta di una sequenza di quaranta numeri esadecimali, così lunga da essere molto, 

molto difficile generarne una seconda uguale su qualsiasi computer. Potete essere piuttosto sicuri 

che questa sia una sequenza unica. La forma abbreviata di questa chiave consiste nel vostro nome 

seguito dagli ultimi 8 numeri esadecimali.

Potete ottenere informazioni sulla vostra chiave nel modo seguente:

willy@ubuntu:~$ gpg --list-keys /home/willy/.gnupg/pubring.gpg ---pub 1024D/BF5C3DBB 2006-08-08

uid Willy De Wandel (Willem) <wdw@mvg.vl> sub 4096g/A3449CF7 2006-08-08

L'ID di chiave (key ID) per questa chiave è "BF5C3DBB". Potete inviare i vostri ID di chiave e 

nome ad un server di chiavi (key server), cosicché altre persone possano avere queste informazioni 

su di voi e le usino per criptare i dati a voi diretti. In alternativa, potreste inviare la vostra chiave 

pubblica direttamente ai soggetti che ne hanno bisogno. La parte pubblica della chiave è una lunga 

serie du numeri che potete vedere usando l'opzione –-export con il comando gpg:

gpg –-export -a

Comunque, per quanto riguarda questa guida, supponiamo che abbiate bisogno della chiave solo per 

codificare e decodificare dati per voi stessi. Leggete le pagine man di pgp se volete saperne di più.

9.4.4. Crittografia dei dati

o di trasportarlo sul server di backup. Usate il comando gpg come qui di seguito:

gpg -e -r (parte di) uidarchivio

L'opzione -e dice a gpg di criptare, l'opzione -r indica per chi si cripta. Tenete in mente che solo i 

nomi utente che seguono tale opzione ­r saranno in grado di decodificare nuovamente i dati. Un 

esempio:

willy@ubuntu:~$ gpg -e -r Willy /var/tmp/home-willy-20060808.tar

9.4.5. Decodifica dei file

Utilizzando   l'opzione  -d,   potete   decriptare   i   file   che   sono   stati   codificati   per   voi.   I   dati   vi 

scorreranno sullo schermo, ma rimarrà una copia criptata su disco. Così per i file diversi da quelli di 

semplice testo, dovrete salvare i dati decodificati per poterli vedere con il programma appropriato. 

Ciò di effettua  ricorrendo all'opzione -o con il comando gpg:

willy@ubuntu:~$ gpg -d -o decrypt.tar

/var/tmp/home-willy-20060808.tar.gpg

You need a passphrase to unlock the secret key for user: "Willy De Wandel (Willem) <wdw@mvg.vl>"

4096 ELG-E key, ID A3449CF7, created 2006-08-08 (main key ID BF5C3DBB)

gpg: encrypted with 4096-bit ELG-E key, ID A3449CF7, created 2006-08-08 "Willy De Wandel (Willem) <wdw@mvg.vl>"

 Niente password=niente dati

Se vi scordate la password, i dati sono persi. Neppure l'amministratore di sistema sarà 

capace di decrittare i dati. Ecco perché talvolta una copia delle chiavi importanti viene 

conservata in una cassetta di sicurezza di una banca.

9.5. Sommario

Qui c'è un elenco dei comandi riguardanti il backup dei file:

Tabella 9­1. Nuovi comandi nel capitolo 9: La copia di sicurezza

Comando Significato

bzip2 Un compressore di file a ordinamento a blocchi

cdrecord Registra Compact Disk audio o dati da un originale

dd Converte e copia un file

fdformat Formatta a basso livello di un dischetto floppy

gpg Codifica e decodifica i dati.

gzip Comprime o espande file

Comando Significato

mcopy Copia file MSDOS verso/da UNIX

mdir Mostra una directory MSDOS

mformat Aggiunge un file system MSDOS ad un dischetto floppy formattato a basso livello

mkbootdisk Crea un dischetto di avvio indipendente per far girare il sistema

mount Monta   un   file   system   (integratelo   con   il   file   system   corrente connettendolo in un punto di montaggio)

rsync Sincronizza le directory

tar Programma   di   utilità   per   l'archiviazione   su   nastro,   usato   anche   per creare archivi su disco invece che su nastro

umount Smonta i file system

9.6. Esercizi

Fate   una   copia   della   vostra   directory   personale   verso  /var/tmp  usando   il 

comando tar. Successivamente comprimete il file usando gzip o bzip2: fatelo in 

modo   che   ne   risulti   un   corretto   file   archiviato   con  tar,   uno   che   non   crei 

confusione una volta scompattato.

Formattate un floppy e mettete alcuni file della vostra directory personale su di 

esso. Scambiate i floppy con un altro studente e ripristinate il suo floppy nella 

vostra directory personale

Formattate il floppy in DOS. Usate gli mtools per mettere e cancellare file su di 

esso.

Cosa succede ad un dischetto non formattato quando lo volete montare nel file 

system?

Se avete una memoria USB, provate a registrarci dentro un file.

Usando  rsync,  fate una copia della vostra directory personale in un altro file 

system locale o remoto.

Quando si lasciano file in un server di rete, è meglio criptarli. Create un archivio 

Nel documento Introduzione a Linux (pagine 185-190)