我最近有一个包签名密钥过期,阻止了一些自动更新的安装,所以现在我正在设置监控,以确保如果再次发生这种情况,我们会收到警报。
在 Debian 系统上,我可以使用 apt-key 显示所有 repo 密钥及其到期日期(如果有的话),但无法找到如何在 CentOS 上为 yum 执行等效操作
我可以使用以下方法获取一些关键信息:
rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n'
但这并没有显示到期日期 - 知道如何提取这些信息吗?
在 Red Hat 派生系统上,GPG 密钥也存储在 ASCII Armor 目录中
/etc/pki/rpm-gpg-keys
。您可以从那里检查任何键。例如,在 CentOS 8 上:
您可以使用
-v
查看更多详细信息,并且您需要在旧版本的 gpg 上这样做。这个例子来自 CentOS 7。这些都没有到期日期,但是具有到期日期或已经到期的密钥将显示到期日期。
这是一个具有未来到期日期的密钥:
这是一个已经过期的密钥:
可选包
distribution-gpg-keys
包含来自各种不同 Linux 发行版和存储库的 GPG 密钥。安装此软件包后,这些密钥在目录中可用/usr/share/distribution-gpg-keys
。