¿Cómo agregar una clave GPG al llavero de apt sources?

68

La página de Ubuntu Doc dice esto:

Es recomendable que agregue la clave Opera GPG.

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

¿Dónde agrego eso?

Quiero seguir el consejo, pero no sé a qué parte del centro de software agregarle claves gpg.

bruce
fuente
3
Creo que es un comando de una línea para ingresar a la terminal
Mateo
1
.msi en Ubuntu se llama .deb.
Alvar
44
Como nota al margen, la adición de claves que obtiene a través de no HTTPS rompe cualquier seguridad que agreguen los paquetes de firma. Siempre que sea posible, debe descargar las claves a través de un canal seguro (https: //).

Respuestas:

86

Este es un comando de una línea para ingresar en la terminal. Consulte ¿Qué es un terminal y cómo lo abro y lo uso?

Para usarlo, pegaría todo el comando en la terminal (recuerde usar https):

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

Pero, por supuesto, es desalentador simplemente copiar y pegar comandos sin saber lo que están haciendo, y no tener instrucciones sobre cómo deshacer sus acciones, así que aquí hay un desglose básico de los comandos:

  • wgetdescarga algo de un servidor. Consulte el manual de wget para Ubuntu 16.04 .
  • | es una línea de canalización, que toma la salida de un comando y la ejecuta en la entrada de otro
  • apt-key add agrega una clave de paquete

Básicamente, descarga la clave y luego la agrega en un comando.

Probé el comando y debería funcionar.


Ahora para verificar que funcionó, ejecute este comando (a partir de esta respuesta ):

apt-key list

Esto mostrará una lista de las claves agregadas y la clave de Opera debe aparecer en la parte inferior de esta manera:

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

La respuesta vinculada también muestra que puede eliminar la clave si es necesario, usando:

sudo apt-key del 30C18A2B

con 30C18A2Bser el key-id de la lista.


Después de ejecutar ese comando y configurar las fuentes exactamente como en su captura de pantalla , haga lo siguiente:

sudo apt-get update
sudo apt-get install opera

(tenga en cuenta que hay algunas advertencias aleatorias, pero nada que afecte las operaciones del centro de instalación o software)

Y para la eliminación (por si acaso): ¿Cuál es la forma correcta de eliminar por completo una aplicación?


Entonces en resumen:

  • Agregar repositorio ingrese la descripción de la imagen aquí
  • Añadir clave con apt-key
  • Instalar en terminal con apt-get
  • Buscar en el tablero ingrese la descripción de la imagen aquí
Mateo
fuente
44
"apt-key adv" le permite a uno descargar la clave desde un servidor público de claves.
Jeremías
Después de agregar la clave con apt-key add, el archivo .key (en este caso, "archive.key") se puede eliminar sin consecuencia, ¿verdad? La clave (la información, no el archivo) ya se ha agregado a una lista en alguna parte, por lo que el archivo ya no debería ser necesario.
Cerran
2
@Cerran, correcto. APT guarda las llaves en otro lugar ( /etc/apt/trusted.gpg.d/y /var/lib/apt/keyrings/por ejemplo)
Alexis Wilke
Si obtiene un error SSL con wget, puede usar curl en su lugar:curl -L https://deb.opera.com/archive.key | sudo apt-key add -
rubo77
25

Si agrega manualmente una clave de un PPA, use

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

Reemplazando el 00000000con la segunda parte de la clave informada en el sitio web de PPA que desea agregar.

Por ejemplo, si encuentra esta línea:

 4096R/7BF576066

Use solo la segunda parte (sin importar su tamaño), que en este ejemplo es 7BF576066

Paulo Coghi
fuente
son errores como gpg: keyserver receive failed: No keyserver availabley gpg: keyserver receive failed: Connection refusedcomunes?
iuridiniz
No, errores como estos no son comunes. Tal vez estás escribiendo la clave incorrecta.
Paulo Coghi
21

Las versiones más recientes de apt también admiten lo siguiente:

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

Este método también proporciona comentarios más detallados, por ejemplo:

gpg: key 7BD9BF62: public key "signing key <[email protected]>" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

Esto también tiene la ventaja adicional de eliminar la necesidad de dependencias adicionales como wget o curl.

Andrew Odri
fuente
1
apt-key adv no parece funcionar para https
danihodovic
55
@ dani-h Necesita gnupg-curlusar HTTPS si está usando GPG 1.x.
Tao Wang
apt-key adv --fetch-keyssolo obtendrá una clave de la URL, y si la URL contiene varias claves, úsela en su wget | apt-key addlugar.
Tao Wang
Parece que ya funciona con https (recién probado en Ubuntu 17.10)
user1182474
0

Otra forma en la que solo tiene una clave .asc, descarga la clave .asc y la agrega al llavero.

Por ejemplo -

curl -L https://packages.riot.im/debian/repo-key.asc | sudo apt-key add -
shirish
fuente