Debian. Как я могу безопасно получить debian-archive-keyring, чтобы я мог выполнить обновление apt-get? NO_PUBKEY


16

У меня есть улов 22, пытаясь:

   # apt-get update
   [... good lines omitted]
   W: GPG error: http://backports.debian.org lenny-backports Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AED4B06F473041FA
   W: GPG error: http://http.us.debian.org stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AED4B06F473041FA
   W: GPG error: http://ftp.us.debian.org lenny Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY AED4B06F473041FA

На http://wiki.debian.org/SecureApt#Other_problems он отмечает проблему NO_PUBKEY "означает, что архив начал подписываться новым ключом, о котором ваша система не знает ... и как только система будет загружена, новый ключ (путем обновления пакета debian-archive-keyring) предупреждение исчезнет "

ОК, но извращенно:

   apt-get install debian-archive-keyring 

дает мне:

   WARNING: The following packages cannot be authenticated!
       debian-archive-keyring

и решение для этого состоит в том, чтобы сделать обновление apt-get

В ведре дырка, дорогая Лиза.

Кто-нибудь может разорвать цикл для меня?

-

Примечание: мой /etc/apt/sources.list - это:

    deb http://ftp.us.debian.org/debian/ lenny main contrib non-free
    deb http://http.us.debian.org/debian stable main contrib non-free
    deb http://security.debian.org lenny/updates main contrib non-free
    deb http://backports.debian.org/debian-backports lenny-backports main contrib non-free

1
Если вы хотите придерживаться Ленни, то вы должны заменить stableс lennyна http.us.debian.org. Ваш текущий источник.лист, вероятно, приведет к поломке системы. Если вы хотите перейти на сжатие, вы должны заменить все stable/lennyссылки и использовать squeeze.
— Zoredache

Ответы:


13

Кто-нибудь может разорвать цикл для меня?

Вы просто испытываете стандартную проблему начальной загрузки для криптографии с открытым ключом .

Есть много мест, где вы можете скачать открытые ключи для различных архивов, но часто они не предоставляются через HTTPS, и любые файлы контрольных сумм доставляются из одного места.

Эта вики-ссылка, которую вы предоставили, ссылается на https://ftp-master.debian.org/keys.html, которая содержит копию ключей, которые вы можете скачать через SSL. Проблема, конечно, заключается в том, что сертификат для ftp-master.debian.org подписан ca.debian.org, который не распространяется с большинством веб-браузеров.

Вам просто нужно найти способ получить копию debian-archive-keyring или текущий ключ от системы, которой вы доверяете, и установить ее на свою систему. Если вы действительно параноик, вам, возможно, придется взять копию архива, и попросить кого-то другого взять копию с другого зеркала на другом компьютере в другой сети. Затем сравните контрольные суммы.

Если вы не слишком параноик или в среде с высоким уровнем безопасности, просто дайте apt-get install debian-archive-keyringустановить и проигнорируйте предупреждение.

Чтобы настроить MITM между вами и каким-то случайным зеркалом http.us.debian.org, потребовалось бы много усилий. Как только они это сделают, им придется создать свой собственный пакет debian-archive-keyring, включая их злой ключ в дополнение к стандартным ключам. Тогда им придется пересобрать некоторые пакеты, чтобы заставить вас установить что-то плохое в вашу систему. Прилагаемые усилия не будут тривиальными.

Как правило, Debian неплохо работает, добавляя ключи, которые будут использоваться для подписи пакетов в будущем в пакет debian-archive-keyring. Это один пакет, который вы действительно хотите обновлять. Таким образом, вы будете вводить ключи, установленные до того, как они будут использованы для подписи, и у вас не будет этой проблемы в будущем.


Да, Chrome дал мне серьезное предупреждение о том, что подписавшему сертификат SSL не доверяют. Вздох.
— Дэвид Баллок

1
PS.FYI. Текущий отпечаток, который у меня есть для ключа подписи сжатия, 0E4E DE2C 7F3E 1FC0 D033 800E 6448 1591 B983 21F9и Ленни 7F5A 4445 4C72 4A65 CBCD 4FB1 4D27 0D06 F425 84E6.
— Zoredache

