Nessuna chiave gpg da dietro un firewall


13

Sono appena incappato in questo thread chiuso qui: errore GPG durante l'esecuzione di apt-get

Lo stesso problema qui, Ubuntu 12.04 dietro un firewall e un proxy.

Non penso che la materia sia duplicata dell'argomento dato. Quindi riapro la questione in questo thread.

La mia uscita:

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

Conclusione: gpg non funziona con hkp://keyserver.ubuntu.com:80http.


Se devi passare attraverso un proxy, devi dire a GPG di utilizzare il proxy. Hai http_proxyimpostato? ( echo $http_proxy)
tumbleweed,

Risposte:


9

Dietro il proxy, è http_proxynecessario impostare la variabile di ambiente . Questo può essere fatto in uno dei due modi.

1.Creare il apt.conffile nella directory / etc / apt se non presente e aggiungere la seguente riga ad esso. Acquire::http::Proxy "http://user:password@server:port";
2.Impostare semplicemente la variabile d'ambiente usando il seguente comando dal terminale.
export http_proxy=http://user:password@server:port

Infine una piccola modifica, aggiungi l'opzione -E al comando per le variabili di ambiente da utilizzare come segue
sudo -E apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 58B98E87


2
il -E ha fatto il trucco
alexandre1985,

3

Se sei dietro un proxy, devi impostare la http_proxyvariabile di ambiente in Bash. Il modo migliore per farlo è aprire la shell di root con sudo bash.

Dopodichè:

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

Quindi aggiungere il repository.


1

Ho impiegato quasi due giorni per installare l'ultima versione di MongoDB. Ma stavo affrontando lo stesso problema mostrato di seguito:

$ 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

Alla fine ho installato mongoDB con l'aiuto dei passaggi condivisi da "ellore".

  1. Aggiunto proxy http e https nel apt.conffile.
  2. Aggiunte le variabili env usando export httpe il httpscomando.
  3. Aggiunto "-E" nella riga di comando:

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

Quindi ho ottenuto la risposta di seguito:

gpg: requesting key 7F0CEB10 from hkp server keyserver.ubuntu.com
gpg: key 7F0CEB10: "Richard Kreuter <richard@10gen.com>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1

E ho installato con successo MongoDB 3.0.7 come mostrato di seguito,

$ mongo --version
MongoDB shell version: 3.0.7
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.