sudo apt-key adv - keyserver keyserver.ubuntu.com --recv 7F0CEB10 komutu hata döndürüyor


30

Mongodb'u Ubuntu 12'ye yüklemeye çalışıyorum ama bu komutu çalıştırdığımda:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
Bu, aşağıdaki hatayı verdi:

keyserver.ubuntu.com ev sahibi bulunamadı
gpgkeys: HTTP getirme hatası 7: bağlanamadı: böyle bir dosya ya da dizin
yok gpg: geçerli bir openPGP verisi bulunamadı
gpg: Toplam sayı işlemleri: 0

Iptables'daki Güvenlik Duvarı'nı kapattım ama işe yaramadı. Herhangi bir fikir var mı?


Keyserver.ubuntu.com adresinizi sisteminiz IP adresi olarak çözebilir mi? Yani, çıktı dig keyserver.ubuntu.comnedir?
Xyon

Yanıtlar:


35

Bu aslında anahtar sunucuyu ararken bir sorun olmayabilir, bu da hatanın önerdiği şeydir. Apt-key komutu gpg işlevini çağırır ve bu da anahtar sunucusuna erişmeye çalışır. Anlaşılan gpg’de bir hata var, ki eğer anahtarlayıcı talep ettiğiniz anahtara sahip değilse, o zaman gpg yanlış bir şekilde "ev sahibi bulunamadı" olarak yanlış yorumlar.

Duyarlı olmayan bir anahtar sunucunun da aynı şeyi yapması iyi olabilir ve ana sunucuların engellendiği ortamlar gördüm (şirket güvenlik duvarı kuralları), bu nedenle sizin girişiniz olmadığı için bir güvenlik duvarı varsa kök nedeniniz olabilir için.

Sadece referans olması için, anahtar orada ve anahtar sunucusu şu anda bana yanıt veriyor:

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.rh1myoBdSE --trustdb-name /etc/apt//trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --recv 7F0CEB10
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

Bağlantı noktası sorun olabilir (bir şirket güvenlik duvarı sorununa en son çarptığım zamandı), bu yüzden bunun yerine standart HTTP bağlantı noktasında (80) yapmayı deneyin.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

4
"bunun yerine standart HTTP portunda (80) yapmak" oldukça zor! tks
Bill.Zhuang

1
Uyarı: SSL olmadan, size parmak izi aynı son sekiz karaktere sahip bir anahtara ( örneğin, saldıran anahtara ) hizmet veren bir MitM saldırısına uğrayabilirsiniz . Böyle bir anahtar bile halka açık olarak paylaşılmayabilir, bu yüzden asla delirdiğinizi bilemezsiniz. Genel olarak paylaşılan anahtarlardan böyle bir saldırıyı önlemek için, Debian'ın anahtar sunucusunda “yalnızca Debian anahtarlıklarındaki anahtarlar… bu sunucu tarafından döndürülecek” şeklinde bir politika var
Adam Katz

21

Makinemin kurumsal bir proxy arkasında olduğu gibi aynı sorunla karşılaştım. Yaptığımız gpg --keyserver-option http-proxynumarayı ekleyerek . Şuna benziyor:

sudo apt-key adv --keyserver-options http-proxy=<myProxy> --keyserver keyserver.ubuntu.com --recv 7F0CEB10

1
Teşekkürler! İyi ki tepede okumayı bırakmadım ...
Moraru Lilian

20

Bir proxy kullanıyorsanız, örneğin şirketin proxy'sini kullanıyorsanız, muhtemelen tek yol bu el ile girmektir. Koşmak:

sudo apt-get update

ve pub_key'nin kimliğini al. Sonra http://keyserver.ubuntu.com/ adresine gidin ve anahtarı onaltılı olarak arayın, örneğin, eğer anahtar ise 7936A783B, o zaman arayın 0x7936A783B. Pup linkini tıklayın ve tuşların içeriğini kopyalayın ve bir txt dosyasına kaydedin. Terminale gidin ve dosyaya gidin ve çalıştırın:

sudo apt-key add key.txt

İşe yararsa, basit bir OKgeri bildirim alacaksınız . Tüm anahtarlar eklendiğinde, aşağıdakileri çalıştırabilirsiniz:

sudo apt-get update

İşte buyur!


3
Bu temiz; Ayrıca, apt-keyapt-key adv --fetch-keys http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xD6ACA1C817B18ABC
edindiğiniz

2
@ sxc731 - apt-keyMan sayfası şöyle yazıyor: “Hiçbir kontrol yapılmadığını unutmayın; bu nedenle, özensiz kullanılırsa apt-safe (8) altyapısını tamamen baltalamak kolaydır.” Bu, gerçekten olmadan yapmak istemediğiniz anlamına gelir. SSL. Bunu değiştirin --fetch-keys https://…ve makul derecede güvende olmalısınız.
Adam Katz

@AdamKatz çok iyi nokta, teşekkürler. Maalesef önerinizi uygulamak için yorumumu düzenleyemiyorum ama yine de oyu ...
sxc731

--fetch-keys: Hatayla benim için başarısız seçenek https://keyserver.ubuntu.com/pks/lookup?op=get gpgkeys: protocol https' gpg desteklenmez: keyserver şeması için hiçbir işleyicihttps' gpg: WARNING: unable to fetch URI https://keyserver.ubuntu.com/pks/lookup?op=get: keyserver error
miguelmorin

Teşekkürler, tam olarak aradığım şey.
Miguel Ortiz

1

Bu bağlantıda belirtilen ikinci yaklaşım benim için çalıştı. Anahtarı manuel olarak indirin ve ekleyin. Bağlantı eksik anahtar nedeniyle meydana gelen hatayı düzeltmek için adım adım prosedürü sağlar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.