Al instalar 16.04 , se me pidió que apagara el " Arranque seguro " si quería instalar módulos / controladores de terceros .
No cumplí
Y cuando instalé manualmente los únicos controladores de terceros que uso ( bcmwl-kernel-source ), nuevamente se me pidió (durante la instalación del paquete) que apague el "Arranque seguro".
Usar bcmwl-kernel-source estuvo perfectamente bien con Secure Boot en 15.10 . Esto no parece estar relacionado con un error para mí.
Así que esto parece que Ubuntu se niega a firmar más los controladores / módulos de terceros para que funcione (??) con "Arranque seguro". ¿O parece considerar que los módulos de terceros son inseguros y rompen el "Arranque seguro", por lo tanto, informan que lo deshabiliten para que quede claro? Estoy en lo cierto?
fuente
Respuestas:
Esto no es un error, es una característica.
Como dice Anthony Wong, cuando instala un paquete DKMS está compilando el paquete usted mismo, por lo tanto, Canonical no puede firmar el módulo por usted.
Sin embargo, definitivamente puede usar el Arranque seguro, sin embargo, este es exactamente el caso de uso donde el Arranque seguro está tratando de protegerlo de usted mismo porque no puede saber si confía en un módulo o no.
De manera predeterminada , hay una clave de plataforma (PK) en su máquina UEFI, que es la autoridad de certificación en última instancia confiable para cargar el código en su procesador.
GRUB, o shim, u otros mecanismos de arranque pueden ser firmados digitalmente por un KEK en el que la CA raíz (PK) confía, y así su computadora puede, sin ninguna configuración, software de arranque como Ubuntu Live USB / DVD.
En Ubuntu 16.04, el núcleo está construido con CONFIG_MODULE_SIG_FORCE = 1, lo que significa que el núcleo hará que los módulos se firmen con una clave confiable en la plataforma. Tenga en cuenta que la plataforma UEFI por defecto contiene una PK sobre la que no tiene ningún control, y por lo tanto no puede firmar binarios con una clave reconocida por su propia máquina.
Algunas personas critican y despotrican contra eso, pero en realidad no hay mejor manera (desde el punto de vista de la seguridad) que ser usted mismo quien inscribe la nueva clave que desea.
Si su sistema de arranque usa shim, puede usar algo llamado base de datos de clave de propietario de máquina e inscribir su clave como MOK (puede hacerlo con mokutil). Si no lo hace, también puede inscribir su clave en la base de datos UEFI como clave de firma.
Después de inscribir su clave, puede firmar su paquete construido con DKMS con su MOK (debe haber un script perl en
/usr/src/kernels/$(uname -r)/scripts/sign-file
), y después de que esté firmado, puede cargarlo en el núcleo .De acuerdo, alguien debería hacer más instrucciones visuales sobre esto, y probablemente incluso hacer un asistente o un mejor estándar DKMS para permitir que las claves sean tomadas en consideración, pero esto es lo que tenemos a partir de ahora.
Puede consultar esta explicación sobre cómo firmar sus propios módulos de kernel: https://askubuntu.com/a/768310/12049
fuente
En resumen, esto no es un error, sino un nuevo cambio introducido en 16.04.
Porque lo que está instalando es un paquete dkms. Los módulos DKMS se compilan en su propia máquina, por lo que Canonical no puede firmar el módulo por usted. Si Canonical no puede firmarlo, no hay forma de verificarlo digitalmente. Si tiene activado el inicio seguro, eso significará que su módulo no se puede usar, y para usarlo, tendrá que desactivar el inicio seguro, por eso la pregunta le está haciendo.
Por qué solo sucede en 16.04 pero no en lanzamientos anteriores, Rod Smith ha dado una buena respuesta. En Ubuntu 16.04, Ubuntu comienza a exigir el arranque seguro al nivel del kernel. Antes de 16.04, Ubuntu realmente no le obliga a usar el núcleo firmado y los módulos del núcleo firmado, incluso si tiene el arranque seguro activado. Pero este ya no es el caso en 16.04.
Este es el error relacionado: https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1401532
Este es el plano relacionado: https://blueprints.launchpad.net/ubuntu/+spec/foundations-x-installing-unsigned-secureboot
fuente
Otra forma de hacerlo es crear su propia clave, insertar la parte pública en la base de datos MOK y firmar los módulos que compila con la parte privada. Mire aquí para obtener información detallada: No se pudo cargar 'vboxdrv' después de la actualización a Ubuntu 16.04 (y quiero mantener el arranque seguro)
fuente
La respuesta aceptada es muy completa, pero me gustaría agregar esta simple información, tomada de aquí:
https://askubuntu.com/a/843678/664391
Básicamente, el arranque seguro puede evitar que cargue algunos controladores que instaló, lo que puede ser bastante frustrante. He pasado por esto yo mismo: el controlador se instaló correctamente, todo parecía estar listo, pero simplemente no funcionó. Me tomó un tiempo descubrir que el arranque seguro impedía que el sistema operativo lo cargara.
fuente