Як додати ключ GPG до брелоку підходящих джерел?


67

На сторінці Ubuntu Doc сказано:

Доцільно додати ключ Opera GPG.

wget -qO - http://deb.opera.com/archive.key | sudo apt-key add -

Де я це додати?

Я хочу скористатися порадою, але не знаю, до якої частини програмного центру слід додати gpg-ключі.


3
Я вважаю, що це однорядкова команда для входу в термінал
Матео

1
.msi в Ubuntu називається .deb.
Алвар

4
Як бічна примітка, додавання ключів, які ви отримуєте через не-HTTPS, порушує будь-яку безпеку, яку додавали пакети для підписання. По можливості, слід завантажувати ключі через захищений канал (https: //).

Відповіді:


86

Це команда з одним рядком для введення в термінал. Див. Що таке термінал і як його відкрити та використовувати?

Щоб його використовувати, ви вставили всю команду в термінал (не забудьте використовувати https):

wget -qO - https://deb.opera.com/archive.key | sudo apt-key add -

Але звичайно, це непроста копіювання та вставлення команд, не знаючи, що вони роблять, і не має інструкцій, як скасувати їх дії, тому ось основна розбивка команд:

  • wgetзавантажує щось із сервера. Дивіться посібник з wget для Ubuntu 16.04 .
  • | - це трубопровід, який приймає вихід однієї команди і запускає її на вхід іншої
  • apt-key add додає ключ пакета

Таким чином, він в основному завантажує ключ, а потім додає його в одну команду.

Я перевірив команду, і вона повинна працювати.


Тепер, щоб переконатися, що він працював, запустіть цю команду (з цієї відповіді ):

apt-key list

Тут буде вказано додані клавіші, а ключ від Opera має бути вказаний внизу так:

pub   1024D/30C18A2B 2012-10-29 [expires: 2014-10-29]
uid                  Opera Software Archive Automatic Signing Key 2013 <packager@opera.com>
sub   4096g/C528FCA9 2012-10-29 [expires: 2014-10-29]

Зв'язана відповідь також показує, що ви можете видалити ключ, якщо потрібно, використовуючи:

sudo apt-key del 30C18A2B

з 30C18A2Bключовим ідентифікатором зі списку.


Виконавши цю команду та встановивши джерела точно так само, як у екрані , зробіть:

sudo apt-get update
sudo apt-get install opera

(зауважте, є кілька випадкових попереджень, але нічого, що впливає на операції встановлення або програмного центру)

А щодо видалення (про всяк випадок): Який правильний спосіб повністю видалити додаток?


Отже, підсумовуючи:

  • Додати сховище введіть тут опис зображення
  • Додати ключ за допомогою apt-key
  • Встановити в терміналі з apt-get
  • Шукати в тире введіть тут опис зображення

4
"apt-key adv" дозволяє завантажити ключ із відкритого сервера ключів.
єремія

Після додавання ключа за apt-key addдопомогою файлу .key (у цьому випадку "archive.key") можна видалити без наслідків, правда? Ключ (інформація, а не файл) вже десь доданий до списку, тому файл більше не потрібен.
Серран

2
@Cerran, правильно. APT зберігає ключі десь ще ( /etc/apt/trusted.gpg.d/і /var/lib/apt/keyrings/напр.)
Alexis Wilke

Якщо ви отримаєте SSL помилку з wget, ви можете використовувати curl замість:curl -L https://deb.opera.com/archive.key | sudo apt-key add -
rubo77

23

Якщо ви вручну додаєте ключ від PPA, використовуйте

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 00000000

Заміна 00000000другої частини ключа, повідомленого на веб-сайті УРП, яку ви хочете додати.

Наприклад, якщо ви знайдете цей рядок:

 4096R/7BF576066

Використовуйте лише другу частину (незалежно від її розміру), яка є в цьому прикладі 7BF576066


такі помилки як gpg: keyserver receive failed: No keyserver availableі gpg: keyserver receive failed: Connection refusedпоширені?
iuridiniz

Ні, помилки на кшталт цих зустрічаються нечасто. Можливо, ви пишете неправильний ключ.
Пауло Когі

19

Новіші версії apt також підтримують наступне:

apt-key adv --fetch-keys http://deb.opera.com/archive.key

Цей метод також забезпечує більш детальний зворотний зв'язок, наприклад:

gpg: key 7BD9BF62: public key "signing key <username@domain.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

Це також має додатковий бонус від усунення потреби в додаткових залежностях, таких як wget або curl.


1
adv-key adv, здається, не працює для https
danihodovic

5
@ dani-h Вам потрібно gnupg-curlвикористовувати HTTPS, якщо ви використовуєте GPG 1.x.
Дао Ван

apt-key adv --fetch-keysотримає лише один ключ з URL-адреси, і якщо URL-адреса містить кілька ключів, будь ласка, використовуйте wget | apt-key addзамість цього.
Дао Ван

Здається, вже працює з https (щойно перевірена на Ubuntu 17.10)
користувач1182474

0

Інший спосіб, коли у вас просто є ключ .asc, ви завантажуєте ключ .asc і додаєте його до брелоку.

Наприклад -

curl -L https://packages.riot.im/debian/repo-key.asc | sudo apt-key add -
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.