Назад | Перейти на главную страницу

Метко подписанный GPG репозиторий не работает должным образом

Мы размещаем некоторые из наших собственных программных пакетов в виде дебетов в собственном репозитории. В целях создания прототипов мы использовали «без аутентификации». Теперь мы пытаемся делать вещи более правильно и делать все это GPG. Я пробовал только для пробного запуска следующее:

1) Сделайте ключ с gpg-gen

~$ gpg --list-keys
/home/me/.gnupg/pubring.gpg
--------------------------------
pub   4096R/BBBBB39F 2017-03-09
uid                  Someone Somebody <someone@somewhere.com>
sub   4096R/129E9336 2017-03-09

(что, кстати, там есть SUB?)

2) aptly publish... Это запрашивает мою парольную фразу для указанного ключа, поэтому в этот момент он должен что-то делать с ключом.

3) экспортировать ключ с помощью gpg —export —armor > somefile.pubkey

4) скопируйте файл file.pubkey на тестовую машину

5) run (беги) sudo apt-key add somefile.pubkey

sudo apt-key list
/etc/apt/trusted.gpg
--------------------
pub   rsa4096 2017-03-09 [SC]
     E51B E216 4658 FB8B 6E42  8A09 F9BC EF4C BBBB B39F
uid           [ unknown] Someone Somebody <someone@somewhere.com>
sub   rsa4096 2017-03-09 [E]
…
…
…

Итак, похоже, он попал туда. Подчиненная вещь теперь отображается по-другому?

6) И наконец, sudo apt-get update:

~$ sudo apt-get update
Hit:1 http://ftp.us.debian.org/debian stretch InRelease
Hit:2 http://ftp.us.debian.org/debian stretch-updates InRelease     
Hit:3 http://security.debian.org stretch/updates InRelease          
Get:4 http://our.aptly.repo stretch InRelease [2317 B]
Ign:4 http://our.aptly.repo stretch InRelease            
Fetched 2317 B in 9s (256 B/s)                                                 
Reading package lists... Done
W: GPG error: http://our.aptly.repo stretch InRelease: The following signatures were invalid: E51BE2164658FB8B6E428A09F9BCEF4CBBBBB39F
W: The repository 'http://our.aptly.repo stretch InRelease' is not signed.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Я не понимаю, что здесь происходит. Правонарушение вроде в том, что что-то не подписано? Какой шаг я пропустил?

Последняя установка Debian stretch больше не принимает подписи SHA1. Однако Aptly использовал SHA1 до версии 0.9.7 (соответствующий PR, обратите внимание, что он также был перенесен на v0.9.6.1). Я подозреваю, что используемая вами версия Aptly старше этой. Если да, рассмотрите возможность добавления их репо в ваш sources.list.