Añade más seguridad a Ubuntu protegiendo el GRUB

Si acabamos de instalar Ubuntu 12.04, una de las opciones que aparecen en el menú de arranque es la de poder entrar en modo recuperación, dentro de ese modo, tan solo tenemos que escoger, pasar a un interprete de ordenes como administrador, y ya tendremos acceso total, nada más, ni siquiera contraseña. Una vez seleccionada esa opción cualquier persona puede acceder a nuestra distro sin limitación alguna, con los problemas de seguridad que eso puede conllevar, máxime si el PC es compartido.

Nunca ha sido muy complicado entrar al sistema a través de GRUB y adquirir permisos de administrador, pero otra cosa es dejar la puerta abierta directamente.

 

 

Por suerte, GRUB es altamente configurable y aunque hay algunas aplicaciones que nos facilitan el trabajo de editar el menú de arranque, la mejor forma de aprender es hacerlo uno mismo. Así que vamos a darle un poco más de seguridad, añadiendo una contraseña para evitar lo mencionado anteriormente.

Empecemos, el primer paso va a ser crear una copia del archivo que vamos a modificar, por si algo no fuera bien volver a recuperarlo. Para ello abrimos nuestra terminal y tecleamos:

sudo cp /boot/grub/grub.cfg /boot/grub/copia_grub.cfg

Una vez realizada la copia, vamos a generar la contraseña que utilizaremos más adelante, así que escribimos:

sudo grub-mkpasswd-pbkdf2

Luego, nos pregunta la contraseña (puede ser cualquiera) y tendremos que confirmarla, acto seguido nos generará una nueva contraseña codificada.

Ahora que tenemos todo lo necesario, el siguiente paso es editar grub.cfg.

sudo gedit /boot/grub/grub.cfg

Al comienzo del archivo incluiremos las siguientes lineas, cambiando tu_usuario por el que corresponda y siendo grub.pbkdf2 la contraseña que hemos generado anteriormente:

set superusers="tu_usuario"

password_pbkdf2 tu_usuario grub.pbkdf2.sha512.10000.etc...

Ya tenemos parte del trabajo hecho, con esto hemos conseguido que cuando aparezca GRUB en pantalla, no sea posible editarlo sin introducir el usuario y contraseña correctos, si no todo lo que hagamos es para nada.
Una vez que ya hemos establecido los permisos, solo nos queda buscar la entrada que queremos proteger y añadirle lo siguiente:

--users tu_usuario

Una vez finalizado, guardamos el archivo y reiniciamos el sistema, si todo ha ido bien veremos que tanto al seleccionar el modo de recuperación como al intentar editarlo nos requerirá identificarnos.

No es necesario que os diga, que de la misma manera podemos proteger todas las entradas que queramos.
Espero que os sea de ayuda.

Compártelo. ¡Gracias!

10 Comentarios
  1. Carlos says:

    Hola, yo tengo el root con clave. Aún asi soy vulnerable?

    • hispalis70 says:

      No tiene que ver ya que en este Ubuntu viene así por defecto y no te pide la contraseña.
      La mejor forma de saberlo es entrar en Modo recuperación y comprobarlo. 😉

  2. cousteau says:

    Bueno, si alguien tiene acceso a tu GRUB es que tiene acceso físico a tu PC y también puede entrar con un LiveCD y cargarse el GRUB…
    También se puede impedir esto último haciendo que el PC no arranque desde CD a través de la BIOS y protegerla con contraseña (y poniendo un candado al ordenador para que no lo puedan abrir y resetear la BIOS o quitar el HD).

    Y una cosa, ¿esto no sería mejor editarlo en el /etc/default/grub?  Lo digo por el cartel enorme que pone “DO NOT EDIT THIS FILE” al principio del grub.cfg… una actualización del kernel y el grub.cfg se sobreescribirá.

    • inedit00 says:

      Ídem que cousteau. Ejecutas “sudo update-grub” y la configuración se va al garete. Este comando se ejecuta cada vez que el sistema instala un kernel nuevo vía apt-get/aptitude por lo tanto esta configuración es un tanto…. inútil.

      Respecto a lo de los LiveCD’s: si has puesto una contraseña a tu Grub, pon una contraseña en la Bios también y desactiva el cargado automàtico vída CD-ROM o vía pendrive. @costeau, la seguridad física no existe (siempre te pueden robar el portñatil y ya está), pero se puede minimizar los riesgos protegiendo las vías de ataque más típicas.

      Un saludo.

  3. daigual says:

    Da igual donde lo hagas, porque si se actualiza el kernel, seguramente habrá que crear otra contraseña. Yo creo que es una solución más bien familiar, para que los pequeños no toque algo y cosas así (los mios son muy listos :P)
    De todas formas, no hay que que desmerecer la solución de Elias, aunque hay otras.
    Lo que tampoco entiendo es porque los de Ubuntu dejan eso así, en otras versiones no pasaba, así es una estupidez poner una contraseña al inicio, cuando cualquier sin necesitar ni siquiera un LiveCD puede cambiarla en un momento con solo encender el ordenador. Saludetes

Dejar una respuesta

no se hace responsable de las opiniones de los internautas
Por favor revisa la ortografía y respeta las normas de la web.
XHTML: Puedes utilizar los siguientes tags:
<a href=""> <b> <i> <strong>

Linux Zone © 2007 - 2019