Nginx官方PPA给出KEYEXPIRED gpg错误


34

每次执行apt-get升级时,都会出现以下错误:

GPG错误:http ://nginx.org可信发布:以下签名无效:KEYEXPIRED 1471427554

通过将以下内容添加到我的sources.list中,我只是以标准方式安装了官方nginx ppa

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

这是他们最终有希望解决的错误,还是我最终需要做的事情?


1
您是否从NGINX下载了此密钥,然后运行sudo apt-key add nginx_signing.key并仍然出现此错误?
托马斯·沃德

2
有时会发生这种情况。但这(“ 1471427554”)看起来不像有效的GPG密钥。wget http://nginx.org/keys/nginx_signing.key -O - |sudo apt-key add -将在一个小命令中完成@ThomasWard建议的两个步骤。
菲利普-Zyan K Lee- Stockmann

LANG=C sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1471427554返回以下错误: 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
是的,密钥文件也可以通过https获得。
菲利普-Zyan K Lee- Stockmann

1
@Phillip:实际上,1471427554是APT签名密钥的到期时间的时间戳。date命令的现代版本将为您解析为可读格式:date -u -d @1471427554Gives Wed Aug 17 09:52:34 UTC 2016
BertD

Answers:


48

在将第三方存储库添加到/etc/apt/sources.list.d/*文件或后/etc/apt/sources.list,您需要确保将相应的gpg密钥插入apt密钥库中。

为了更具体地针对nginx.org信息库的这种特殊情况:您需要添加用于对信息库进行签名的nginx.org gpg密钥文件。

可以通过手动下载文件https://nginx.org/keys/nginx_signing.key并发行sudo apt-key add nginx_signing.key(如nginx.org和@ThomasWard 所建议的)来完成,也可以在一行中完成:

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

好的,这行得通,但是我一定是看错了,或者错过了一些东西。为什么现在突然弹出?我不明白
codenoob '16

1
@linsong描述了为什么现在出现此错误:旧的gpg密钥已在8月17日过期。因此,您需要下载新的密钥。
菲利普-Zyan K Lee- Stockmann'8

11

此问题的根本原因是因为“较旧的” Nginx签名密钥已于2016年8月17日过期:

$ sudo apt-key list

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

要解决此问题,请使用@ phillip-zyan-k-lee-stockmann和@ThomasWard建议的命令添加新的签名密钥:

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

新密钥现在将于2024年到期:

$ sudo apt-key list

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

我认为我总体上喜欢这个答案,因为它试图解释发生的更好的事情。(尽管做出了回应,但以上解释与我的用例
不符
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.