Fehler mit fehlenden Debian APT-Schlüsseln beheben
In diesem Beitrag lernt ihr, wie ihr Fehler mit fehlenden Debian APT-Schlüsseln beheben könnt. Seit 2025 entfernt Debian die Unterstützung für globale APT-Schlüssel in /etc/apt/trusted.gpg.d/
. Stattdessen müssen APT-Quellen explizit mit signed-by
konfiguriert werden.

Hauptproblem
Falls ihr also beim Aktualisieren eures Systems eine Warnung oder Fehlermeldung wie diese erhaltet:
debsuryorg-archive-keyring (2025.03.11) unstable; urgency=medium
* The /etc/apt/trusted.gpg.d/debsuryorg-archive.gpg global APT key will
been removed in the next update of the package.
The script will try to autodetect whether any APT repository is not
configured with signed-by= directive and will print warning about the
installation of this package.
You need to manually add:
[signed-by=/usr/share/keyrings/debsuryorg-archive-keyring.gpg]
to your APT sources lists. See the Debian Wiki for more information:
https://wiki.debian.org/DebianRepository/UseThirdParty#Sources.list_entry
-- Ondřej Surý <ondrej@debian.org> Tue, 11 Mar 2025 14:08:14 +0100
müsst ihr eure APT-Quellen entsprechend anpassen.
Schritt-für-Schritt-Anleitung
Überprüfen, ob das Debsury.org-Repository genutzt wird
Führt folgenden Befehl aus, um zu sehen, ob du das Repository in euren APT-Quellen habt:
grep -r "sury" /etc/apt/sources.list /etc/apt/sources.list.d/
Falls eine Zeile wie diese erscheint:
deb http://packages.sury.org/php/ bookworm main
müsst ihr sie anpassen da diese Zeile nicht mehr dem neuen Standard entspricht.
APT-Quellen aktualisieren
Falls das Repository in einer Datei wie /etc/apt/sources.list.d/php.list
steht, bearbeitet diese mit:
sudo nano /etc/apt/sources.list.d/php.list
Ändert die Zeile von:
deb http://packages.sury.org/php/ bookworm main
zu:
deb [signed-by=/usr/share/keyrings/debsuryorg-archive-keyring.gpg] https://packages.sury.org/php/ bookworm main
Speichert die Datei mit STRG + X
, dann Y
und ENTER
.

GPG-Schlüssel herunterladen und speichern
Falls ihr den neuen Schlüssel noch nicht habt oder unsicher seid, ob er korrekt gespeichert wurde, könnt ihr ihn mit folgendem Befehl herunterladen und am richtigen Ort ablegen:
curl -fsSL https://packages.sury.org/php/apt.gpg | sudo tee /usr/share/keyrings/debsuryorg-archive-keyring.gpg > /dev/null
Dieser Befehl lädt den aktuellen GPG-Schlüssel herunter und speichert ihn in /usr/share/keyrings/
.
Paketlisten aktualisieren
Sobald die Datei angepasst und der neue Schlüssel gespeichert wurde, ladet die Paketlisten neu:
sudo apt update
Falls keine Fehlermeldungen mehr erscheinen, ist alles korrekt konfiguriert!
Andere betroffene APT-Repositories identifizieren und korrigieren
Fall ihr weitere betroffene Repositories habt, könnt ihr sie mit folgendem Befehl auflisten:
grep -r "deb " /etc/apt/sources.list /etc/apt/sources.list.d/
Falls Zeilen ohne [signed-by=...]
erscheinen, müssen sie entsprechend angepasst werden.
Ihr könnt auch nach alten Schlüsseln suchen:
ls /etc/apt/trusted.gpg.d/
Falls ein anderes Repository betroffen ist (z. B. nginx
, crowdsec, apache oder anderes
), öffnet die entsprechende Datei:
sudo nano /etc/apt/sources.list.d/nginx.list
Passt die Zeile an:
deb http://nginx.org/packages/debian/ bookworm nginx
zu:
deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://nginx.org/packages/debian/ bookworm nginx
Speichert die Datei und ladet den passenden Schlüssel herunter:
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg > /dev/null
Danach aktualisiert die Paketlisten:
sudo apt update
Falls weitere Repositories betroffen sind, könnt ihr die gleiche Methode anwenden:
signed-by
hinzufügen- Den passenden GPG-Schlüssel herunterladen
apt update
ausführen
Wo finde ich die passenden signed-by
Schlüssel
Falls ihr nicht wisst, wo ihr die korrekten GPG-Schlüssel für ein bestimmtes Repository findet, gibt es mehrere Möglichkeiten:
- Offizielle Dokumentation des Repository-Anbieters
Viele Anbieter listen die korrekten GPG-Schlüssel undsigned-by
Konfigurationen auf ihrer Website. - APT-Fehlermeldungen prüfen
Fallsapt update
fehlschlägt, gibt es oft eine Meldung, die dir den fehlenden Schlüssel nennt. - Manuell über die Schlüsselserver suchen
Falls der Schlüssel öffentlich verfügbar ist, könnt ihr ihn mit folgendem Befehl abrufen:gpg --keyserver keyserver.ubuntu.com --recv-keys <Schlüssel-ID>
Danach könnt ihr ihn in das Keyring-Verzeichnis verschieben:gpg --export <Schlüssel-ID> | sudo tee /usr/share/keyrings/<repo>-archive-keyring.gpg > /dev/null
- APT-Quellen selbst inspizieren
Falls ihr bereits Pakete aus einem Repository installiert habt, könnte sich der passende Schlüssel in einer.gpg
-Datei befinden:ls /usr/share/keyrings/
Falls ihr den passenden Schlüssel nicht findet, hilft oft eine Suche mit einer Suchmaschine eurer Wahl mit "GPG key for <Repository-Name>"
.
Fazit
Diese Änderung ist Teil einer Sicherheitsverbesserung in Debian, um die globale APT-Schlüsselverwaltung abzuschaffen und stattdessen Repository-spezifische Signaturen zu erzwingen. Durch diese Schritte stellt ihr sicher, dass du weiterhin Updates von packages.sury.org
und anderen Quellen ohne Probleme erhaltet. Weitere Hilfen um dass Linux System korrekt zu updaten, findet ihr hier.
Quellen:
https://wiki.debian.org/DebianRepository/UseThirdParty#Sources.list_entry