How to renew expired zoneminder repository key (public key is not available: NO_PUBKEY A8C670C86F88B031)

Written by - 0 comments

Published on - Listed in Linux Surveillance Zoneminder Security


It's been a while since I updated my local Zoneminder setup, which currently still runs 1.36.12. The version can be seen in the user interface, usually somewhere in the top right corner:

Zoneminder Version

And of course this can also be verified on the command line, looking at the installed package:

root@zm:~# dpkg -l zoneminder
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version           Architecture Description
+++-==============-=================-============-===============================================
ii  zoneminder     1.36.12-bullseye1 amd64        video camera security and surveillance solution

However when I wanted to update Zoneminder (and generall the OS packages), I ran into an error related to the Zoneminder repositories:

root@zm:~# apt-get update
[...]
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://zmrepo.zoneminder.com/debian/release-1.36 bullseye/ Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A8C670C86F88B031
W: Failed to fetch https://zmrepo.zoneminder.com/debian/release-1.36/bullseye/Release.gpg  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A8C670C86F88B031
W: Some index files failed to download. They have been ignored, or old ones used instead.

The previous GPG key, used to sign the zoneminder package, has expired in the meantime. A new key (archive-keyring.gpg) was placed on the repository server in January 2023. This new key needs to be placed into the list of trusted APT gpg keys:

root@zm:~# wget -O - https://zmrepo.zoneminder.com/debian/archive-keyring.gpg | sudo tee /etc/apt/trusted.gpg.d/zmrepo.asc

The repository update should now work again:

root@zm:~# apt-get update
Hit:1 http://deb.debian.org/debian bullseye InRelease
Hit:2 http://deb.debian.org/debian-security bullseye-security InRelease
Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
Ign:4 https://zmrepo.zoneminder.com/debian/release-1.36 bullseye/ InRelease
Get:5 https://zmrepo.zoneminder.com/debian/release-1.36 bullseye/ Release [1,391 B]
Get:6 https://zmrepo.zoneminder.com/debian/release-1.36 bullseye/ Release.gpg [862 B]
Get:7 https://zmrepo.zoneminder.com/debian/release-1.36 bullseye/ Packages [17.9 kB]
Fetched 20.2 kB in 1s (14.3 kB/s)

And I can upgrade zoneminder, either by upgrading just the zoneminder package:

root@zm:~# apt-get install zoneminder

Or by upgrading all packages:

root@zm:~# apt-get dist-upgrade
[...]
Setting up zoneminder (1.36.33-bullseye1) ...
Installing new version of config file /etc/zm/conf.d/01-system-paths.conf ...
detected systemd
Detected db service is mariadb.service
Checking for db
Db exists.
Updating permissions for user zmuser@localhost

Initiating database upgrade to version 1.36.33 from version 1.36.12

Upgrading database to version 1.36.33
Upgrading DB to 1.36.16 from 1.36.12

Database successfully upgraded to version 1.36.16.
Upgrading DB to 1.36.18 from 1.36.12

Database successfully upgraded to version 1.36.18.

Database upgrade to version 1.36.33 successful.


Freshening configuration in database
Migratings passwords, if any...
Loading config from DB 221 entries
Saving config to DB 227 entries
Done Updating
[...]


Add a comment

Show form to leave a comment

Comments (newest first)

No comments yet.