Inicio
» Cómo
»
Solucione los errores de firma de APT reparando la clave del repositorio.
Solucione los errores de firma de APT reparando la clave del repositorio.
Si APT informa «No se pudieron verificar las siguientes firmas», identifique el repositorio y el código de error específico en la misma salida, y luego repare la clave de firma de confianza o la entrada de origen de ese repositorio. Para un repositorio de terceros, obtenga su clave actual del editor del software y vincúlela a ese origen con Signed-By; no desactive las comprobaciones de firma ni agregue una clave desconocida globalmente.
Ejemplo de salida de apt update: un error missing-key nombra el repositorio afectado e incluye un identificador NO_PUBKEY.
1. Encuentra el repositorio y lee el error exacto.
Ejecuta una actualización para que puedas inspeccionar el mensaje completo:
sudo apt update
Busque la URL junto a Err:y un token como NO_PUBKEY, EXPKEYSIG, KEYEXPIRED, o BADSIG. La URL le indica qué fuente falló; el token especifica el motivo. APT verifica los metadatos del repositorio firmado antes de confiar en el índice de paquetes, por lo que una verificación de firma fallida es una señal de seguridad en lugar de una advertencia estética. Las instalaciones de Ubuntu ya incluyen claves para los archivos predeterminados de Ubuntu; la configuración manual de claves normalmente solo es necesaria para los repositorios agregados posteriormente.
Encuentra la definición de origen buscando el host mencionado en el error. Reemplaza el host de ejemplo con el de tu terminal:
Busque en el directorio fuente de APT el host exacto que informó la actualización fallida.
Ubuntu 24.04 y versiones posteriores usan archivos fuente deb822 con extensión predeterminada; las instalaciones más antiguas suelen tener archivos .sourcesde una sola línea . Verifique la URL del repositorio, el nombre en clave de la suite o Ubuntu, y cualquier entrada existente. Si la fuente apunta a una versión que el proveedor ya no admite, siga las instrucciones del proveedor para su versión de Ubuntu o desactive esa fuente. Una clave no puede corregir una ruta de repositorio obsoleta o incorrecta..listSigned-By
2. Reparar una llave de terceros que falte o esté girada.
Para ello NO_PUBKEY, primero confirme que el repositorio es uno que usted instaló intencionalmente. Abra la documentación de instalación actual del editor y obtenga la URL de la clave de firma y la huella digital completa de esa fuente. Compare la huella digital con una referencia del proveedor publicada por separado, si está disponible. No obtenga una clave de un servidor de claves aleatorio solo porque su ID corto coincida con el error.
Para un proveedor que publique una clave protegida con ASCII .asc, instálela como un llavero APT dedicado. Reemplace la URL de ejemplo con la URL exacta documentada por ese editor:
El .gpgarchivo debe ser legible para el usuario de descarga sin privilegios de APT. Si el editor proporciona un .gpgllavero binario, siga sus instrucciones en lugar de descomprimirlo nuevamente. Ubuntu recomienda que las claves de terceros se almacenen en un llavero independiente y que dicho repositorio haga referencia a ellas, limitando así qué fuente puede usar la clave.
Una configuración Signed-By específica de la fuente mantiene el repositorio vinculado a su propio llavero.
Edite la definición de origen existente en lugar de agregar una entrada duplicada. Para un archivo deb822 como /etc/apt/sources.list.d/vendor.sources, utilice los valores reales de URI, suite y componente del proveedor, y luego agregue la ruta del llavero:
Types: deb
URIs: https://packages.example.org/ubuntu
Suites: YOUR_UBUNTU_CODENAME
Components: main
Signed-By: /etc/apt/keyrings/vendor-archive.gpg
Si la entrada existente está en un archivo de una sola línea .list, la sintaxis equivalente es deb [signed-by=/etc/apt/keyrings/vendor-archive.gpg] https://packages.example.org/ubuntu YOUR_UBUNTU_CODENAME main. Conservar el conjunto de documentación y los componentes del repositorio; los valores de ejemplo son marcadores de posición. Evitar apt-key add: está obsoleto y una clave de confianza global puede otorgar a una clave de terceros una autoridad mayor de la prevista.
Si el mensaje indica EXPKEYSIGo KEYEXPIRED, es posible que la clave de firma haya caducado o que el proveedor la haya cambiado. Descargue y verifique la clave de reemplazo siguiendo las instrucciones del proveedor y, a continuación, actualice el llavero de la fuente. No prorrogue la confianza de la clave antigua ignorando su fecha de caducidad.
3. Compruebe el reloj, el archivo de Ubuntu y los problemas con los espejos.
Si el repositorio es un archivo oficial de Ubuntu, no importe una clave de terceros. Compruebe que la hora de su sistema sea correcta con timedatectl statusy confirme que la fuente utiliza una URL de archivo de Ubuntu válida y el nombre en clave de su versión instalada. El ubuntu-keyringpaquete proporciona claves de firma de archivo de Ubuntu; si la gestión de paquetes todavía funciona a través de una fuente de Ubuntu de confianza, actualice ese paquete con:
sudo apt install --reinstall ubuntu-keyring
Un BADSIGmensaje indica que la firma no coincide con los metadatos recibidos por APT. Repetir la importación de claves suele ser una respuesta incorrecta. Compruebe si hay un reloj del sistema incorrecto, un espejo obsoleto o inconsistente, un proxy de caché o un problema de publicación en el repositorio; vuelva a intentarlo tras corregir la causa. Si solo falla una fuente de terceros y no la necesita, desactive su entrada específica .sourcesmientras .listcontacta con su responsable. Mantenga la verificación de seguridad activada.
4. Verificar la solución
Tras corregir el origen o el llavero, vuelva a ejecutar apt update y confirme que no queda ningún error de firma.
Ejecuta sudo apt updatede nuevo. La reparación se completa cuando se obtiene el repositorio afectado sin advertencia de firma y APT alcanza el estado Reading package lists... Done. Una actualización exitosa no certifica que un editor de terceros sea seguro; confirma que la firma de metadatos coincide con una clave que elegiste para confiar. Si la verificación sigue fallando, vuelve a comprobar la URL del repositorio, el nombre en clave, la huella digital de la clave, los permisos del llavero y el token de error exacto antes de realizar otro cambio.