จะติดตั้งคีย์ gpg จากไฟร์วอลล์ได้อย่างไร?


13

ฉันเข้าใจว่า keyservers ใช้พอร์ต 11371 แต่ในหลายกรณีคุณไม่ได้รับอนุญาตให้เชื่อมต่อกับพอร์ตนี้และคุณไม่สามารถเพิ่ม

มีหลายกรณีเมื่อคุณไม่สามารถแก้ไขการกำหนดค่าไฟร์วอลล์

คำสั่งตัวอย่างที่ล้มเหลว

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

คุณจะแก้ไขปัญหานี้ได้อย่างไร

คำตอบ:


15

เซิร์ฟเวอร์หลักบางตัวตอบพอร์ต 80 เช่นกัน:

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

และเนื่องจาก hkp อาศัย http คุณควรจะสามารถใช้เว็บพร็อกซีได้เช่นกัน


2
Ubuntu แก้ปัญหานี้แล้วและตอนนี้เซิร์ฟเวอร์ก็ตอบสนองบนพอร์ต 80
โซริน

3
wwwkeys.de.pgp.net:80ไม่ทำงานอีกต่อไป
BuZZ-dEE

1
hkp: //p80.pool.sks-keyservers.net: 80 ใช้ได้
irritable_phd_syndrom

ยังhkp://keys.gnupg.net:80
เทรเวอร์บอยด์สมิ ธ

11

สิ่งที่ต้องการ

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

ส่วนที่เด็ดขาดคือhttp-proxy=$http_proxyซึ่งสามารถถูกแทนที่ด้วยhttp-proxy=http://corporate.proxy.test:8765ตัวอย่าง


2
สิ่งสำคัญที่ควรทราบคือลำดับของธงมีความสำคัญที่นี่ หากคุณใส่ไว้--recv-keysก่อนหน้า--keyserver-optionsนี้คุณจะได้รับข้อผิดพลาดที่มีลักษณะดังนี้: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
มณี

1
หน้าคู่มือระบุว่าตัวเลือก keyserver สามารถเป็นจุลภาคหรือเว้นวรรค แต่ฉันพบจุลภาคที่จำเป็นในขณะที่การเว้นวรรคพื้นที่ทำให้เกิดข้อผิดพลาดการใช้ gpg gpg เวอร์ชั่น 2.0.22 ไลค์:--keyserver-options "timeout=10,http-proxy=${http_proxy}"
Ed Randall

2

ลองนี้

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>

1
ยินดีต้อนรับสู่ Server Fault! ในขณะที่สิ่งนี้อาจตอบคำถามในทางทฤษฎีได้โปรดระบุบริบทเกี่ยวกับคำสั่งเพื่อให้ผู้อื่นมีความคิดว่าควรทำอย่างไรและทำไมจึงเป็นคำตอบ - การใช้พรอกซีมักจะเป็นทางออกที่ดี
HBruijn

1

แค่อยากจะเพิ่มบันทึกย่อที่นี่

หน้าคู่มือสำหรับ gpg นั้น--keyserver-options "http-proxy=foo"จะแทนที่http_proxyตัวแปรสภาพแวดล้อม แต่อย่างน้อยก็สำหรับ ...

gpg --version gpg (GnuPG) 2.1.15 libgcrypt 1.7.9

มันไม่สามารถรับhttp_proxyตัวแปรสภาพแวดล้อม (หรือHTTP_PROXY) แต่ยอมรับ--keyserver-optionsวิธีแก้ไข


คุณช่วยระบุลิงก์ไปยังเว็บไซต์นี้ได้หรือไม่? ฉันสงสัยว่าตัวเลือกสลับเขียนทับตัวแปรพร็อกซี แต่สำหรับคำสั่งเดียวนี้เท่านั้น ตัวแปร http_proxy จะไม่เปลี่ยนเป็นตัวแปรเก่า อย่างไรก็ตามมันไม่ได้ถูกโปรแกรมอย่างสมบูรณ์ถ้าตัวแปร http_proxy และ no_proxy ถูกละเว้น
uav

ฉันไม่เข้าใจว่าทำไม apt, Java และ gpg จึงต้องการคำจำกัดความพร็อกซีของตนเอง ในความคิดของฉันควรใช้ตัวแปรสภาพแวดล้อมเริ่มต้น! มีเคล็ดลับสำหรับ apt เพียงสร้าง /etc/apt/apt.conf ที่ว่างเปล่า ฮ่า ๆ ใครทำสิ่งนี้ขึ้นมา?
uav
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.