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-gengpg (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-08uid 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 91. 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.
●