Proxy'nin arkasına apt-key ile gpg anahtarı eklenemiyor


34

apt-keyUbuntu 17.04'e geçtiğimden beri gpg anahtarını sistematik olarak eklemek başarısız oluyor (bununla doğrudan alakalı olduğundan şüpheliyim). İle Örnek Spotify repo anahtarının :

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys BBEBDCB318AD50EC6865090613B00F1FD2C19886
Executing: /tmp/apt-key-gpghome.wRE6z9GBF8/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys BBEBDCB318AD50EC6865090613B00F1FD2C19886
gpg: keyserver receive failed: No keyserver available

Ön hkp://eki kaldırırsam aynı şey .


Bağlam: Yerel kurumsal vekille başa çıkmak için CNTLM kullanıyorum . Env değişkenleri ayarlandı (in /etc/environment):

$ env | grep 3128
https_proxy=http://localhost:3128
http_proxy=http://localhost:3128
ftp_proxy=http://localhost:3128

/etc/apt/apt.confyapılandırılmış ( aptkomutlar iyi çalışıyor):

$ cat /etc/apt/apt.conf
Acquire::http::Proxy "http://localhost:3128";
Acquire::https::Proxy "http://localhost:3128";
Acquire::ftp::Proxy "http://localhost:3128";

Son olarak, belirtilen anahtar sunucusu erişilebilir görünüyor:

$ curl keyserver.ubuntu.com:80
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>SKS OpenPGP Public Key Server</title>
  </head>
  <body>
  [...]

Ne yapabilirim ? Daha fazla nasıl hata ayıklanacağından bile emin değilim.


Yapmaya çalıştığım şeyler, sonuçsuz:

  • çalıştırmak sudoile -E(env korumak) seçeneğiyle
  • çalıştırmak apt-key advile --keyserver-options http-proxy=http://localhost:3128/seçeneğiyle ( kaynak )
  • $ gpg --list-keysnedense koşmak ( kaynak )
  • başka bir keyserver ( --keyserver pgp.mit.edu) kullanın
  • hkp://parçayı kaldır ( --keyserver keyserver.ubuntu.com:80)

Garip şey de herhangi bir "cntlm" girişini görmek asla olmasıdır /var/log/syslogçalıştırırken apt-key.


http://keyserver.ubuntu.com/Tarayıcınıza erişmeye çalıştığınızda ne olur ?
dirkt

Web sayfasını aldım ( curlyukarıdaki çıktıda gösterilen ile aynı )
Anto

Yanıtlar:


50

Genellikle ftp, http ve https için bir proxy'niz olur; Ben orada görüyorum hkp: // bir URL olarak; bu yüzden saf bir http proxy üzerinden yönlendirilmemeli, bu nedenle iletişimi kesmemelidir.

Bunun yerine bunu kullanın:

sudo apt-key adv --keyserver keyserver.ubuntu.com --keyserver-options http-proxy=http://localhost:3128 --recv-keys BBEBDCB318AD50EC6865090613B00F1FD2C19886

Sistem güncellemelerine gelince, örneğin bir APT proxy'si kullanmanızı öneririm apt-cacher-ng.

Bunu yapmanın başka bir yolu da, genel web arayüzünde, bir tarayıcı ile, örneğin çalışma istasyonunuzda istediğiniz anahtar için https://keyserver.ubuntu.com adresinde arama yapmaktır.

Siteyi aç ve bir formun olsun. Bu durumda "Arama Dizesi" "Spotify" kullandım; sonra "Ara" işlevini seçiniz; birkaç anahtar listeleyecek.

Sonuç sayfasında belirttiğiniz imza / parmak izi aranıyor:

pub  4096R/D2C19886 2015-05-28            
     Fingerprint=BBEB DCB3 18AD 50EC 6865  0906 13B0 0F1F D2C1 9886 

uid Spotify Public Repository Signing Key <operations@spotify.com>
sig  sig3  D2C19886 2015-05-29 __________ 2017-11-22 [selfsig]
sig  sig   94558F59 2015-06-02 __________ __________ Spotify Public Repository Signing Key <operations@spotify.com>

Bunun bizi ilgilendiren giriş olduğunu görüyoruz.

Bu yüzden D2C19886’yı tıklıyoruz ve https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x13B00F1FD2C19886’da anahtarın bulunduğu bir sayfa sunuluyor .

Public Key Server -- Get "0x13b00f1fd2c19886 "

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: SKS 1.1.6
Comment: Hostname: keyserver.ubuntu.com

