Как работать вокруг заблокированного исходящего hkp порта на способные ключи

Я использую Ubuntu 9.10 и потребность добавить некоторые способные репозитории. К сожалению, я получаю сообщения как это при выполнении sudo apt-get update:

W: GPG error: http://ppa.launchpad.net karmic Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5A9BF3BB4E5E17B5
W: GPG error: http://ppa.launchpad.net karmic Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 1DABDBB4CEC06767

Так, я должен установить ключи для этих репозиториев. Под 9,10 у нас теперь есть опция сделать это:

sudo add-apt-repository ppa:nvidia-vdpau/ppa

См. эту статью справки Ubuntu для деталей.

Здорово, за исключением того, что я выполняю это на рабочей станции позади брандмауэра который исходящие соединения блоков с в значительной степени всеми портами кроме требуемых секретарями, запускающими Windows и IE.

Рассматриваемый порт здесь является hkp сервисом, порт 11371.

Кажется, существуют способы вручную загрузить ключи и установить их на брелоке для ключей Кв. Может даже быть способ использовать add-apt-repository или wget или что-то для загрузки ключа с альтернативного сервера, делающего это доступный на порте 80.

Однако я еще не нашел краткий набор шагов для того, чтобы сделать так. То, что я ищу:

  1. Как найти открытый ключ для способного пакета (рекомендации для ресурсов, которые имеют их и/или подсказки для поиска. Поиск ключевого хеша не кажется всем этим эффективным до сих пор.)
  2. Как получить ключ (он может быть сделан автоматически с помощью gpg или add-apt-repository?)
  3. Как добавить ключ к брелоку для ключей Кв.

Заранее спасибо.

35
задан 03.11.2009, 12:35

6 ответов

Вот одно обходное решение, которое я использовал:

Я вошел в систему сервер Linux в свободном мире вне нашего корпоративного брандмауэра и сделал это:

gpg --keyserver keyserver.ubuntu.com --recv 1DABDBB4CEC06767 && gpg --export --armor 1DABDBB4CEC06767

Затем на моей рабочей станции, я выполнил это и вставил вывод от вышеупомянутой команды (открытый ключ) в stdin, сопровождаемый управлением-D:

sudo apt-key add -

Затем я смог работать sudo apt-get update без проблем.

Я все еще думаю, что должен быть лучший путь, идеально что-то, чего я мог написать сценарий.

13
ответ дан 07.12.2019, 08:59

У меня есть другое обходное решение здесь, которое могло бы быть удобным, если Вы не можете найти другой сервер Linux вне своей сети как прокси. Просто пошлите электронное письмо "pgp-public-keys@pgp.mit.edu" как предмет, поскольку "получают 0x1DABDBB4CEC06767". Но Вы, вероятно, все еще не можете записать простой сценарий для автоматизации этого.

8
ответ дан 07.12.2019, 08:59

Вы могли перейти к веб-сайту keyserver, например, Поиску http://wwwkeys.eu.pgp.net/ ключа (необходимо добавить 0x к шестнадцатеричной подписи), т.е. 0x1DABDBB4CEC06767.

Нажмите на ссылку, Вы, надо надеяться, получите и вставите текст в файл на машине, т.е.

cat > <filename>

[PASTE]

[Ctrl-C]

Затем

apt-key add <filename>

Это хорошо работало для меня; это появляется мои блоки прокси работы много "нестандартных" портов.

5
ответ дан 07.12.2019, 08:59
sudo apt-key adv --keyserver keyserver.ubuntu.com --keyserver-options http-proxy=http://proxy:port --recv-keys KEYID
19
ответ дан 07.12.2019, 08:59

Я нашел аккуратный способ сделать его в единственной команде через порт 80, который всегда открыт для www трафика.

http://gurrier.wordpress.com/2010/10/02/downlolading-repo-keys-from-behind-a-corporate-firewall/

4
ответ дан 07.12.2019, 08:59

Это было зафиксировано в предстоящей Аккуратной версии Ubuntu: https://launchpad.net/ubuntu/natty / + source/software-properties/0.78.1

Те, которые используют более старую версию, должны отредактировать ppa.py:

sudo gedit /usr/lib/python2.6/dist-packages/softwareproperties/ppa.py

Где это говорит:

keyserver.ubuntu.com

изменение в:

hkp://keyserver.ubuntu.com:80

Сохраните, выйдите, затем Вы, надо надеяться, хороши для движения.

38
ответ дан 07.12.2019, 08:59

Я просто использую ssh для передачи порта внешнему хосту, затем выполненному apt-add-repo команда.

ssh -fqTnN -D 11371 <user@host>
1
ответ дан 07.12.2019, 08:59

Теги

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