Что ж, мои гипотетические враги влиятельны, поэтому нет ничего страшного в том, что SSL-сертификат для ftp-master.debian.org не подписан ни одним из скомпрометированных ЦС, которым мой браузер доверяет из коробки. Итак, я получил плагин Moxie Marlinspike Convergence для Firefox. По крайней мере, я так думаю - он без проблем подписал надстройку, которую я установил, и она сломала Firefox, когда я его установил. Я понятия не имею, являются ли нотариальные серверы по умолчанию надежными, но они, похоже, согласны с тем, что ключевой веб-сайт - тот же, на который я смотрю Но, вероятно, мои враги уже скомпрометировали Debian. Так, черт возьми, я пойду с этим.
— Дэвид Баллок

Спасибо за отпечаток пальца. Так или иначе, я доверяю тому, кто отдает свое время, чтобы помочь незнакомцу.
— Дэвид Баллок

1
Вы можете получить их из базы данных mit pgp key, если вам не нравится извлекать их из архивов. http://pgp.mit.edu:11371/pks/lookup?search=Wheezy+Stable+Release+Key&op=index
— Zoredache

10

Ваша проблема в том, что вы также не установили debian-keyring. Просто запустите следующее:

apt-get install debian-keyring
apt-get install debian-archive-keyring

Вот и все.


Я могу подтвердить , что это работает
— aexl

debian-keyringне имеет ничего общего с установкой пакетов.
— x-

5

Debian - Apt-get: NO_PUBKEY / ошибка GPG

На компьютерах с операционной системой Debian, использующей ядро ​​Linux, сообщения об ошибках могут появляться как «NO_PUBKEY». Это происходит при использовании инструмента командной строки Apt-Get, и эта ошибка связана с функцией обновления инструмента. Новая функция в инструменте управления пакетами Apt-Get гарантирует подлинность сервера перед обновлением ОС Debian. Вот почему появляется ошибка «NO_PUBKEY». Эту проблему можно решить, введя соответствующие команды.

Просто введите следующие команды, стараясь заменить приведенный ниже номер на тот ключ, который отображался в сообщении об ошибке:

gpg --keyserver pgpkeys.mit.edu --recv-key  AED4B06F473041FA      
gpg -a --export AED4B06F473041FA | sudo apt-key add -

Я экспериментировал над решением, и это сработало для меня. Решил вопрос.
— Чаминда Бандара

4

Две вещи:

  1. Ваш файл sources.list может быть неправильным; Вы уверены, что это правильные линии для этих репо?

  2. Вам нужно будет вручную найти файлы Release.gpg в этих репозиториях и обновить связку ключей:

wget -q http://backports.debian.org/debian-backports/dists/squeeze-backports/Release.gpg -O -|apt-key add -

Вы можете играть с огнем, смешивая Ленни со стабильным репо


Я не уверен насчет №1. Я следовал инструкциям на spinifex.com.au/plugs/dphowtos.html#debian, но строка «deb backports.org/debian lenny-backports main contrib non-free» приводила к ошибкам загрузки, поэтому слепо следовал backports-master.debian .org / Инструкции Я изменил его на "deb backports.debian.org/debian-backports squeeze-backports main". Теперь у меня есть это как "deb backports.debian.org/debian-backports lenny-backports основной вклад non-free" ... это лучше? (Я ненавижу играть с огнем). Все еще получите 'NO_PUBKEY' tho, так что сделайте ваш # 2.
— Дэвид Баллок


1

Нужно не беспокоиться о том, чтобы надежно получить ключ к своей машине, а иметь возможность точно проверить путь доверия к ключу, как только он будет у вас на машине. Это означает, что вы хотите найти цепочку подписей, в которой ваш ключ gpg использовался для подписи чьего-либо ключа, который использовался для подписи чьего-либо ключа ... так, чтобы вы в конечном итоге нашли того, кто подписал ключ архива.

Это, очевидно, было бы утомительно, если бы вы попытались сделать это вручную, если вы находитесь в нескольких шагах от ключа. wotsap - это пакет, который поможет вам найти пути от вашего ключа до ключей людей, которые непосредственно подписали ключ архива.

Все это основано на том, что у вас есть ключ gpg и вы участвуете в подписывании ключей gpg, что абсолютно необходимо, если вы действительно хотите сделать это правильно.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.