mQINBFVm7dMBEADGcdfhx/pjGtiVhsyXH4r8TrFgsGyHEsOWaYeU2JL1tEi+YI1qjpExb2Te
TReDTiGEFFMWgPTS0y5HQGm+2P3XGv0pShvgg9A6FWZmZmT+tymA2zvNrdpmKdhScZ52StPL
Fz9wsmXHG4DIKVuzgzuV4YxJ1i2wFtoVp8zT9ORu1BxLZ0IBwTvLRbaQGZ8DwXVAHak9cK91
Ujj6gJ1MJPohZLHH2BjrOjEl/I36jFUjK0AadznNzo08lLAi94qjtheJtuJD3IEOAlCkaknz
6vbEFpszLGlLD7GENMzJk46ObuJuvW5R2PkOU2U8jS0GaUD9Ou/SIdJ6vIdvjSs/ettc2wwd
nbSdadvjovIfvEBRsEVMpRG+42B+DZpJbS9pCb8sxTJtnUy1YViZmG0++FhPGGPGzQYhC/Mz
07lsx5PkC7Kka2FCNmhauxw5deO43Ck181oQVdbt/VxmChzchUJ6N6/uOV5JKm7B9UnDNyqU
Yv6goeLvFnT9ag+FCxiroTrq+dINr6d+XT/cI9WtSagfmhcekwhyfcCgYsFemAOckRifjEGF
MksQlnWkGwWNoKe91KBxjgaJaazSbZRk0dFPSSmfKWaxuTwkR74pbaueyijnQJgHAjfCyzQe
9miN9DitON5l6T2gVAN3Jn1QQmV7tt5GB7amcHf5/b0oYmmRPQARAQABtD5TcG90aWZ5IFB1
YmxpYyBSZXBvc2l0b3J5IFNpZ25pbmcgS2V5IDxvcGVyYXRpb25zQHNwb3RpZnkuY29tPokB
HAQQAQIABgUCVW3SWAAKCRAILM7flFWPWUk5B/wOqqD9/2Do9PyPucfUs/rrP4+M8iJLpv8U
+bX/qHryTTWfpk3YuKL4+c8saHySK4HLGyxd3mdo1XMF351KrxLQvWMSSPbIRV9cSqZROOVn
2ya+3xpWk6t1omLzxtBBMOC4B5qAfWhog7ioAmzQNY5NUz5mqXVP5WbgR/G+GOszzuQUgeu1
Xxxzir3JqWQ0g8mp3EtX7dB76zxkkuTYbeVDPOvtJPn/38d3oSLUI1QJnL8pjREHeE8fO5mW
ncJmyZNhkYd+rfnPk+W0ZkTr59QBIEOGMTmATtNh+x1mo5e2dW91Oj4jEWipMUouLGqbo/gJ
uHFMt8RWBmy+zFYUEPYHiQI+BBMBAgAoAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAUC
VWg3sAUJBK3QLQAKCRATsA8f0sGYhl6hEACJ1CrYjaflKKR2Znuh0g0gM89NAwO8AA4+SpkW
HagdGLo7OV/rGB3mlwD4mhaa8CbEnBT/za3jFnT19KsYQWiT21oOX/eo47ITbAspjDZTiXLi
nyAcOJn+q/EFkelROzbVaxZHi6SN5kCEd8KAew8h2jZf8wWqaYVyMPNSqotUhin6YjWsu57B
GixVThoMmxx3udsGAiYqt8buAANWbkUphrvtJuNCKkGym7psnS4Q5EnHPfvbYii9iAfBswX6
nZQlehva7aToN73elYL3opCArAxKAFx70bpGxb7T16KjKzkKS0a4iQ7xdbBGylb+AE/RhICa
+RM5tma2YnB3pZvFM/n0BNeYReCgvxkl1rqrB1KxmFHfGqjLkb2YAZ5RYnP3gEt+nbEWxL8F
O0Bhakn1RB3NqTC2oiQAUfh+66yUawUNkHRHlGAEzZAxvpfnf0hSJp734lyQZJs+zqXUAXa2
UmEZ6se62PgZRQIz5IbAVxSiGz4xIZs1yS36N2vZ34LFJa9o/HVk5OfpqZM0zjWwQIQN2b4O
BizL5r4h2Mi5BHUEyYMsDZn+txoJjPPYLolRlf31sqi5MJE+cbOAXSn8PC9k4i+hrbfqFzts
47+6xgCH3aXbhUkJh1CH/0/qEXfTPYTyayijm4rdvSBczzEORWGT5E38oV9h1eUqp4nVPg==
=/qip
-----END PGP PUBLIC KEY BLOCK-----

"----- BEGIN" ile başlayan satır ile bu satırlar da dahil olmak üzere "----- END" ile biten satır arasında kesin ve bir dosyaya yapıştırın spotify.pgp; tuşuna basın. (biçimlendirme işlemi sırasında her satırdan önce 4 boşluk eklediğim için buradan kesmeyin)

Son olarak, anahtarı yaptığınız sunucuya aktarmak için:

$sudo apt-key add spotify.pgp
OK

@Anto işe yaradı mı?
Rui F Ribeiro

1
Merhaba Rui, gerçekten bu "manuel" yöntem işe yarıyor ve bu arada "geçici olarak" çözdüm. Anlaşılan bu geçici çözüm geçici olarak kalmayacak: (Yine de yine de çok teşekkürler.)
Anto

4

Apt-key veya gpg proxy'sini denemek yerine http ile curl kullanan bir çözüm:

curl -sSL \
'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xBBEBDCB318AD50EC6865090613B00F1FD2C19886' \
| sudo apt-key add -

Bu yöntem apt-keykomut satırı veya http_proxy veya https_proxy ortam değişkenleri ayarları yerine kullanılmalıdır (en yeni sürümlerinde devre dışı bırakılmıştır apt-key).


-1

keyserver 'ı add-apt-repository' ye göre bir parametre olarak belirleyebilirsiniz:

sudo add-apt-repository --keyserver hkps://keyserver.ubuntu.com:443 some_ppa

Giden bağlantı noktası 443 kurumsal güvenlik duvarı tarafından engellenmez.


Niye ya? Varsayılan olarak tüm ağlarımda engelleniyor.
cprn

Bu cevap işe yaramayacak, sorunun zorluğu erişimin merkezi olarak güvenlik duvarı olmasıdır.
Rui F Ribeiro
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.