le serveur de clés a expiré lors de l'ajout d'une clé publique GPG

67

J'essaie d'ajouter une clé publique pour installer un programme avec CPG. Mais je suis assez nouveau pour cela, mais chaque commande que j'ai trouvée m'a donné la même erreur:

gpg --keyserver keyserver.ubuntu.com --recv-keys 94558F59
gpg: requesting key 94558F59 from hkp server keyserver.ubuntu.com
gpg: keyserver timed out
gpg: keyserver receive failed: keyserver error

Comment est-ce possible, il semble que je suis derrière une sorte de blocus qui rend impossible l’établissement d’une connexion au serveur de clés. J'ai examiné de nombreuses questions relatives à l'OP et essayé toutes les commandes que je pouvais trouver mais rien n'a fonctionné. Quelqu'un a déjà eu ce problème?

Sander Van der Zeeuw
la source
Avez-vous essayé d'utiliser un autre serveur de clés? hkp: //subkeys.pgp.net ou hkp: //pgp.mit.edu: 11371
jasonwryan
@jasonwryan Ive a essayé le pgp.mit.edu mais sans hkp: // l'utilisation de cet élément est-elle importante? Je ne crois pas, mais ça vaut le coup d'essayer pour moi
Sander Van der Zeeuw
Utilisez l'adresse complète, et le port alternatif ...
jasonwryan
@jasonwryan J'ai encore??: pgp.mit.edu: La connexion a expiré. gpgkeys: Erreur d'extraction HTTP 7: impossible de se connecter: la connexion a expiré. gpg: aucune donnée OpenPGP valide n'a été trouvée. gpg: Nombre total traité: 0
Sander Van der Zeeuw
3
gpg --keyserver hkp://pgp.mit.edu --recv-keys 94558F59a travaillé pour moi ...
jasonwryan

Réponses:

114

Cela est généralement causé par le blocage du port par votre pare-feu 11371. Vous pouvez débloquer le port de votre pare-feu. Si vous n'avez pas accès au pare-feu, vous pouvez soit:

  1. Forcer à utiliser le port 80au lieu de11371

    gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 94558F59
  2. Alternativement

    • Recherchez et ouvrez la clé à partir du serveur de clés.
    • Copiez son contenu dans un fichier texte.
    • Accédez à Outil système> Préférences> Sources de logiciel> Authentification> Ajouter une clé, puis sélectionnez le fichier texte créé. Pour Ubuntu 14.04 et les versions ultérieures, essayez: Centre logiciel -> Édition -> Sources de logiciel -> Authentification -> Importer un fichier de clé
tutak
la source
5
gpg --import key.txtsi vous avez besoin d'importer via la ligne de commande FYI.
Banjer
1
sks-keyservers.net/i pour télécharger la clé FYI
Lakshmi Narayanan
2
upvote pour manière alternative! Sur Ubuntu 14.04 et les versions ultérieures, il a été ajouté à partir deSoftware Center -> Edit -> Software Sources -> Authentication -> Import key file
Roy Ling
Cela a résolu mon problème avec l'installation des clés pour Rvm. L'appel suivant était en attente pour moi: demande de la clé D39DC0E3 au serveur hkp keys.gnupg.net
mdgrech
4
"Trouvez et ouvrez la clé depuis le serveur de clés." Ce que personne ne mentionne, c'est comment cela se fait. Dans mon cas, la clé en question est sur gpg.mit.edu. Très bien, allez simplement sur pgp.mit.edu et collez la clé dans le Search Stringchamp! Faux. Vous devez connaître le secret magique: préférez la clé avec 0x. Si la clé est 0F571F6C, vous devez rechercher 0x0F571F6C, ce qui n’est pas évident.
Ben Johnson
19

sudo gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys SOMEKEY

Victor Piousbox
la source
6
sudon'est pas nécessaire et, à part cela, cette réponse n'ajoute rien au problème de l'affiche ...
jasonwryan
4
J'y travaillais il y a à peine une heure et l'ajout de cette ligne a résolu le problème pour moi. Il y a la différence que je spécifie le port 80 explicitement. Je spécifie également le protocole explicitement. Vous avez peut-être raison de dire que sudo n'est pas nécessaire, mais ma réponse apporte quelques informations pertinentes, vous ne pensez pas? Oh, et ta réponse est également correcte.
Victor Piousbox
5
Retirez le sudo et la réponse est correcte.
jasonwryan
4
Nécessaire pour recevoir les clés d'un serveur de clés public? Je ne pense pas ...
jasonwryan
2
Ajouter le hkp: // comme indiqué dans cette réponse me convient parfaitement.
barryhunter
9

Cela a fonctionné pour moi:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv-keys AKEYXXX
Eltoro56
la source
Je t'aime mec !
Yasser Sinjab
7

J'ai rencontré le même problème lorsque j'essayais d'ajouter une GPGclé derrière un proxy. La solution à mon problème a été d’ ajouter le --keyserver-optionsdans la commande :

sudo apt-key adv --keyserver-options http-proxy=http://USER:PASSWORD@PROXY_URL:PORT/ --keyserver keyserver.ubuntu.com --recv-keys GPG_KEY
Alex.Bai
la source
1

Essayez d'obtenir votre clé d'un autre serveur (a travaillé pour moi):

gpg --keyserver hkp://keys.gnupg.net --recv-keys 94558F59

ou

gpg --keyserver hkp://pgp.mit.edu --recv-keys 94558F59
installero
la source
1

J'ai résolu mon problème en lançant la commande suivante:

sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys *somekey*

Hadi Rasekh
la source
0

Je vois ceci sur l’une des deux boîtes identiques exécutant des déploiements complets contre une image Ubuntu 14.04. En fait, cela avait déjà fonctionné auparavant, app-infra-1mais à un moment donné, il a commencé à échouer. Le fait qu'il ait réussi à être app-infra-2recréé récemment suggère qu'il s'agit d'une corruption app-infra-1ou d'un bug dans la détection et la création de rapports apt-key adv.

J'ai essayé de supprimer la clé en utilisant apt-key delmais je continue à avoir la même erreur.

changed: [app-infra-2] => {"changed": true, "item": "", "repo": "ppa:webupd8team/java", "state": "present"}
failed: [app-infra-1] => {"cmd": "apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 7B2C3B0889BF5709A105D03AC2518248EEA14886", "failed": true, "item": "", "rc": 2}
stderr: gpg: requesting key EEA14886 from hkp server keyserver.ubuntu.com
gpg: keyserver timed out
gpg: keyserver receive failed: keyserver error

stdout: Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.2zqQuFdBjg --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d/puppetlabs-keyring.gpg --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 7B2C3B0889BF5709A105D03AC2518248EEA14886

msg: gpg: requesting key EEA14886 from hkp server keyserver.ubuntu.com
gpg: keyserver timed out
gpg: keyserver receive failed: keyserver error

En fin de compte, étant une machine virtuelle, ma solution consistait à la reconstruire avec vagrant.

DarKoram
la source
0

Pour moi, il était nécessaire d’ajouter des instructions ENV dans mon fichier de menu fixe. Par exemple

ENV  http_proxy "http://[yourproxy]:[port]/"
ENV  https_proxy "http://[yourproxy]:[port]/"
TExaaS-Bikepro
la source