keyserver หมดเวลาเมื่อพยายามเพิ่มรหัสสาธารณะ GPG


67

ฉันกำลังพยายามเพิ่มกุญแจสาธารณะสำหรับการติดตั้งโปรแกรมด้วย CPG แต่ฉันค่อนข้างใหม่สำหรับสิ่งนี้ แต่ทุกคำสั่งที่ฉันพบทำให้ฉันมีข้อผิดพลาดเดียวกัน:

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

เป็นไปได้อย่างไรที่ฉันอยู่เบื้องหลังการปิดกั้นบางอย่างซึ่งทำให้ไม่สามารถสร้างการเชื่อมต่อกับเซิร์ฟเวอร์คีย์ได้ ฉันดูคำถาม OP หลายข้อและลองใช้คำสั่งทั้งหมดที่หาได้ แต่ไม่มีอะไรทำงาน ใครเคยมีปัญหานี้มาก่อนหรือไม่


คุณได้ลองใช้เซิร์ฟเวอร์อื่นแล้วหรือยัง hkp: //subkeys.pgp.net หรือ hkp: //pgp.mit.edu: 11371
jasonwryan

@ jasonwryan ฉันพยายาม pgp.mit.edu แต่ไม่มี hkp: // การใช้สิ่งสำคัญนั้นคืออะไร? ฉันไม่เชื่ออย่างนั้น แต่มันก็คุ้มค่าสำหรับฉันที่จะลอง
Sander Van der Zeeuw

ใช้ที่อยู่เต็มและพอร์ตอื่น ...
jasonwryan

@ jasonwryan ฉันยังมีอยู่หรือไม่: pgp.mit.edu: การเชื่อมต่อหมดเวลา gpgkeys: ข้อผิดพลาดในการดึง HTTP ที่ 7: ไม่สามารถเชื่อมต่อได้: การเชื่อมต่อหมดเวลา gpg: ไม่พบข้อมูล OpenPGP ที่ถูกต้อง gpg: จำนวนทั้งหมดที่ประมวลผล: 0
Sander Van der Zeeuw

3
gpg --keyserver hkp://pgp.mit.edu --recv-keys 94558F59ทำงานให้ฉัน ...
jasonwryan

คำตอบ:


113

11371นี้มักจะเกิดจากไฟร์วอลล์ของคุณปิดกั้นพอร์ต คุณสามารถปลดบล็อกพอร์ตในไฟร์วอลล์ของคุณ ในกรณีที่คุณไม่สามารถเข้าถึงไฟร์วอลล์คุณสามารถ:

  1. บังคับให้ใช้พอร์ต80แทน11371

    gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 94558F59
  2. อีกทางเลือกหนึ่ง

    • ค้นหาและเปิดคีย์จากเซิร์ฟเวอร์คีย์
    • คัดลอกเนื้อหามันลงในไฟล์ข้อความ
    • ไปที่เครื่องมือระบบ> การตั้งค่า> แหล่งซอฟแวร์> การรับรองความถูกต้อง> ปุ่มเพิ่มและเลือกไฟล์ข้อความที่สร้างขึ้น สำหรับ Ubuntu 14.04 และใหม่กว่าลอง: Software Center -> Edit -> Software Sources -> Authentication -> Import key file

5
gpg --import key.txtหากคุณต้องการนำเข้าผ่านบรรทัดคำสั่ง FYI
Banjer

1
sks-keyservers.net/iดาวน์โหลดคีย์ FYI
Lakshmi Narayanan

2
โหวตขึ้นสำหรับทางเลือก! บน Ubuntu 14.04 และใหม่กว่านั้นเพิ่มจากSoftware Center -> Edit -> Software Sources -> Authentication -> Import key file
Roy Ling

แก้ไขปัญหาของฉันด้วยการติดตั้งคีย์สำหรับ rvm การโทรต่อไปนี้ถูกระงับสำหรับฉัน: การขอคีย์ D39DC0E3 จาก hkp server keys.gnupg.net
mdgrech

4
"ค้นหาและเปิดคีย์จากเซิร์ฟเวอร์คีย์" สิ่งที่ไม่มีใครพูดถึงคือวิธีที่ทำ ในกรณีของฉันคีย์ในคำถามคือ gpg.mit.edu ตกลงง่ายเพียงไปที่pgp.mit.eduและวางกุญแจลงในSearch Stringฟิลด์! ไม่ถูกต้อง. คุณต้องทราบความลับมายากล: 0xย่อหน้าที่สำคัญด้วย หากกุญแจคือ0F571F6Cคุณต้องค้นหา0x0F571F6Cซึ่งไม่ชัดเจน
เบ็นจอห์นสัน

19

sudo gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys SOMEKEY


6
sudoไม่จำเป็นและไม่ใช่ว่าคำตอบนี้จะเพิ่มอะไรจะปัญหาโปสเตอร์ของ ...
jasonwryan

4
ฉันกำลังทำงานกับสิ่งนี้เพียงหนึ่งชั่วโมงที่ผ่านมาและการเพิ่มบรรทัดนี้แก้ไขปัญหาให้ฉันได้ มีความแตกต่างที่ฉันระบุพอร์ต 80 อย่างชัดเจน ฉันยังระบุโปรโตคอลอย่างชัดเจน คุณอาจถูกต้องที่ไม่จำเป็นต้องใช้ sudo แต่คำตอบของฉันโฆษณาข้อมูลที่เกี่ยวข้องคุณคิดหรือไม่ โอ้และคำตอบของคุณก็ถูกต้องเช่นกัน
Victor Piousbox

5
ลบ sudo และคำตอบนั้นถูกต้อง
jasonwryan

4
จำเป็นต้องรับคีย์จากพับลิกคีย์สาธารณะหรือไม่? ฉันไม่คิดอย่างนั้น ...
jasonwryan

2
การเพิ่ม hkp: // ดังที่กล่าวไว้ในคำตอบนี้ใช้งานได้สำหรับฉัน
barryhunter



1

ลองรับรหัสของคุณจากเซิร์ฟเวอร์อื่น (ใช้งานได้สำหรับฉัน):

gpg --keyserver hkp://keys.gnupg.net --recv-keys 94558F59

หรือ

gpg --keyserver hkp://pgp.mit.edu --recv-keys 94558F59


0

ฉันเห็นสิ่งนี้ในหนึ่งในสองกล่องที่เหมือนกันซึ่งใช้งานการปรับใช้กับ ansible กับ Ubuntu 14.04 อิมเมจ ในความเป็นจริงมันได้ทำงานมาก่อนapp-infra-1แต่ในบางจุดก็เริ่มล้มเหลว ความจริงที่ว่ามันประสบความสำเร็จในการapp-infra-2สร้างสดใหม่แสดงให้เห็นว่ามันคือการทุจริตในหรือข้อผิดพลาดในการตรวจสอบและการรายงานของapp-infra-1apt-key adv

ฉันพยายามลบรหัสโดยใช้apt-key delแต่ฉันยังได้รับข้อผิดพลาดเดิมอีก

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

ในท้ายที่สุดเนื่องจากมัน VM vagrantเป็นวิธีการแก้ปัญหาของฉันคือการอีกครั้งสร้างมันด้วย


0

สำหรับฉันมันจำเป็นต้องเพิ่มคำสั่ง ENV ลงในไฟล์ docker ของฉัน เช่น

ENV  http_proxy "http://[yourproxy]:[port]/"
ENV  https_proxy "http://[yourproxy]:[port]/"
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.