Ciao, cari amici. Sebbene non sia sempre consigliato, molte volte per ottenere versioni recenti di un pacchetto o di un intero programma, è necessario aggiungere repository esterni. Di solito, questi repository hanno una chiave GPG che ci consente di proteggere l'installazione. Cosa succede quando queste chiavi GPG scadono? Bene, non è più possibile utilizzare il repository. Quindi in questo post imparerai come rimuovere una chiave scaduta in APT.
Secondo Wikipedia:
GPG è uno strumento di crittografia e firma digitale sviluppato da Werner Koch, che sostituisce PGP (Pretty Good Privacy) ma con la differenza principale che è un software gratuito con licenza GPL. GPG utilizza lo standard IETF chiamato OpenPGP.
Con questo strumento, saremo in grado di creare chiavi pubbliche dei repository che consentiranno al sistema di determinare se è affidabile o meno. Soprattutto se questi pacchetti sono stati modificati e potrebbero causare problemi nel sistema.
Per questi motivi, tutti i repository hanno una chiave GPG che deve essere aggiunta al sistema manualmente o utilizzando apt-key
.
Il problema sorge quando queste chiavi scadono perché vengono create per un tempo limitato. Questo fa sì che APT fornisca un errore chiamato EXPKEYSIG
.
Per risolvere questo problema, è meglio rimuovere la chiave dal sistema e quindi scaricare la nuova chiave GPG dal repository.
Quindi, proviamoci.
Rimuovi una chiave scaduta in APT
Quando abbiamo una chiave GPG scaduta aggiunta al sistema durante l'esecuzione
sudo apt update
Riceverai un errore simile a questo.
Err:2 [repository_URL] InRelease The following signatures were invalid: EXPKEYSIG B188E2B695BD4743 Reading package lists... Done W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: [repository_URL] InRelease: The following signatures were invalid: EXPKEYSIG B188E2B695BD4743 W: Failed to fetch [repository_URL] The following signatures were invalid: EXPKEYSIG B188E2B695BD4743 W: Some index files failed to download. They have been ignored, or old ones used instead.
La parte importante di questo errore è verificare che la chiave GPG sia effettivamente scaduta.
La cosa migliore da fare quindi è rimuoverlo dal sistema. Ci sono due modi per farlo. Se la chiave GPG è stata aggiunta manualmente, viene archiviata in /etc/apt/trusted.gpg.d/
percorso con un .gpg
estensione e puoi semplicemente usare il rm
comando per rimuoverlo.
Se invece la chiave GPG è stata aggiunta con il apt-key
comando quindi il processo è diverso e dovresti usare questo stesso comando per rimuovere la chiave GPG.
Per verificare quali chiavi GPG sono scadute nel sistema, puoi utilizzare questo comando
sudo apt-key list 2>/dev/null | grep expired -B 1
Esempio di output
pub rsa3072 2018-01-14 [SC] [expired: 2021-07-21] [SC] [expired: 2021-07-21] [expired: 2021-07-21 1505 8500 A023 5D97 F5D1 0063 B188 E2B6 95BD 4743 uid [ expired] Automatic Signing Key
Da questo output dello schermo, siamo interessati a ottenere gli ultimi 8 numeri dell'impronta digitale della chiave GPG. Questi numeri formano l'ID di cui abbiamo bisogno.
In questo caso, 95BD4743
è il numero che stiamo cercando.
Quindi, per eliminare la chiave GPG, devi eseguire
sudo apt-key for [ID]
Per questo esempio, sarebbe
sudo apt-key for 95BD4743
E voilà, non ti resta che scaricare e aggiungere la nuova chiave GPG dal repository interessato.
Poi, quando corri
sudo apt update
L'errore scomparirà e sarai in grado di utilizzare nuovamente il repository.
Conclusione
In questo post, hai imparato un trucco elementare per la gestione del repository come rimuovere una chiave scaduta in APT. In questo modo, non avrai problemi quando arriverà il momento. Questo trucco o tutorial funziona sia per utenti desktop che server.
Sito web GPG
Altri post sulla sicurezza