способная ошибка аутентификации на самоподписанном пакете

Я действительно создавал gpg ключ с помощью "gpg - ключ генерала", вот список:

> gpg --list-keys
/home/<user>/.gnupg/pubring.gpg
--------------------------------
pub   2048R/99EDE0B7 2013-02-05
uid                  Some Company
sub   2048R/97337D10 2013-02-05

Я экспортировал использование с открытым ключом:

> gpg --output key.pub --armor --export 99EDE0B7

Я подписал deb использование пакета:

> dpkg-sig --sign builder -k 99EDE0B7 mypackage.deb

Я могу проверить вход в систему тот же контроллер:

> dpkg-sig --verify mypackage.deb 
Processing mypackage.deb...
GOODSIG _gpgbuilder 31C631682D8C1DC833576A283C9A9AA799EDE0B7 1366790488

Я импортирую открытый ключ на другом контроллере:

> apt-key add key.pub
OK
> apt-key list
/etc/apt/trusted.gpg
--------------------
pub   2048R/99EDE0B7 2013-02-05
uid                  My Company
sub   2048R/97337D10 2013-02-05

Но когда я проверяю пакет на этом новом контроллере, подписание неизвестно:

> dpkg-sig --verify mypackage.deb 
Processing mypackage.deb...
UNKNOWNSIG _gpgbuilder 99EDE0B7

Я должен использовать "gpg - импорт" для фактической проверки пакета:

> gpg --import key.pub

Затем работы проверки:

> dpkg-sig --verify mypackage.deb 
Processing mypackage.deb...
GOODSIG _gpgbuilder 980CDF084EC87D4C003E020C4B324EFB85743C26 1366872932

Но при использовании склонный установить пакет я получаю ошибку аутентификации:

> apt-get install mypackage
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  mypackage
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/12.0 kB of archives.
After this operation, 0 B of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  mypackage
Install these packages without verification [y/N]? 

И я не могу выяснить почему :-(

Спасибо!

1
задан 25 April 2013 в 11:32

2 ответа

Думаю, я понял это сам. apt не проверяет аутентификацию на отдельных пакетах, а только на файлах Release.

0
ответ дан 25 April 2013 в 11:32

попробуйте следующее:

  1. извлеките содержимое файла deb, используя $ ar vx file.deb

  2. , проверьте файл _gpgbuilder и что файл данных имеет расширение .tar.gz

ЕСЛИ у него есть .tar.xz означает, что пакет был создан с использованием dpkg-deb в Ubuntu, который имеет тип сжатия по умолчанию xz (проверьте справочную страницу dpkg-deb по параметру compress-type / -Z)

dpkg-sig проверяет data.tar.gz (как если бы файл был создан с помощью gzip компрессионного типа - поведение по умолчанию в Debian ).

Небольшой взлом мог бы изменить скрипт Perl dpkg-sig, чтобы проверить, даже если файл данных имеет расширение .tar.xz

Надеюсь, это поможет. (Я разместил это на http://ubuntuforums.org/showthread.php?t=2175836 )

Редактировать: кто-то сделал хороший патч http: // osdir .com / ml / ubuntu-bugs / 2014-07 / msg09103.html :)

0
ответ дан 25 April 2013 в 11:32

Другие вопросы по тегам:

Похожие вопросы: