Я использую 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.
Похоже, есть способы вручную загрузить ключи и установить их на связку ключей apt. Может даже быть способ использовать add-apt-repository или wget или что-то еще, чтобы загрузить ключ с альтернативного сервера, сделав его доступным через порт 80.
Тем не менее, я еще не нашел краткий набор шагов для этого. То, что я ищу, это:
- Как найти открытый ключ для apt-пакета (рекомендации для ресурсов, у которых они есть, и / или советы по поиску. Поиск ключевого хеша пока не кажется таким уж эффективным).
- Как получить ключ (это можно сделать автоматически с помощью gpg или add-apt-repository?)
- Как добавить ключ в связку ключей apt
Заранее спасибо.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys KEY_HASH
hkp://keyserver.ubuntu.com:80
работает и на 10.04.--keyserver hkp://keyserver.ubuntu.com:80
источник
Вот один из обходных путей, который я использовал:
Я вошел на сервер Linux в свободном мире за пределами нашего корпоративного брандмауэра и сделал это:
Затем на своей рабочей станции я запустил это и вставил вывод из вышеуказанной команды (открытый ключ) в стандартный ввод, а затем control-D:
Тогда я смог бежать
sudo apt-get update
без проблем.Я все еще думаю, что должен быть лучший способ, в идеале, то, что я мог бы написать.
источник
У меня есть другой обходной путь, который может быть полезен, если вы не можете найти другой сервер Linux вне вашей сети в качестве прокси. Просто отправьте электронное письмо по адресу "pgp-public-keys@pgp.mit.edu" как "get 0x1DABDBB4CEC06767". Но вы, вероятно, все еще не можете написать простой скрипт для автоматизации этого.
источник
Вы можете перейти на веб-сайт сервера ключей, например, http://wwwkeys.eu.pgp.net/ Поиск ключевой подписи (необходимо добавить 0x к шестнадцатеричной подписи), то есть 0x1DABDBB4CEC06767.
Нажмите на ссылку, которую вы, вероятно, получите, и вставьте текст в файл на компьютере, т.е.
затем
Это работало хорошо для меня; похоже мой рабочий прокси блокирует много "нестандартных" портов.
источник
Я нашел аккуратный способ сделать это с помощью одной команды через порт 80, который всегда открыт для трафика www.
http://gurrier.wordpress.com/2010/10/02/downlolading-repo-keys-from-behind-a-corporate-firewall/
источник
Простое решение:
Защищенный https (исходящий 443) не будет заблокирован брандмауэром.
источник
Я просто использую ssh для перенаправления порта на внешний хост, а затем запускаю
apt-add-repo
команду.источник
У меня была такая же проблема с gpg. Обходной путь с добавлением порта к имени сервера работал путем редактирования моего
~/.gnupg/gpg.conf
файла. Тем не менее, я все еще собираюсь попросить нашего системного администратора открыть исходящий порт 11371, поэтому мне не нужно беспокоиться об этом снова.источник