Google
Web dns.bdat.net

Seguridad en el arranque

Una cuestión que siempre surge cuando se trata el proceso de arranque es la forma de limitar el acceso a la carga del sistema operativo. Esto tienes que pensarlo bien antes de hacerlo. Piensa que si por ejemplo, se trata de un sistema servidor será necesaria tu presencia para poder reiniciar el equipo que se haya apagado por un fallo en el suministro eléctrico.

Por otro lado, como hemos visto, grub permite una shell y poder editar los parámetros de arranque, cosa que puede que también nos interese limitar; no limitar el arranque, sino limitar las modificación de las características del arranque.

La shell de grub también proporciona acceso al sistema de ficheros, a que se pueda acceder a información almacenada en ficheros del sistema. Por ejemplo cat /etc/passwd mostraría la lista de usuarios.

password: Añadir contraseña general

Las propiedades de contraseña permite limitar el acceso al shell de grub mediante contraseña y así impedir que se puedan realizar operaciones interactivas.

El uso de contraseñas se indica en grub con:

password [--md5] contraseña [fichero_configuración]

De esta forma se elimina el acceso al shell hasta que pulsemos la tecla P en introduzcamos la contraseña correcta.

Como no es buena política almacenar las contraseñas en texto limpio, lo mejor es añador la opción `--md5' y poner una contraseña cifrada md5.

Para obtener el valor cifrado de la contraseña podemos usar la orden `md5crypt' en un shell de grub:

Ejecutamos

$ grub

y nos aparece:

 grub>
              

Ahora ejecutamos la orden md5crypt e introducimos la contraseña cuando la pida:

grub> md5crypt

Password: ****
Encrypted: $1$VrTfp0$XIHnjm/6MAUPrOzCPHJZ30
grub>
              

y temos la contraseña cifrada con md5. En este caso la contraseña es "hola". Ahora sólo tenemos que cortar y pegar:

password --md5 $1$VrTfp0$XIHnjm/6MAUPrOzCPHJZ30

Es posible también indicar un fichero de configuración como argumento de password. Este fichero será el que se cargue como fichero de configuración cuando proporcionemos una contraseña válida. Por ejemplo:

    password hola /boot/grub/menu-admin.lst
              

Observamos que un password global no impide el arranque normal del sistema, simplemente impide que se pueda alterar.

lock: bloquear arranques

En una máquina podemos tener varios sistemas operativos instalados, pero no queremos que todo el mundo pueda utilizarlos todos, queremos que para acceder a cierto sistema haya que introducir una contraseña.

    title Boot DOS
     lock
     rootnoverify (hd0,1)
     makeactive
     chainload +1
              

Debemos poner lock justo tras `title', ya que un usuario podría ejecutar órdenes de una opción del menú hasta encontrar `lock'.

Arranque con contraseña

Cuando poníamos lock estábamos utilizando la contraseña global de grub, pero también existe la posibilidad de agregar "password" a un arranque concreto. En este caso el comportamiento es distinto, se solicita esa contraseña para realizar el arranque. Así podemos tener una contraseña para cada uno de los sistemas operativos que tengamos instalados.