Pas de clé gpg derrière un pare-feu

13

Je suis juste tombé sur ce thread fermé ici: Erreur GPG lors de l'exécution d'apt-get

Même problème ici, Ubuntu 12.04 derrière un pare-feu et un proxy.

Je ne pense pas que la matière soit un doublon du sujet donné. Je rouvre donc cette affaire dans ce fil.

Ma sortie:

root@musik-Aspire-7741:~# apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-  keyring /tmp/tmp.tWVMhyIMYh --trustdb-name /etc/apt/trustdb.gpg --keyring     /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver     hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87
gpg: Key 58B98E87 of hkp Server keyserver.ubuntu.com request
?: keyserver.ubuntu.com: Connection refused
gpgkeys: HTTP fetch error 7: couldn't connect: Connection refused
gpg: No valid OpenPGP data found.
gpg: Total number processed: 0

Conclusion: gpg ne fonctionne pas hkp://keyserver.ubuntu.com:80via http.

user68817
la source
Si vous devez passer par un proxy, vous devez indiquer à GPG d'utiliser le proxy. Avez-vous http_proxymis? ( echo $http_proxy)
tumbleweed

Réponses:

9

Derrière le proxy, la variable d'environnement http_proxydoit être définie. Cela peut être fait de l'une ou l'autre des deux manières.

1.Créez le apt.conffichier dans le répertoire / etc / apt s'il n'est pas présent et ajoutez-y la ligne suivante. Acquire::http::Proxy "http://user:password@server:port";
2. Définissez simplement la variable d'environnement à l'aide de la commande suivante du terminal.
export http_proxy=http://user:password@server:port

Enfin un petit ajustement, ajoutez l'option -E à la commande pour les variables d'environnement à utiliser comme suit
sudo -E apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87

ellore
la source
2
le -E a fait l'affaire
alexandre1985
3

Si vous êtes derrière un proxy, vous devez définir la http_proxyvariable d'environnement dans Bash. La meilleure façon de le faire est d'ouvrir le shell racine avec sudo bash.

Après ça:

export http_proxy="http://xxx.yyy.zzz.www:abcd"

Ajoutez ensuite le dépôt.

Debmalya
la source
1

J'ai passé près de deux jours pour installer la dernière version de MongoDB. Mais j'étais confronté au même problème que celui illustré ci-dessous:

$ apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.pvb8fwe4Rs --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d//nsa-keyring.gpg --keyserver keyserver.ubuntu.com --recv 7F0CEB10
gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: keyserver timed out
gpg: keyserver receive failed: keyserver error

Enfin, j'ai installé mongoDB à l'aide d'étapes partagées par "ellore".

  1. Ajout du proxy http et https dans le apt.conffichier.
  2. Ajout des variables env à l'aide de la commande export httpet https.
  3. "-E" ajouté dans la ligne de commande:

     sudo -E apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
    

Ensuite, j'ai obtenu la réponse ci-dessous:

gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: key 7F0CEB10: "Richard Kreuter <[email protected]>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1

Et j'ai réussi à installer MongoDB 3.0.7 comme indiqué ci-dessous,

$ mongo --version
MongoDB shell version: 3.0.7
Ravichandran K
la source