Linux Linux in Italiano

usare PGP: GNU Privacy Guard

Installazione da codice sorgente

Scaricare da gnupg.linux.it, o altro mirror, il sorgente di GnuPG. Quindi de-comprimere e installare il software:

./configure --prefix=/usr --sysconfdir=/etc
	--infodir=/usr/share/info --mandir=/usr/share/man
	--enable-static-rnd=linux --enable-m-guard
make
su
make install

Installazione su Debian

Lanciare il seguente comando come utente root:

apt-get install gnupg

il programma verra installato automaticamente e avrete un output simile al seguente:

Reading Package Lists... Done
Building Dependency Tree... Done
The following NEW packages will be installed:
  gnupg
  0 packages upgraded, 1 newly installed, 0 to remove and 27  not upgraded.
  Need to get 966kB of archives. After unpacking 2482kB will be used.
  Get:1 http://debian.nettuno.it testing/main gnupg 1.0.6-3 [966kB]
  Fetched 966kB in 2s (359kB/s)
  Selecting previously deselected package gnupg.
  (Reading database ... 11476 files and directories currently installed.)
  Unpacking gnupg (from .../gnupg_1.0.6-3_i386.deb) ...
  Setting up gnupg (1.0.6-3) ..

Configurazione iniziale

Generare un nuovo paio di chiavi pubbliche e private utilizzando il comando:

gpg --gen-key

Vi verrà  chiesto nome, cognome, indirizzo e-mail e un commento. Questi dati appariranno sul keyserver quando registrerete la vostra chiave pubblica, cercate quindi di dare dei dati reali.

Esportare la propria chiave pubblica con il comando:

gpg --armor --export

Aprire la pagina sul keyserver principale e incollare il testo ottenuto dal precedente comando nell’apposito form.

Keyserver italiano

Marco Nenciarini insieme al PLUG (Prato Linux User Group) e con il supporto di ILS gestisce un keyserver italiano. Il keyserver è utilizzabile tramite l’URL keyserver.linux.it o tramite il gateway di posta pgp-public-keys@keyserver.linux.it.

In alternativa la metodo via browser web dovrebbe funzionare anche il seguente comando:

gpg --keyserver keyserver.linux.it --send-key KEYID

Inportare una chiave

Se si utilizza “mutt” come client di posta e si è configurato correttamente un keyserver, l’import della chiave pubblica di un utente avviene in automatico. Invece, se la chiave viene inviata tramite un file di testo è possibile importarla usando il seguente comando:

gpg --import file_con_la_chiave_da_importare.asc

Revocare una chiave

Quando si crea una chiave è opportuno generare anche un certificato per revocare la chiave in un secondo tempo dal keyserver nel caso in cui la chiave venga persa, compromessa o risulti scaduta. I comandi sono i seguenti:

gpg --gen-revoke KEYID > revoke.asc

per revocare la chiave:

gpg --import revoke.asc
gpg --send-key KEYID

Firmare una chiave

Firmare equivale a certificare che si riconosce l’autenticità  di una chiave di un’altra persona. Prima di firmare una chiave dovete farvi dare il “fingerprint” della chiave dell’altra persona: assicuratevi che il fingerprint vi sia consegnato “di persona” dal proprietario!

Per firmare la chiave dare il comando:

gpg --edit-key KEYID

Apparira il prompt Command al quale dovrete dare il comando fpr per visualizzare il fingerprint della chiave che state editando. Controllare che il fingerprint sia identico a quello che avete ricevuto. A questo punto date il comando sign per firmare la chiave e save successivamente per uscire dalla modalità  di modifica. Inviate quindi la chiave firmata al vostro amico.

Firmare un file

Per firmare il file prova.txt si utilizza il comando:

gpg --detach-sign prova.txt
verrà creato il file prova.txt.sig contenente la “signature” che certifica l’autenticità
gpg --verify prova.txt.sig prova.txt

in caso positivo otterremo un messaggio che ci informa che la firma è corretta:

gpg: Signature made Fri Dec  5 14:50:46 2008 CET using DSA key ID C3ADC732
gpg: Good signature from Antonio Gallo
A questo punto utilizzare:
gpg --fingerprint D3ADC732
per verificare che l’intera signature corrisponda alla persona giusta.

FAQ

  • come posso fare per evitare che ogni volta appaia il messaggio “gpg: Attenzione: si sta usando memoria insicura!” ?

All’interno del file ~/.gnupg/options bisogna inserire la riga: no-secmem-warning. La soluzione corretta è comunque quella di impostare l’eseguibile gpg con i permessi SUID.

  • come posso fare per scaricare la chiave pubblica di una persona?

Usando il comando:

gpg --keyserver keyserver.linux.it --recv-keys KEYID
  • i comandi non funzionano con il keyserver specificato!

Gli utenti dietro un firewall o che usano il NAT in azienda hanno qualche problemino, per risolverlo basta specificare nel file ~/.gnupg/options la seguente riga:

keyserver x-broken-hkp://keyserver.linux.it:11371

Documentazione

Maggiori informazioni circa GNUPG è argomenti correlati: