[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
es:howtos:security:enabling_secure_boot [2019/02/20 02:50 (UTC)] ak3.develes:howtos:security:enabling_secure_boot [2019/02/21 01:45 (UTC)] (actual) ak3.devel
Línea 1: Línea 1:
-<note warning>Traduccion en progreso Ak3.devel </note> 
- 
- 
- 
- 
 ====== Habilitando el arranque seguro en Slackware ====== ====== Habilitando el arranque seguro en Slackware ======
 En el hardware basado en la Interfaz de firmware extensible unificada (UEFI), un sistema puede operar en modo de arranque seguro. En el modo de arranque seguro, solo los binarios EFI (es decir, los gestores de arranque, los cargadores de arranque) en los que el propietario de la plataforma confía, ya sea explícitamente o mediante una cadena de confianza, pueden ejecutarse en el momento del arranque. Esto evita que los binarios y sistemas operativos no autorizados de EFI se ejecuten en su sistema, lo que puede mejorar la seguridad. En el hardware basado en la Interfaz de firmware extensible unificada (UEFI), un sistema puede operar en modo de arranque seguro. En el modo de arranque seguro, solo los binarios EFI (es decir, los gestores de arranque, los cargadores de arranque) en los que el propietario de la plataforma confía, ya sea explícitamente o mediante una cadena de confianza, pueden ejecutarse en el momento del arranque. Esto evita que los binarios y sistemas operativos no autorizados de EFI se ejecuten en su sistema, lo que puede mejorar la seguridad.
Línea 37: Línea 32:
  
 <note>No es necesario crear o usar su propia clave de intercambio de clave, ya que está destinada a ser utilizada por los sistemas operativos. Sin embargo, a continuación se proporcionan las instrucciones de Key Exchange Key para que sepa cómo inscribir las Key Exchange Keys para los sistemas operativos que lo requieren.</note> <note>No es necesario crear o usar su propia clave de intercambio de clave, ya que está destinada a ser utilizada por los sistemas operativos. Sin embargo, a continuación se proporcionan las instrucciones de Key Exchange Key para que sepa cómo inscribir las Key Exchange Keys para los sistemas operativos que lo requieren.</note>
-To prepare a new Platform Key for writing to the ''PK'' variable+Para preparar una nueva Clave de plataforma para escribir en la variable '' PK '': 
-  - Insert the public Platform Key into an EFI signature list: <code>cert-to-efi-sig-list -g owner_guid PK.pub PK.esl </code> replacing ''owner_guid'' with a hexadecimal GUID in the format ''12345678-1234-1234-123456789abc''The owner GUID should be the same for all keys that you ownIf an operating system cannot add signature to signature database due to a lack of resourcesit may remove a signature with an owner GUID associated with the operating system+  - Inserte la clave de plataforma pública en una lista de firmas EFI: <code>cert-to-efi-sig-list -g owner_guid PK.pub PK.esl </code> reemplazando '' owner_guid '' con un GUID hexadecimal en el formato '' 12345678-1234-1234-123456789abc ''El GUID del propietario debe ser el mismo para todas las claves que poseaSi un sistema operativo no puede agregar una firma una base de datos de firmas debido la falta de recursospuede eliminar una firma con un GUID propietario asociado con el sistema operativo
-  - Sign the EFI signature listIn Setup mode (Secure Boot offthe private half of the inserted key should sign the signature listIn User mode (Secure Boot onthe private key of the current Platform key should sign the signature list: <code>sign-efi-sig-list -k PK.priv -c PK.pub PK PK.esl PK.signed</code>+  - Firmando la lista de firmas EFI. En el modo de configuración (arranque seguro desactivado), la mitad privada de la clave insertada debe firmar la lista de firmasEn el modo Usuario (inicio seguro activado), la clave privada de la clave de la plataforma actual debe firmar la lista de firmas: <code>sign-efi-sig-list -k PK.priv -c PK.pub PK PK.esl PK.signed</code>
  
-similar procedure applies for preparing a Key Exchange Key or a signature database entry for writing to the ''KEK'', ''db'', or ''dbx'' variablesKey Exchange Keys must be signed by the private half of the Platform Key:+Se aplica un procedimiento similar para preparar una clave de intercambio de claves o una entrada de la base de datos de firmas para escribir en las variables '' KEK '', '' db '' '' dbx ''Las claves de intercambio de claves deben estar firmadas por la mitad privada de la clave de plataforma:
 <code>cert-to-efi-sig-list -g owner_guid KEK.pub KEK.esl <code>cert-to-efi-sig-list -g owner_guid KEK.pub KEK.esl
 sign-efi-sig-list -a -k PK.priv -c PK.pub KEK KEK.esl KEK.signed</code> sign-efi-sig-list -a -k PK.priv -c PK.pub KEK KEK.esl KEK.signed</code>
-And signature database entries must be signed by the private half of the Platform Key or any of the Key Exchange Keys:+Y las entradas de la base de datos de firmas deben estar firmadas por la mitad privada de la Clave de la plataforma o cualquiera de las Claves de intercambio de claves:
 <code>cert-to-efi-sig-list -g owner_guid db.pub db.esl <code>cert-to-efi-sig-list -g owner_guid db.pub db.esl
 sign-efi-sig-list -a -k PK.priv -c PK.pub db db.esl db.signed</code> sign-efi-sig-list -a -k PK.priv -c PK.pub db db.esl db.signed</code>
-Note that the ''-a'' option was used to prepare for an append write.+Tenga en cuenta que la opción '' -a '' se usó para preparar una escritura anexa.
  
-To update the Secure Boot variables you must have root privilegesYou will need to load the efivarfs kernel module and mount the efivarfs filesystem beforehand if it has not been taken care of already:+Para actualizar las variables de arranque seguro debe tener privilegios de raízNecesitará cargar el módulo del kernel efivarfs y montar el sistema de archivos efivarfs de antemano si aún no se ha resuelto:
 <code>modprobe efivarfs <code>modprobe efivarfs
 mount -t efivarfs efivarfs /sys/firmware/efi/efivars</code> mount -t efivarfs efivarfs /sys/firmware/efi/efivars</code>
  
-To enroll the Platform Keyrun:+Para registrar la Clave de la Plataformaejecute:
 <code>efi-updatevar -f PK.esl.signed PK</code> <code>efi-updatevar -f PK.esl.signed PK</code>
-If the system was in Setup mode it will now be in User mode.+Si el sistema estaba en modo de configuración, ahora estará en modo de usuario.
  
-To add keys to the ''KEK'', ''db'' or ''dbx'' variablesrun (as appropriate):+Para agregar claves a las variables '' KEK '', '' db '' '' dbx '', ejecute (según corresponda):
 <code>efi-updatevar -a -f KEK.signed KEK</code> <code>efi-updatevar -a -f KEK.signed KEK</code>
 <code>efi-updatevar -a -f db.signed db</code> <code>efi-updatevar -a -f db.signed db</code>
 <code>efi-updatevar -a -f dbx.signed dbx</code> <code>efi-updatevar -a -f dbx.signed dbx</code>
  
-You can check that your keys have been properly enrolled using ''efi-readvar''.+Puede verificar que sus claves se hayan inscrito correctamente usando '' efi-readvar ''.
  
-===== Signing EFI Binaries ===== +===== Firma Binarios EFI ===== 
-My recommendation (at the time of writingis that you either use a boot manager with an EFI stub kernel, or directly boot an EFI stub kernel. ELILO, efilinux and syslinux (and possibly GRUB but I do not know for surewill allow unsigned kernels to run (or at least it does on my hardware and VM), which defeats the purpose of Secure BootIf you do follow my recommendationmake sure you sign your kernel every time you change it.+Mi recomendación (en el momento de escribir estoes que use un administrador de arranque con un kernel de stub de EFI, o que arranque directamente un kernel de stub de EFI. ELILO, efilinux syslinux (y posiblemente GRUB, pero no estoy seguropermitirán que se ejecuten núcleos sin firmar (o al menos lo hace en mi hardware VM), lo que anula el propósito de arranque seguroSi sigue mi recomendaciónasegúrese de firmar su kernel cada vez que lo cambie.
  
-You will need to sign all EFI binariesup to, and including your bootloader and/or EFI stub kernelTo sign an binaryrun:+Deberá firmar todos los archivos binarios de EFI, hasta e incluyendo su cargador de arranque y/o el núcleo de stub de EFI. Para firmar un binarioejecute:
 <code>sbsign --key db.priv --cert db.pub --output signed_binary.efi binary.efi</code> <code>sbsign --key db.priv --cert db.pub --output signed_binary.efi binary.efi</code>
  
-An example of how to add an EFI stub kernel entry using efibootmgr is:+Un ejemplo de cómo agregar una entrada de kernel stub EFI usando efibootmgr es:
 <code>efibootmgr -c -L SlackSecureBoot -l '\EFI\Slackware\vmlinuz-signed.efi' -u 'root=/dev/sda3'</code> <code>efibootmgr -c -L SlackSecureBoot -l '\EFI\Slackware\vmlinuz-signed.efi' -u 'root=/dev/sda3'</code>
  
-<note warning>If you see ''warning: gap in section table'' when signing an EFI binary (see below), the binary will probably not work in Secure Boot modeThis warning appears for EFI binaries built against earlier gnu-efi library versionsIf you plan to use ELILO you will need to recompile it yourselfthe version shipped with Slackware will not work.+<note warning>Si ve "" warning: gap in section table "" cuando firma un binario EFI (consulte a continuación), es probable que el binario no funcione en el modo de arranque seguroEsta advertencia aparece para los binarios de EFI creados contra versiones anteriores de la biblioteca gnu-efi. Si planea usar ELILO, deberá volver a compilarlo usted mismo, la versión que se incluye con Slackware no funcionará.
 <code>warning: gap in section table: <code>warning: gap in section table:
     .text   : 0x00000400 - 0x00017c00,     .text   : 0x00000400 - 0x00017c00,
Línea 84: Línea 79:
 </note> </note>
  
-====== Disabling Secure Boot ====== +====== Deshabilitando el arranque seguro ====== 
-If you want to remove all Secure Boot keys and revert to Setup modethe easiest way to do so is to sign an empty file with your Platform Key and write the signed file to all the Secure Boot variables:+Si desea eliminar todas las claves de inicio seguro y volver al modo de configuraciónla forma más sencilla de hacerlo es firmar un archivo vacío con su clave de plataforma y escribir el archivo firmado en todas las variables de inicio seguro:
 <code>touch empty <code>touch empty
 sign-efi-sig-list -k PK.priv -c PK.pub PK empty empty.signed sign-efi-sig-list -k PK.priv -c PK.pub PK empty empty.signed
Línea 93: Línea 88:
 efi-updatevar -f empty.signed dbx</code> efi-updatevar -f empty.signed dbx</code>
  
-====== Dual/Multi-booting with Windows ====== +====== Dual / Multi-booting con Windows ====== 
-If Windows is one of your boot optionsyou will need the Microsoft KEK and db certificatesThe certificates can be found at https://technet.microsoft.com/en-us/library/dn747883.aspx and will need to be converted from DER format to PEM format:+Si Windows es una de sus opciones de arranquenecesitará los certificados KEK db de MicrosoftLos certificados se pueden encontrar en https://technet.microsoft.com/en-us/library/dn747883.aspx y tendrá que convertirse del formato DER al formato PEM:
 <code>openssl x509 -in certificate.der -inform DER -out certificate.pem</code> <code>openssl x509 -in certificate.der -inform DER -out certificate.pem</code>
  
-The instructions that were provided above can then be used to enroll the certificatesThe owner GUID you should use for Microsoft keys is 77fa9abd-0359-4d32-bd60-28f4e78f784b.+Las instrucciones que se proporcionaron anteriormente se pueden utilizar para inscribir los certificadosEl GUID propietario que debe usar para las claves de Microsoft es 77fa9abd-0359-4d32-bd60-28f4e78f784b.
  
 ====== Sources ====== ====== Sources ======
 es:howtos:security:enabling_secure_boot ()