it-roy-ru.com

Добавление apt-key в Debian Stretch: не найдены действительные данные OpenPGP

Я пытаюсь следовать указаниям инструкция по установке Debian на сайте Docker. К сожалению, добавить ключ GPG для меня не получается:

$ curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
gpg: WARNING: nothing exported
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

Я пытался скачать ключ и добавить его из локальной файловой системы, но эффект тот же:

$ apt-key add docker.gpg 
gpg: WARNING: nothing exported
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

То же самое происходит с другими ключами, например VirtualBox:

$ apt-key add Oracle_vbox_2016.asc 
gpg: WARNING: nothing exported
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

Клавиши выглядят хорошо:

$ cat docker.gpg 

-----BEGIN PGP PUBLIC KEY BLOCK-----

mQINBFit2ioBEADhWpZ8/wvZ6hUTiXOwQHXMAlaFHcPH9hAtr4F1y2+OYdbtMuth
lqqwp028AqyY+PRfVMtSYMbjuQuu5byyKR01BbqYhuS3jtqQmljZ/bJvXqnmiVXh
[...]
jCxcpDzNmXpWQHEtHU7649OXHP7UeNST1mCUCH5qdank0V1iejF6/CfTFU4MfcrG
YT90qFF93M3v01BbxP+EIY2/9tiIPbrd
=0YYhg
-----END PGP PUBLIC KEY BLOCK-----

$ shasum docker.gpg 
f5b5bd1487cefc0c53c947e11ca202e86b33dbad  docker.gpg

$ gpg --list-packets docker.gpg 
# off=0 ctb=99 tag=6 hlen=3 plen=525
:public key packet:
    version 4, algo 1, created 1487788586, expires 0
    pkey[0]: [4096 bits]
    pkey[1]: [17 bits]
    keyid: 8D81803C0EBFCD88
# off=528 ctb=b4 tag=13 hlen=2 plen=43
:user ID packet: "Docker Release (CE deb) <[email protected]>"
# off=573 ctb=89 tag=2 hlen=3 plen=567
:signature packet: algo 1, keyid 8D81803C0EBFCD88
    version 4, created 1487792064, md5len 0, sigclass 0x13
    digest algo 10, begin of digest b2 c9
    hashed subpkt 2 len 4 (sig created 2017-02-22)
    hashed subpkt 27 len 1 (key flags: 2F)
    hashed subpkt 11 len 4 (pref-sym-algos: 9 8 7 3)
    hashed subpkt 21 len 4 (pref-hash-algos: 10 9 8 11)
    hashed subpkt 22 len 4 (pref-Zip-algos: 2 3 1 0)
    hashed subpkt 30 len 1 (features: 01)
    hashed subpkt 23 len 1 (keyserver preferences: 80)
    subpkt 16 len 8 (issuer key ID 8D81803C0EBFCD88)
    data: [4094 bits]
# off=1143 ctb=b9 tag=14 hlen=3 plen=525
:public sub key packet:
    version 4, algo 1, created 1487788586, expires 0
    pkey[0]: [4096 bits]
    pkey[1]: [17 bits]
    keyid: 7EA0A9C3F273FCD8
# off=1671 ctb=89 tag=2 hlen=3 plen=1086
:signature packet: algo 1, keyid 8D81803C0EBFCD88
    version 4, created 1487788586, md5len 0, sigclass 0x18
    digest algo 8, begin of digest f2 b8
    hashed subpkt 2 len 4 (sig created 2017-02-22)
    hashed subpkt 27 len 1 (key flags: 02)
    subpkt 16 len 8 (issuer key ID 8D81803C0EBFCD88)
    subpkt 32 len 540 (signature: v4, class 0x19, algo 1, digest algo 8)
    data: [4095 bits]

Я делаю что-то неправильно? Какие шаги я должен предпринять, чтобы устранить его дальше?

Я на Debian Stretch. У меня нет брандмауэра. Я пробовал это в нескольких сетях.

5
Tad Lispy

Простое удаление /etc/apt/trust.gpg решает проблему. Это не вредно. все ключи Debian хранятся в /etc/apt/trust.gpg.d .

Этот trusted.gpg файл создается software-properties-gtk ( для хранения других ключей репо, я думаю), и он не подходит apt в Debian Stretch.

Ссылка: https://readlist.com/lists/lists.debian.org/debian-user/77/388463.html

7
peacerebel

Мой ответ слишком поздно, но, поскольку у меня возникла та же проблема, и мне, наконец, удалось ее решить, вот решение.

Симптомы: мой apt-get всегда отказывался обновляться, потому что ключи не могли быть проверены. Apt-key всегда отказывался добавлять новые ключи (говоря, что при чтении ключа из gpg ключа не было), поэтому я застрял.

На самом деле это был файл /etc/apt/trusted.gpg, который был поврежден. Сделав резервную копию этого файла, я повторно импортировал в gpg ключи подписи Debian: 8B48AD6246925553 и т.д. (См. https://ftp-master.debian.org/keys.html ): gpg --keyserver keyring.debian.org --recv-keys 8B48AD6246925553

Затем удалил файл "trusted.gpg", и я использовал gpg для экспорта ключей в /etc/apt/trusted.gpg: gpg --export 8B48AD646925553 >>rust.gpg

Сделайте это для каждого ключа, и apt-get снова работает !!

Mathias

1
mathias

Я использовал идею Peacerebels (выше)

затем (для запуска свежих и резервного копирования оригиналов - на всякий случай) я переместил все из /etc/apt/trusted.gpg.d к папке, которую я назвал "отключенной", примерно так:

[email protected]****:/etc/apt/trusted.gpg.d mkdir disabled
[email protected]****:/etc/apt/trusted.gpg.d mv debian-archive* disabled

Затем поместите все команды в ряд. Кажется, ошибка OpenPGP и общее количество обработанных = 0 и gpg WARNING: nothing exported - >> ничего не значат в этом сценарии

[email protected]****:/etc/apt# gpg --keyserver keyring.debian.org --recv-keys EF0F382A1A7B6500 | gpg --export EF0F382A1A7B6500  >> trusted.gpg
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

[email protected]****:/etc/apt# gpg --keyserver keyring.debian.org --recv-keys 7638D0442B90D010 | gpg --export 7638D0442B90D010 >> trusted.gpg
gpg: WARNING: nothing exported

gpg: no valid OpenPGP data found.

gpg: всего обработано: 0

[email protected]****:/etc/apt# gpg --keyserver keyring.debian.org --recv-keys 8B48AD6246925553 | gpg --export 8B48AD6246925553 >> trusted.gpg
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

[email protected]****:/etc/apt# gpg --update-trustdb
gpg: no ultimately trusted keys found

(Я не знаю, требуется ли gpg --update-trustdb, но я так и сделал. Результаты могут отличаться)

[email protected]****:/etc/apt# apt-get update
Ign:1 https://mirror.****.****.***/debian stretch InRelease
Hit:2 https://mirror.****.****.***/debian stretch Release

Я надеюсь, что это помогает кому-то. После выполнения 2 установок в течение 2 ночей возникает проблема с ключами, если на этапе установки вы решили не использовать механизм онлайн-хранилища/обновления.

0
Alex