Bagaimana cara menginstal kunci gpg dari balik firewall?

13

Saya mengerti bahwa server kunci menggunakan port 11371 tetapi dalam banyak kasus Anda tidak diizinkan untuk terhubung ke port ini dan Anda tidak dapat menambahkan

Ada banyak kasus ketika Anda tidak dapat mengubah konfigurasi firewall.

Contoh perintah yang gagal

 gpg --keyserver keyserver.ubuntu.com --recv-keys 0A5174AF

Bagaimana Anda mengatasi masalah ini?

Sorin
sumber

Jawaban:

15

Beberapa server utama juga menjawab port 80:

gpg --keyserver hkp://wwwkeys.de.pgp.net:80 --recv-keys 0A5174AF

Dan karena hkp bergantung pada http, Anda harus dapat menggunakannya melalui proxy web juga.

b0fh
sumber
2
Ubuntu menyelesaikan masalah ini dan sekarang server juga merespons pada port 80.
sorin
3
wwwkeys.de.pgp.net:80tidak berfungsi lagi.
BuZZ-dEE
1
hkp: //p80.pool.sks-keyservers.net: 80 karya.
irritable_phd_syndrom
jugahkp://keys.gnupg.net:80
Trevor Boyd Smith
11

Sesuatu seperti

gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 \
    --keyserver-options "timeout=10 http-proxy=$http_proxy" \
    --recv-keys B0F4253373F8F6F510D42178520A9993A1C052F8

Bagian yang menentukan adalah http-proxy=$http_proxy, yang bisa diganti dengan http-proxy=http://corporate.proxy.test:8765misalnya.

uav
sumber
2
Penting untuk dicatat bahwa urutan bendera penting di sini. Jika Anda memasukkan --recv-keyssebelumnya --keyserver-options, Anda akan mendapatkan kesalahan yang terlihat seperti:gpg: Note: '--keyserver-options' is not considered an option gpg: "--keyserver-options" not a key ID: skipping gpg: "timeout=10 http-proxy=http://fooproxy:8080" not a key ID: skipping
Mani
1
Halaman buku panduan menyatakan bahwa keyserver-options dapat berupa koma atau dibatasi ruang, tetapi saya menemukan koma diperlukan sementara pembatas ruang menghasilkan kesalahan penggunaan gpg. gpg versi 2.0.22. Seperti:--keyserver-options "timeout=10,http-proxy=${http_proxy}"
Ed Randall
2

coba ini

sudo apt-key adv --keyserver-options http-proxy="http://<username>:<password>@<proxy_server_addr>:<proxy_port>" --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys <key_to_import>
Jude Job
sumber
1
Selamat Datang di Kesalahan Server! Sementara ini secara teoritis dapat menjawab pertanyaan, berikan konteks di sekitar perintah sehingga yang lain akan memiliki beberapa gagasan tentang apa yang seharusnya dilakukan dan mengapa itu merupakan solusi. - Menggunakan proxy seringkali merupakan solusi yang baik.
HBruijn
1

Hanya ingin menambahkan beberapa catatan di sini.

Halaman manual untuk gpg mencatat bahwa --keyserver-options "http-proxy=foo"akan menimpa http_proxyvariabel lingkungan, tetapi setidaknya untuk ...

gpg --version gpg (GnuPG) 2.1.15 libgcrypt 1.7.9

Gagal mengambil http_proxyvariabel lingkungan (atau HTTP_PROXY) tetapi tidak menerima --keyserver-optionssolusinya.

Mani
sumber
Bisakah Anda memberikan tautan ke situs ini? Saya menduga bahwa opsi beralih menimpa variabel proksi, tetapi hanya untuk perintah yang satu ini. Variabel http_proxy kemudian tidak berubah ke yang lama. Namun, itu tidak diprogram dengan sempurna jika variabel http_proxy dan no_proxy diabaikan.
uav
Saya tidak mengerti mengapa apt, Java dan gpg memerlukan definisi proxy mereka sendiri. Menurut pendapat saya, mereka harus menggunakan variabel lingkungan default! Ada trik untuk apt. Cukup buat /etc/apt/apt.conf kosong. LOL, siapa yang mengada-ada?
uav