Debian: Repositories aus dritter Hand

Photo by FLY:D on Unsplash

Wer in Debian aktuell ein Repository aus dritter Hand in die Quellenliste eintragen will, sieht sich oft mit einem Dilemma konfrontiert. Das Projekt, dessen Repo integriert werden soll, schlägt oft vor, den OpenPGP-Schlüssel, der die Authentizität des Repos bescheinigt, per apt-key zu importieren. Dieser Methode wird aber, wie ich bereits dargelegt habe, nicht mehr vertraut und wird ab Mai 2022 weder in Debian Unstable noch in Ubuntu funktionieren. Bereits seit einiger Zeit löst dies eine Warnung aus:

Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8))

Fehleranfällig

Das Debian-Wiki schlägt anstatt /etc/trusted.gpg.d alternativ /usr/share/keyrings vor. Da OpenPGP-Keys von Repositories aus dritter Hand in der Regel mit der Methode ASCII-Armor versehen sind, soll diese Verpackung vorzugsweise bereits während des Downloads entfernt werde. In Befehlsform sieht das beispielsweise auf der Webseite für den Signal-Messenger, die bereits angepasst wurde, dann so aus:

wget -O- https://updates.signal.org/desktop/apt/keys.asc | gpg --dearmor | sudo tee /usr/share/keyrings/signal-archive-keyring.gpg

Dann muss noch der Eintrag für die Quellenliste erstellt werden:

deb [signed-by=/usr/share/keyrings/signal-archive-keyring.gpg] https://updates.signal.org/debian/ stable main

Nicht sehr anwenderfreundlich, dafür aber fehleranfällig. Debian- und Ubuntu-Entwickler Andreas Klose hat in einem Blogeintrag jetzt unter anderem eine Idee skizziert, die bisher nur als Merge-Request existiert. Die Hauptrolle spielt dabei DEB822, ein Format für Quellenangaben, das mir durch den Blogeintrag erstmals unterkam. Dabei handelt es sich um Blöcke in der Quellenliste, die ein Repository beschreiben und gleich den öffentlichen Schlüssel enthalten. Sie enden nicht wie üblich in .list, sondern haben.sources als Endung. Ein solcher Eintrag könnte künftig so aussehen:

Types: deb
URIs: https://updates.signal.org/desktop/apt
Suites: stable
Components: main
Signed-By:
 -----BEGIN PGP PUBLIC KEY BLOCK-----
 mQINBFjlSicBEACgho//0EzxuvuCn01LwFqGAgwPKcSSl4L+AWws5/YbsZZvmTBk
ggIiVOCIMh+d3cmGu5W3ydaeUbWbFGNsxO44EB5YBZcuLa5EzRKbNPVaOXKXmhp+
w0mEbkoKbF+3mz3lifwBnzcBpukyJDgcJSq8cXfq5JsDPR1KAL6ph/kwKeiDNg+8
oFgqfboukK56yPTYc9iM8hkTFdx9L6JCJaZGaDMfihoQm2caKAmqc+TlpgtKbBL0
...
 -----END PGP PUBLIC KEY BLOCK-----

Demnächst vielleicht in APT 2.4 verfügbar

Wenn dann die Anbieter von Repos aus dritter Hand diese Methode aufgreifen, ist das Einbinden eines solchen Archivs mit dem Einfügen des Eintrags im DEB822-Formats in /etc/apt/sources.list.d/ erledigt. Ein Befehl wie apt add-source könnte das in einem Rutsch erledigen. Das neue Quellenformat wird, wenn Kloses Merge-Request akzeptiert wird, mit Apt 2.3.x oder 2.4 verfügbar sein. Zudem lernen wir aus Kloses Blog, dass ein Ersatz für OpenPGP auf der Basis von Ed25519 in Arbeit ist, der in kürzeren und sichereren Schlüsseln resultiert und derzeit auf den Namen aptsign hört.

3.8 6 votes
Article Rating

Verwandte Themen

3.8 6 votes
Article Rating
Abonnieren
Benachrichtige mich bei
4 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments