Bonjour chers amis. Bien que ce ne soit pas toujours recommandé, souvent pour obtenir des versions récentes d'un paquet ou d'un programme entier, nous devons ajouter des référentiels externes. Habituellement, ces dépôts ont une clé GPG qui nous permet de sécuriser l'installation. Que se passe-t-il lorsque ces clés GPG expirent ? Eh bien, il n'est plus possible d'utiliser le référentiel. Ainsi, dans cet article, vous apprendrez à supprimer une clé expirée dans APT.
D'après Wikipédia :
GPG est un outil de cryptage et de signature numérique développé par Werner Koch, qui remplace PGP (Pretty Good Privacy) mais avec la principale différence qu'il s'agit d'un logiciel libre sous licence GPL. GPG utilise la norme IETF appelée OpenPGP.
Avec cet outil, nous pourrons créer des clés publiques des référentiels qui permettront au système de déterminer s'il est digne de confiance ou non. Surtout si ces packages ont été modifiés et pourraient causer des problèmes dans le système.
Pour ces raisons, tous les référentiels ont une clé GPG qui doit être ajoutée au système manuellement ou en utilisant apt-key
.
Le problème se pose lorsque ces clés expirent car elles sont créées pour une durée limitée. Cela amène APT à donner une erreur appelée EXPKEYSIG
.
Pour résoudre ce problème, il est préférable de supprimer la clé du système, puis de télécharger la nouvelle clé GPG à partir du référentiel.
Alors, allons-y.
Supprimer une clé expirée dans APT
Lorsque nous avons une clé GPG expirée ajoutée dans le système lors de l'exécution
sudo apt update
Vous obtiendrez une erreur similaire à celle-ci.
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 partie importante de cette erreur est de vérifier que la clé GPG a bien expiré.
La meilleure chose à faire est alors de le supprimer du système. Il y a deux façons de faire ça. Si la clé GPG a été ajoutée manuellement, elle est stockée dans le /etc/apt/trusted.gpg.d/
chemin avec un .gpg
extension et vous pouvez simplement utiliser le rm
commande pour le supprimer.
Par contre, si la clé GPG a été ajoutée avec le apt-key
commande alors le processus est différent et vous devez utiliser cette même commande pour supprimer la clé GPG.
Pour vérifier quelles clés GPG ont expiré dans le système, vous pouvez utiliser cette commande
sudo apt-key list 2>/dev/null | grep expired -B 1
Exemple de sortie
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
À partir de cette sortie d'écran, nous souhaitons obtenir les 8 derniers chiffres de l'empreinte digitale de la clé GPG. Ces numéros constituent l'identifiant dont nous avons besoin.
Dans ce cas, 95BD4743
est le nombre que nous recherchons.
Donc, pour supprimer la clé GPG, vous devez exécuter
sudo apt-key for [ID]
Pour cet exemple, ce serait
sudo apt-key for 95BD4743
Et voilà, il ne vous reste plus qu'à télécharger et ajouter la nouvelle clé GPG à partir du référentiel concerné.
Ensuite, lorsque vous exécutez
sudo apt update
L'erreur aura disparu et vous pourrez à nouveau utiliser le référentiel.
Conclusion
Dans cet article, vous avez appris une astuce élémentaire de gestion de référentiel, telle que la suppression d'une clé expirée dans APT. De cette façon, vous n'aurez aucun problème avec cela le moment venu. Cette astuce ou ce didacticiel fonctionne à la fois pour les utilisateurs de bureau et de serveur.
Site Web de GPG
Plus de postes de sécurité