oficial nginx confiável ppa dá erro de gpg KEYEXPIRED

34

Estou recebendo o seguinte erro toda vez que faço o apt-get upgrade:

GPG erro: http://nginx.org lançamento fiel: As seguintes assinaturas eram inválidas: KEYEXPIRED 1471427554

Eu apenas tenho o nginx ppa oficial instalado da maneira padrão, adicionando o seguinte ao meu sources.list

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

Isso é um erro do fim deles que eles eventualmente resolverão, ou há algo que eu vou ter que fazer do meu lado?

Mohamed Hafez
fonte
11
Você baixou essa chave do NGINX e , em seguida, executou sudo apt-key add nginx_signing.keye ainda está recebendo esse erro?
Thomas Ward
2
isso acontece ... às vezes. Mas isso ("1471427554") não parece uma chave GPG válida. wget http://nginx.org/keys/nginx_signing.key -O - |sudo apt-key add -executará as duas etapas sugeridas por @ThomasWard em um pequeno comando.
precisa saber é o seguinte
LANG=C sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1471427554retorna o seguinte erro: 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
11
sim, o arquivo-chave também está disponível via https.
precisa saber é o seguinte
11
@Phillip: Na verdade, 1471427554 é o registro de data e hora do prazo de validade da chave de assinatura do APT. Versões modernas do comando data vai analisá-lo para o formato legível para você: date -u -d @1471427554Wed Aug 17 09:52:34 UTC 2016.
BertD 30/08

Respostas:

48

Após adicionar um repositório de terceiros a um /etc/apt/sources.list.d/*arquivo ou /etc/apt/sources.list, você precisa garantir que a chave gpg correspondente seja inserida no keystore apt.

Para ser mais específico neste caso especial do repositório nginx.org: você precisa adicionar o arquivo de chave nginx.org gpg usado para a assinatura do repositório.

Isso pode ser feito baixando o arquivo https://nginx.org/keys/nginx_signing.key manualmente e emitindo sudo apt-key add nginx_signing.key(conforme sugerido por nginx.org e @ThomasWard) ou você pode fazer isso em uma única linha:

wget https://nginx.org/keys/nginx_signing.key -O - | sudo apt-key add -
Phillip -Zyan K Lee- Stockmann
fonte
Ok, isso funcionou, mas devo estar lendo errado ou faltando alguma coisa. Por que isso apareceu de repente agora? Eu não entendo isso.
Codenoob 19/08/16
11
O @linsong descreveu por que isso apareceu agora: a antiga chave gpg expirou em 17 de agosto. Portanto, você precisava fazer o download da nova chave.
precisa saber é o seguinte
11

A causa principal desse problema é porque a chave de assinatura do Nginx "mais antiga" expirou em 17 de agosto de 2016:

$ sudo apt-key list

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

Para corrigir esse problema, adicione a nova chave de assinatura usando o comando sugerido por @ phillip-zyan-k-lee-stockmann e @ThomasWard:

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

A nova chave agora expira em 2024:

$ sudo apt-key list

pub   2048R/7BD9BF62 2011-08-19 [expires: 2024-06-14]
uid                  nginx signing key <[email protected]>
hwdsl2
fonte
Eu acho que gosto dessa resposta de maneira geral, pois ela tenta explicar o que aconteceu melhor. (A explicação acima não se encaixava no meu caso de uso, apesar da resposta.)
codenoob