In questa pagina viene presentato GnuPg, il sistema di crittografia da riga di comando predefinito di Ubuntu.
GNU Privacy Guard (GnuPG o GPG), rilasciato sotto la licenza GNU GPL, è un programma progettato per sostituire la suite crittografica PGP. GPG è completamente compatibile con gli standard OpenPGP dell'IETF ed è sostenuto dal governo tedesco. Fa parte del software sviluppato dalla Free Software Foundationm
- GnuPG utilizza la crittografia a chiave pubblica per permettere a coloro che lo utilizzano di comunicare in sicurezza. In un sistema a chiave pubblica ogni utente ha una coppia di chiavi consistenti in una chiave privata e una chiave pubblica. La chiave privata di una persona viene tenuta segreta; non deve mai essere rivelata. La chiave pubblica può essere data a tutti coloro con i quali l'utente vuole comunicare.
Esistono diversi programmi che forniscono un'interfaccia grafica al sottosistema gpg. I programmi seguenti, possono essere utilizzati per generare le chiavi GPG:
- Seahorse: è lo strumento di gestione delle chiavi predefinito di Ubuntu ed è disponibile, a seconda della versione di Ubuntu in uso, nel menù Sistema → Preferenze → Password e chiavi di cifratura o nel menù Applicazioni → Accessori → Password e chiavi di cifratura. Per informazioni sull'uso dell'applicazione fare riferimento al manuale ufficiale di Seahorse disponibile nel menù Aiuto → Sommario.
- kgpg: è un'interfaccia per KDE, utile agli utenti Kubuntu. Per installare il programma è sufficiente installare il pacchetto kgpg.
Generare una chiave
- Aprire un terminale e digitare:
gpg --gen-key
- Apparirà una schermata di selezione con le seguenti opzioni:
Selezionare il tipo di chiave desiderato: (1) RSA and RSA (default) (2) DSA and Elgamal (3) DSA (solo firma) (4) RSA (solo firma)
La scelta predefinita, «(1)», è la migliore, in quanto fornisce una maggiore robustezza della chiave. - Verrà chiesto di scegliere una dimensione per la chiave:
La lunghezza delle chiavi RSA è compresa tra 1024 e 4096 bit. Dimensione chiave desiderata? (2048)
È consigliato lasciare l'impostazione predefinita. - Verrà chiesto di impostare una data di scadenza:
Key is valid for? (0)
Molte persone creano le proprie chiavi senza scadenza. Se si effettua tale scelta bisogna ricordarsi di revocare la chiave quando non la si usa più. Premere «Y» per continuare con il processo di configurazione.
- Il passaggio successivo riguarda la creazione dell'identificativo:
- Inserire il proprio nome reale
- Inserire il proprio indirizzo email
- Inserire, a scelta, un commento per qualificare la chiave.
Successivamente sarà possibile aggiungere ulteriori indirizzi email alla propria firma.
- Una volta verificata la correttezza delle informazioni inserite, premere «o» per generare la chiave. Verrà chiesto di inserire una passphrase:
È necessaria una passphrase per proteggere la proprio chiave segreta.
L'ideale sarebbe scegliere una breve frase difficile da indovinare. A differenza di una password, una passphrase può contenere anche degli spazi bianchi.
Dimenticare la propria passphrase comporta la perdita della chiave.
- Una volta inserita la passphrase verrà avviato il processo di creazione della chiave. Questo verrà annunciato dal seguente messaggio:
Dobbiamo generare un mucchio di byte casuali. È una buona idea eseguire qualche altra azione (scrivere sulla tastiera, muovere il mouse, usare i dischi) durante la generazione dei numeri primi; questo da al generatore di numeri casuali migliori possibilità di raccogliere abbastanza entropia.
- Al termine, si raggiungerà una schermata simile alla seguente:
gpg: key D8FC66D2 marked as ultimately trusted chiavi pubbliche e segrete create e firmate. pub 1024D/D8FC66D2 2011-04-07 Key fingerprint = 95BD 8377 2644 DD4F 28B5 2C37 0F6E 4CA6 D8FC 66D2 uid Mario Rossi <mario@rossi.it> sub 2048g/389AA63E 2011-04-07 gpg: key D8FC66D2 marked as ultimately trusted public and secret key created and signed.
L'ID della chiave nell'esempio è «D8FC66D2».
- È buona norma configurare questa chiave come la chiave predefinita all'interno del file ~/.bashrc, in modo tale da specificare come automatico l'utilizzo di essa con le altre applicazioni che fanno uso del sistema GnuPg. Per fare ciò basta inserire nel file ~/.bashrc la riga:
export GPGKEY=D8FC66D2
La dicitura «D8FC66D2» va sostituita con il proprio ID.
- Ora è necessario riavviare il servizio per la cifratura. A seconda del sistema in uso potrebbe essere necessario terminare uno dei due seguenti processi:
- seahorse-agent:
killall -q seahorse-agent eval $(seahorse-agent --daemon)
- gpg-agent:
killall -q gpg-agent eval $(gpg-agent --daemon)
- seahorse-agent:
- Infine, eseguire questo comando:
source ~/.bashrc
Certificato di revoca
Un certificato di revoca deve essere generato per consentire la revoca della propria chiave pubblica nel caso in cui la chiave privata sia stata compromessa.
Per creare un certificato di revoca, da terminale digitare:
gpg --output revoke.asc --gen-revoke <KEY-ID>
Al posto di "KEY- ID" bisogna inserire l'ID della propia chiave.
Il certificato deve essere stampato e conservato con cura. Chiunque abbia accesso al certificato di revoca può rendere la chiave pubblica inutilizzabile.
Inviare una chiave a un server.
Questa sezione contiene le istruzioni per inviare la propria chiave a un server di chiavi in modo che tutti possano scaricarla. Una volta caricata su un server, dopo un breve periodo di tempo, tutti gli altri server di chiavi avranno la propria firma. È possibile velocizzare questo procedimento spedendo la propria chiave a più server.
Inviare una chiave da riga di comando.
In un terminale digitare:
gpg --send-keys --keyserver keyserver.ubuntu.com <KEY-ID>
Al posto di "KEY- ID" bisogna inserire l'ID della propia chiave.
Inviare una chiave con un browser web.
- Esportare la propria chiave digitando il seguente comando:
gpg --export -a "Key-ID" > public.key
Verrà creato un file public.key contenente la propria chiave pubblica.
- Aprire una browser e andare al seguente indirizzo: http://keyserver.ubuntu.com:11371/
- Incollare il contenuto del file public.key nella casella sotto la scritta «Submit a key», dunque fare clic su «Submit this key to the keyserver!».
Firmare una chiave.
Il sistema di firma delle chiavi di gpg consente di creare una rete di fiducia. Firmare la chiave di una persona significa aver controllato l'identità di quest'ultima e essersi assicurati che essa sia in pieno controllo della propria chiave privata. In questo modo si può creare una rete di individui che si fidano l'uno degli altri. Questa rete è definita come un insieme fortemente connesso, ulteriori informazioni a riguardo si possono trovare a questo indirizzo.
Dato che firmare una chiave significa aver controllato e verificato che una certa chiave pubblica appartenga a una tale persona che possiede la relativa chiave privata, è necessario seguire questi semplici accorgimenti quando si firma una chiave:
- Il procedimento di firma di una chiave è sempre svolto dopo aver incontrato tale persona.
- Durante l'incontro è necessario scambiarsi i fingerprint delle rispettive chiavi e almeno un documento identificativo (con una fotografia all'interno). Tali fingerprint vengono solitamente distribuiti su dei foglietti, creati da degli script come gpg-key2ps fornito dal pacchetto signing-party.
- Controllare che il nome nella chiave corrisponda con quello del documento identificativo.
- Dopo questi controlli accertarsi che la persona sia veramente in possesso della chiave privata. Per fare ciò basta rispedire a lei/lui la sua chiave pubblica firmata e criptata con la rispettiva chiave pubblica. Il programma caff facilita tale procedimento. È necessario creare un file .caffrc nella propria cartella Home con i seguenti valori all'interno:
$CONFIG{owner} = q{Nome e cognome}; $CONFIG{email} = q{L'indirizzo email della chiave}; $CONFIG{keyid} = [ qw{Gli ultimi 16 caratteri del fingerprint della chiave} ];
Ora basta eseguire il seguente comando, sostituendo la dicitura «id_della_chiave» con l'ID della chiave che si vuole verificare e firmare:
caff id_della_chiave
- Quando si ricevono chiavi firmate, si ricevono come allegati: salvarli e importarli con gpg. Ora è possibile inviare queste chiavi ad un server delle chiavi.
Firmare i dati.
La firma dei dati è utile per verificare l'identità del mittente.
Firma del Codice di condotta di Ubuntu
Prima di firmare il «Codice di condotta» di Ubuntu è necessario aggiornare il proprio account inserendovi, fra le varie informazioni, la chiave gpg che si desidera utilizzare per tale operazione.
Caricare la chiave in Launchpad
- Eseguire l'accesso in Launchpad.
- Fare clic sul proprio nome in alto a destra e poi su «Edit OpenPGP keys».
- Copiare il fingerprint della propria chiave all'interno della casella di testo «Key Fingerprint».
- Launchpad spedirà, all'indirizzo specificato, un'email contenente del testo cifrato con la nuova chiave. Per procedere con l'operazione di decifratura è sufficiente salvare il testo in un file all'interno della propria Home, aprire una finestra di terminale e digitare il seguente comando:
gpg --decrypt file.txt
- Una volta inserita la passphrase comparirà in chiaro il testo del messaggio, il quale conterrà un collegamento da inserire nella barra degli indirizzi del proprio browser per convalidare la chiave.
Firmare il Codice di condotta.
Per firmare il «Codice di condotta» di Ubuntu bastano tre semplici passi:
- Scaricare il «Codice di condotta» da questo indirizzo : https://launchpad.net/codeofconduct/1.1
- Digitare il seguente comando:
gpg --clearsign UbuntuCodeofConduct-1.1.txt
- Copiare il contenuto del file appena creato UbuntuCodeofConduct-1.1.txt.asc nel relativo campo presente a questo indirizzo.
- Se l'operazione si è conclusa correttamente, sul proprio profilo Launchpad, nella sezione Signed Ubuntu Code of Conduct: comparirà la voce Yes.
Firmare e cifrare email.
Questa sezione vi aiuterà a configurare Evolution e Thunderbird per firmare e cifrare le email.
Evolution.
- Aprire Evolution e fare clic su Modifica -> Preferenze
- Scegliere il proprio account email e poi fare clic su Modifica
- Fare clic sulla linguetta «Sicurezza»
- Nella casella di testo ID della chiave PGP/GPG copiare il proprio KEY-ID
- Fare clic su «OK» e poi Chiudi
Se si desidera utilizzare la chiave in ogni nuova mail, fare clic sul menù «Sicurezza» in un nuovo messaggio e poi su «Firma PGP».
Mozilla Thunderbird
- Installare il plugin Enigmail installando il pacchetto enigmail
- In Thunderbird, scegliere il proprio account email da Modifica → Impostazioni account
- Alla voce Open PGP inserire nella casella di testo il proprio KEY-ID anteponendo 0x. Per esempio:
0xKEY-ID
- Fare clic su «OK»
fonte: Ubuntu Wiki
Ricerca personalizzata
Se ti è piaciuto l'articolo , iscriviti al feed cliccando sull'immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog: