Cos'è il GPG?
GPG, o GNU Privacy Guard , è una suite di software crittografico. Può essere utilizzato per crittografare o firmare dati e comunicazioni per garantirne l'autenticità.
Questo tipo di crittografia si basa su coppie di chiavi. Una chiave pubblica è ospitata su un server delle chiavi (ad es. Keyserver.ubuntu.com) e la chiave privata viene mantenuta segreta. Usando la chiave pubblica, si può verificare la firma fatta da una chiave privata. Allo stesso modo, conoscere la chiave pubblica di qualcuno ti consentirà di crittografare un messaggio che può essere letto solo dal proprietario della chiave segreta corrispondente.
Ulteriori letture: GnuPG per uso quotidiano (una mini guida ...)
Cosa c'entra questo con me?
In questo contesto, il repository apt da cui si sta scaricando un pacchetto dovrebbe essere firmato da una chiave segreta in modo da poter verificare che i pacchetti che si stanno installando provengano da dove si trovano.
Il file effettivo nel repository che è firmato è il Release
file. Questo file contiene i checksum di un numero di altri file nel repository. Ad esempio, ecco il file per il repository ufficiale di Ubuntu 12.10 e la relativa firma GPG . Quando si installa un pacchetto, apt
verifica la firma.
Ulteriori letture: Tutto su apt sicuro
Problemi comuni
La chiave pubblica per l'archivio Ubuntu ufficiale è già nota dal tuo computer, ma se vuoi aggiungere un PPA o un repository di terze parti devi importare la loro chiave. Se provi ad aggiornare un repository di cui non hai la chiave, vedrai avvisi come:
W: GPG error: http://ppa.launchpad.net oneiric Release: The following signatures
couldn't be verified because the public key is not available: NO_PUBKEY B725097B3ACC3965
Quando installi un pacchetto da quel repository, riceverai anche un avviso:
WARNING: The following packages cannot be authenticated!
dropbox
Install these packages without verification [y/N]?
Mentre questi avvisi possono essere messi a tacere eseguendo apt
il --allow-unauthenticated
flag, ma è meglio aggiungere la chiave al tuo sistema in modo da poter sfruttare la sicurezza aggiuntiva.
Quando aggiungi un PPA dovresti usare lo add-apt-repository
strumento poiché questo gestirà automaticamente l'aggiunta della chiave per te. Se è necessario aggiungere la chiave manualmente, utilizzare il comando seguente:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY_ID_HERE
Se preferisci farlo senza usare il terminale, consulta questa risposta .