J'essaie d'ajouter une clé publique pour installer un programme avec CPG. Mais je suis assez nouveau dans ce domaine, 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 d'établir une connexion avec le serveur clé. J'ai examiné de nombreuses questions OP et essayé toutes les commandes que j'ai pu trouver mais rien n'a fonctionné. Quelqu'un avait ce problème avant?
Cela est généralement dû au fait que votre pare-feu bloque le port 11371
. Vous pouvez débloquer le port de votre pare-feu. Si vous n'avez pas accès au pare-feu, vous pouvez soit:
Forcer à utiliser le port 80
au lieu de 11371
gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 94558F59
Alternativement
Sudo gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys SOMEKEY
Cela a fonctionné pour moi:
Sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv-keys AKEYXXX
J'ai rencontré le même problème lorsque j'essayais d'ajouter une clé GPG
derrière un proxy. La solution à mon problème était de ajouter le --keyserver-options
dans la commande :
Sudo apt-key adv --keyserver-options http-proxy=http://USER:PASSWORD@PROXY_URL:PORT/ --keyserver keyserver.ubuntu.com --recv-keys GPG_KEY
Essayez d'obtenir votre clé à partir d'un autre serveur (travaillé pour moi):
gpg --keyserver hkp://keys.gnupg.net --recv-keys 94558F59
ou
gpg --keyserver hkp://pgp.mit.edu --recv-keys 94558F59
J'ai résolu mon problème en exécutant la commande suivante:
Sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys *somekey*
Je vois cela sur l'une des deux boîtes identiques exécutant des déploiements ansibles sur une image ubuntu 14.04. En fait, il avait auparavant travaillé pour app-infra-1
mais à un moment donné, il a commencé à échouer. Le fait qu'il ait réussi le app-infra-2
fraîchement recréé suggère qu'il s'agit d'une corruption sur app-infra-1
ou un bug dans la détection et le signalement de apt-key adv
.
J'ai essayé de supprimer la clé à l'aide de apt-key del
mais j'obtiens toujours 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
Au final, comme c'est un vm, ma solution a été de le reconstruire avec vagrant
.
Pour moi, il était nécessaire d'ajouter des instructions ENV dans mon fichier docker. Par exemple.
ENV http_proxy "http://[yourproxy]:[port]/"
ENV https_proxy "http://[yourproxy]:[port]/"