Categorías
Software

Notas sobre uso de clave GPG y apt-key

Como he estado contando en entradas anteriores ya tengo la clave GPG para firmar los paquetes de uno de mis repositorios Debian.

Para usarlo, además de importar directamente la clave pública del repositorio, puedo recuperarala directamente del servidor (o servidores) de claves donde la envié:

# gpg --keyserver keys.openpgp.org --search-keys root@astillas.net
...
(1)     Repositorio Debian de astillas.net <root@astillas.net>
          4096 bit RSA key 774B65041866CEA4, creado: 2019-12-19
Keys 1-1 of 1 for "root@astillas.net".  Introduzca número(s), O)tro, o F)in > f
root@esferas:~# apt-key adv --keyserver keys.openpgp.org --recv-keys 774B65041866CEA4
Executing: /tmp/apt-key-gpghome.bn99P707m2/gpg.1.sh --keyserver keys.openpgp.org --recv-keys 774B65041866CEA4
gpg: clave 774B65041866CEA4: clave pública "Repositorio Debian de astillas.net <root@astillas.net>" importada
gpg: Cantidad total procesada: 1
gpg:               importadas: 1
root@esferas:~# apt update
Obj:2 http://security.debian.org buster/updates InRelease
Obj:1 http://cdn-fastly.deb.debian.org/debian buster InRelease
Des:3 https://debian.astillas.net debian InRelease [3.895 B]
Des:4 https://debian.astillas.net debian/main amd64 Packages [1.339 B]
Descargados 5.234 B en 1s (10,3 kB/s)
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Todos los paquetes están actualizados.
root@esferas:~# 

Por lo visto es necesario conocer el identificador de la clave porque por lo general no se permite recuperar una clave sólo con el correo electrónico. Es una medida de seguridad mínima que apenas repercute, más sabiendo que ese identificador es siempre el mismo y se puede hacer público en la página del repositorio.

Pues ahora que esta parte está controlada voy a ver si consigo gestionar mejor el envío de paquetes Debian a este tipo de repositorios. Hay una idea que siempre me ha gustado mucho, que la vi por primera vez de la mano de Joey Hess y su programa Ikiwiki, y es la de emplear el mecanismo de acciones (hooks) de git para hacer algo cuando se completa una operación. Algo así quiero tener, y que incluya la página web pues también. Ya que estamos …