Truecrypt® - Installazione per Debian

Da Guide@Debianizzati.Org.

Lock.png ATTENZIONE: questa guida tratta software a sorgente chiuso e potenzialmente non conforme alle Debian Free Software Guidelines.
Per un'alternativa completamente libera, consultare la guida LUKS e cryptmount.


Debian-swirl.png Versioni Compatibili
soltanto:
Debian 5 "Lenny"
Debian 6 "Squeeze"
Debian 7 "Wheezy"

Indice


Premessa

Truecrypt® [1] (d'ora in avanti indicato come programma) è un'applicazione software per la cifratura simmetrica di dischi (e loro partizioni) o per la creazione di file cifrati che emulano partizioni virtuali. Esso è fornito dalla TrueCrypt Developers Association (d'ora in avanti indicato come fornitore) che ne detiene il copyright e ne ha registrato il marchio [2].
Il programma è prelevabile all'indirizzo internet http://www.truecrypt.org/downloads2 come codice sorgente per diversi sistemi operativi [3] tra cui GNU/Linux.
Il programma non è disponibile nell'area main dei repository ufficiali Debian ed è ancora discusso se la sua licenza d'uso [4] possa essere considerata conforme [5][6] alle Debian Free Software Guidelines [7].
Attualmente, nell'ambito del progetto Debian, è in corso la valutazione della possibilità tecnica di realizzare un installatore che però non è disponibile al momento dell'ultimo aggiornamento della presente guida [8]. Conseguentemente, in Debian GNU/Linux il programma dovrà essere installato necessariamente dal codice sorgente oppure utilizzando il codice binario eseguibile entrambi acquisiti dal fornitore dopo aver opportunamente predisposto il sistema operativo ed aver accettato la licenza d'uso.
Con l'occasione si ricorda che l'ecosistema Debian GNU/Linux offre altre soluzioni software (ad esempio, LUKS [9]Volumi criptati LUKS - Creazione e uso con cryptmount, LUKS gestione manuale dei volumi: cryptsetup) compatibili con le Debian Free Software Guidelines e le cui funzionalità sono, in parte, analoghe a quelle del programma qui trattato.

Pre-requisiti

I seguenti pre-requisiti sono necessari:

Obiettivo

Il presente documento intende fornire istruzioni operative esemplificative della compilazione da codice sorgente e successiva installazione del programma con i privilegi di un'utenza ordinaria usando Debian GNU/Linux. Il programma, pertanto, sarà installato localmente al percorso della home directory dell'utenza considerata. Si precisa che la presente guida non intende sostituirsi alla documentazione ufficiale del programma [10] la cui completa e approfondita lettura è in ogni caso fortemente raccomandata.

Istruzioni operative

I comandi indicati sono da eseguire con i privilegi dell'utenza ordinaria tramite cui si intende successivamente avviare il programma adoperando un terminale a carattere in ambiente testuale o grafico: nel codice di seguito riportato è utilizzato a scopo esemplificativo il nome utente utente. Per verificare il proprio nome utente, è possibile impartire il comando:

$ whoami

Quando, per talune operazioni, sono richiesti i privilegi dell'amministratore di sistema, è utilizzato il comando su nel qual caso ne è richiesta la relativa password. Il simbolo $ rappresenta il prompt del terminale per l'utenza ordinaria (diversa da quella dell'amministratore di sistema e corrispondente a #).

Acquisizione del codice sorgente e della relativa firma digitale

Il codice sorgente e la firma digitale per la verifica del contenuto devono essere prelevati manualmente dal sito internet del fornitore[11] previa accettazione obbligata della licenza d'uso. In tale guida si assumerà che:

Resta inteso che i nomi sopra indicati hanno finalità esemplificativa e, pertanto, i comandi di seguito indicati dovranno essere adattati in funzione di essi.

Predisposizione del sistema operativo

I comandi di seguito indicati installano gli ulteriori programmi e librerie richieste per la compilazione e il funzionamento del programma:

$ su 
# aptitude install sudo wget build-essential nasm libfuse-dev pkg-config wx2.6-headers libwxgtk2.8-dev
# exit

Per Wheezy, anziché il pacchetto wx2.6-headers, servirà il pacchetto wx2.8-headers .

Verifica integrità codice sorgente

I comandi di seguito indicati effettuano il download dei dati relativi alla chiave pubblica del fornitore del programma e la successiva verifica di integrità del file prelevato contenente il codice sorgente. Posizioniamoci nella directory in cui abbiamo effettuato il download del codice sorgente e della firma digitale (file .sig) e poi:

$ gpg --keyserver subkeys.pgp.net --recv F0D6B1E0
$ gpg --verify "TrueCrypt 7.1a Source.tar.gz.sig" "TrueCrypt 7.1a Source.tar.gz"


In caso di esito negativo (integrità non confermata: non installare !) si otterrà il seguente output:

gpg: Signature made dom 05 set 2010 18:47:20 CEST using DSA key ID F0D6B1E0
gpg: '''BAD signature from "TrueCrypt Foundation <info@truecrypt-foundation.org>"'''


In caso di esito positivo si otterrà il seguente output:

gpg: Signature made mar 07 feb 2012 21:45:26 CET using DSA key ID F0D6B1E0
gpg: Good signature from "TrueCrypt Foundation <info@truecrypt-foundation.org>"
gpg:                 aka "TrueCrypt Foundation <contact@truecrypt.org>"
gpg: ATTENZIONE: questa chiave non è certificata con una firma fidata!
gpg:          Non ci sono indicazioni che la firma appartenga al proprietario.
Impronta digitale della chiave primaria: C5F4 BAC4 A7B2 2DB8 B8F8  5538 E3BA 73CA F0D6 B1E0

Inoltre, è utile far presente che il download della chiave pubblica del fornitore richiede l'accessibilità della porta internet 11371 e pertanto l'eventuale firewall del computer in cui avviene l'installazione dovrà essere conseguentemente configurato perché il comando gpg --keyserver subkeys.pgp.net --recv F0D6B1E0 possa aver successo. discussione

Decompressione del file contenente il codice sorgente

In caso di esito positivo del passaggio precedente, si può procedere alla decompressione dell'archivio contenente il codice sorgente impartendo i seguenti comandi:

$ tar xf "TrueCrypt 7.1a Source.tar.gz"
$ cd truecrypt-7.1a-source/

Download di ulteriore codice sorgente

I comandi di seguito indicati effettuano il download di ulteriore codice sorgente non disponibile nei repository Debian e richiesto ai fini della compilazione:

$ wget ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-11/v2-20/*.h

Compilazione e linking

I comandi di seguito indicati creano il codice binario eseguibile del programma:

$ export PKCS11_INC=$PWD;make

Installazione

I comandi di seguito indicati copiano (installano) il programma nella directory ~/truecrypt-7.1a:

$ cd Main
$ mkdir -p "$HOME/truecrypt-7.1a"
$ cp truecrypt "$HOME/truecrypt-7.1a"
$ cd ../..

Il programma, pertanto, sarà installato localmente alla home directory dell'utenza adoperata.

Configurazione di sudo

Il file di configurazione /etc/sudoers deve essere modificato per istruire il comando sudo ad eseguire il programma con i privilegi dell'utente 'root' per le operazioni di 'mount' (per maggiori dettagli sul comando sudo è possibile far riferimento alla specifica guida del forum Configurare SUDO per gestire le attività degli amministratori). A tal fine, si può impartire il comando:

$ su
# visudo
# exit

Si riporta, a scopo esemplificativo, la configurazione di default di /etc/sudoers con le necessarie integrazioni (evidenziate in grassetto) e dove al posto di utente dovrà essere riportata il nome utente dell'utenza effettivamente adoperata:

# /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#

Defaults        env_reset

# Host alias specification

# User alias specification

# Cmnd alias specification
Cmnd_Alias  TC=/home/utente/truecrypt-7.1a/truecrypt --core-service

# User privilege specification
root    ALL=(ALL) ALL
utente  ALL=TC

# Uncomment to allow members of group sudo to not need a password
# (Note that later entries override this, so you might need to move
# it further down)
# %sudo ALL=NOPASSWD: ALL

Aggiunta nome utente al gruppo fuse

Il comando di seguito indicato aggiunge l'utente utente (da sostituire con il nome utente dell'utenza adoperata effettivamente a tal fine) al gruppo fuse:

$ su 
# adduser <u>utente</u> fuse
# exit

Avvio del programma

A questo punto, dopo aver eseguito un logout dal terminale e successivo login, per eseguire il programma in modalità interattiva (con apertura dell'interfaccia grafica) è possibile impartire il comando:

$ cd "$HOME/truecrypt-7.1a"
$ ./truecrypt &

Per creare o utilizzare partizioni cifrate sarà necessario utilizzare le funzionalità del programma secondo le modalità illustrate nella documentazione dello stesso.

Commenti

I commenti a questo documento sono richiesti e ben accetti; possono essere inoltrati nella sezione [12] del forum. In caso di osservazioni tecniche relativamente alle istruzioni sopra riportate si prega di fornire a corredo un file di log di tutti i comandi impartiti insieme ai relativi output: a tal fine, è possibile ricorrere al comando script come indicato nella guida per la formulazione dei quesiti tecnici Come formulare quesiti tecnici al forum.

Riferimenti

  1. Truecrypt®, Home Page, http://www.truecrypt.org/
  2. Truecrypt®, Trademarks, http://www.truecrypt.org/legal/trademarks
  3. Truecrypt®, Supported operating systems, http://www.truecrypt.org/docs/?s=supported-operating-systems
  4. Truecrypt®, License, http://www.truecrypt.org/legal/license
  5. Debian Legal Mailing List, http://lists.debian.org/debian-legal/2006/06/msg00294.html
  6. Debian User Forums, http://forums.debian.net/viewtopic.php?t=4015
  7. Debian Free Software Guidelines, http://www.debian.org/social_contract#guidelines
  8. Debian Bug Tracking System, RFP: truecrypt-installer -- Make *.deb packages out of Truecrypt sources, http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=413070
  9. Linux Unified Key Setup, Setup virtual encryption devices under dm-crypt Linux, http://code.google.com/p/cryptsetup/
  10. Guide@Debianizzati.Org, Volumi criptati LUKS - Creazione e uso con cryptmount
  11. Guide@Debianizzati.Org, LUKS gestione manuale dei volumi: cryptsetup
  12. Guide@Debianizzati.Org, Installazione
  13. Guide@Debianizzati.Org, I repository ed il loro utilizzo
  14. Truecrypt®, Documentation, http://www.truecrypt.org/docs/
  15. Truecrypt®, Source code downloads, http://www.truecrypt.org/downloads2
  16. Guide@Debianizzati.Org, Configurare SUDO per gestire le attività degli amministratori
  17. Forum Debianizzati, Sezione Guide@Debianizzati.Org, Discussione su "Guida per l'installazione di truecrypt(tm)", http://forum.debianizzati.org/viewtopic.php?f=25&t=44285
  18. Guide@Debianizzati.Org, Come formulare quesiti tecnici al forum




Guida scritta da: Aki

Swirl-auth40.png Debianized 40%

Estesa da:
Verificata da:
S3v 12:07, 2 nov 2012 (CET)

Verificare ed estendere la guida | Cos'è una guida Debianized

Strumenti personali
Namespace
Varianti
Azioni
Navigazione
Risorse
Strumenti