Resmi nginx güvenilir ppa KEYEXPIRED gpg hatası veriyor


34

Apt-get upgrade yaptığım her seferde aşağıdaki hatayı alıyorum:

GPG hatası: http://nginx.org trusty Release: Aşağıdaki imzalar geçersizdi: KEYEXPIRED 1471427554

Sadece resmi nginx ppa'ya kaynaklarımı ekledikten sonra standart yolu yükledim.

deb http://nginx.org/packages/ubuntu/ trusty nginx
deb-src http://nginx.org/packages/ubuntu/ trusty nginx

Bu, onların sonunda umutla çözecekleri bir hata mıdır, yoksa benim başımdan yapmam gereken bir şey mi var?


1
İndirmek mı nginx Bu anahtarı , daha sonra çalıştırın sudo apt-key add nginx_signing.keyve hala bu hata alıyorum?
Thomas Ward

2
bu olur ... bazen. Ancak bu ("1471427554") geçerli bir GPG anahtarına benzemiyor. wget http://nginx.org/keys/nginx_signing.key -O - |sudo apt-key add -@ThomasWard tarafından önerilen her iki adımı küçük bir komutla gerçekleştirir.
Phillip -Zyan K Lee- Stockmann

LANG=C sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1471427554aşağıdaki hatayı döndürür: Executing: /tmp/tmp.EU8uLKmT5b/gpg.1.sh --keyserver keys.gnupg.net --recv-keys 1471427554 gpg: "1471427554" not a key ID: skipping
Phillip -Zyan K Lee- Stockmann

1
evet, anahtar dosya https üzerinden de kullanılabilir.
Phillip -Zyan K Lee- Stockmann

1
@Phillip: Aslında 1471427554, APT imzalama anahtarının son kullanma zamanının zaman damgasıdır. Date komutunun modern versiyonları sizin için okunabilir formatta ayrıştırır: date -u -d @1471427554verir Wed Aug 17 09:52:34 UTC 2016.
BertD

Yanıtlar:


48

Bir üçüncü taraf depo ekledikten sonra /etc/apt/sources.list.d/*dosya veya /etc/apt/sources.listapt keystore içine emin tekabül gpg anahtarı takıldığında yapmak gerekir.

Bu özel nginx.org deposu olayı için daha spesifik olmak gerekirse: deponun imzalanması için kullanılan nginx.org gpg anahtar dosyasını eklemeniz gerekir.

Bu işlem https://nginx.org/keys/nginx_signing.key dosyasını elle indirerek ve sudo apt-key add nginx_signing.key( nginx.org ve @ThomasWard tarafından önerildiği şekilde) manuel olarak indirerek ya da tek bir satırda yapabilirsiniz:

wget https://nginx.org/keys/nginx_signing.key -O - | sudo apt-key add -

Tamam, bu işe yaradı, ama yanlış okuyordum ya da bir şeyleri özlüyorum. Bu neden şimdi aniden ortaya çıktı? Anlamadım.
codenoob

1
@ linsong bunun neden şimdi açıldığını açıkladı: eski gpg anahtarının 17 Ağustos'ta süresi doldu. Böylece yeni anahtarı indirmeniz gerekiyordu.
Phillip -Zyan K Lee- Stockmann

11

Bu sorunun kök nedeni, "eski" Nginx imzalama anahtarının 17 Ağustos 2016'da sona ermesidir:

$ sudo apt-key list

pub   2048R/7BD9BF62 2011-08-19 [expired: 2016-08-17]
uid                  nginx signing key <signing-key@nginx.com>

Bu sorunu çözmek için, @ phillip-zyan-k-lee-stockmann ve @ThomasWard tarafından önerilen komutu kullanarak yeni imzalama anahtarını ekleyin:

wget https://nginx.org/keys/nginx_signing.key -O - | sudo apt-key add -

Yeni anahtarın süresi 2024’de sona eriyor:

$ sudo apt-key list

pub   2048R/7BD9BF62 2011-08-19 [expires: 2024-06-14]
uid                  nginx signing key <signing-key@nginx.com>

Neyin daha iyi olduğunu açıklamaya çalıştığından, genel olarak bu cevabı sevdiğimi düşünüyorum. (Yukarıdaki açıklama cevaba rağmen kullanım
davam ile uyuşmuyor
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.