Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2 SEGURIDAD FÍSICA
2.1 Introducción
2.2 Objetivos
Los objetivos a los que llegaremos en esta lección son los siguientes:
Seguridad en Linux 34
Configuración de Seguridad en servidores Linux
contenido, sin importar los permisos que se tenga o si las contraseñas se han
elegido siguiendo criterios de robustez, o que el firewall bloquee toda petición
improcedente a través de la red.
Las medidas que se han de tomar varían mucho en alcance y sobre todo en
precio. Las más elementales son también las menos caras, como mantener
cerrada con llave la sala de ordenadores al abandonarla y bloquear las tomas de
red no utilizadas. Otro aspecto al que se presta poca atención, es al cableado
que suele ser accesible, anulando las ventajas de tener bajo llave al servidor.
Seguridad en Linux 35
Configuración de Seguridad en servidores Linux
Este programa está almacenado en un chip PROM en la placa base, con lo que
siempre está disponible, incluso antes de instalar el sistema operativo. Su
configuración se almacena en el propio chip y se mantiene a pesar de estar
Seguridad en Linux 36
Configuración de Seguridad en servidores Linux
Seguridad en Linux 37
Configuración de Seguridad en servidores Linux
Para moverse entre las opciones se utilizan las flechas de dirección (arriba,
abajo, izquierda o derecha). Cuando se esté sobre un submenú se puede
entrar a él mediante la tecla Entrar y posteriormente regresar con la tecla Esc.
La mayoría de las BIOS suelen mostrar ayuda en línea acerca de las opciones
configurables, y en algunos casos información adicional pulsando F1.
Finalmente, para modificar los valores se utilizan las teclas AvPág y RePág,
que permiten recorrer la lista de posibles valores en ambos sentidos.
Seguridad en Linux 38
Configuración de Seguridad en servidores Linux
Los dos gestores de arranque más utilizados en Linux son LILO (Linux Loader) y
GRUB (GRand Unified Boot loader). Actualmente, GRUB está en desuso y en
su lugar se ha migrado hacia GRUB 2, una completa reescritura del gestor
original, más limpio, robusto, seguro y potente, que lleva funcionando desde
aproximadamente el año 2009.
Dentro del fichero se especifican las opciones como una serie de asignaciones
de valores a ciertas claves de la forma:
clave = valor
Seguridad en Linux 40
Configuración de Seguridad en servidores Linux
boot=/dev/sda1
delay=30
image=/boot/vmlinuz-2.6-18
label=Linux26
root=/dev/sda1
initrd=/boot/initrd-2.6-18
Seguridad en Linux 41
Configuración de Seguridad en servidores Linux
clave valor
default 0
Seguridad en Linux 42
Configuración de Seguridad en servidores Linux
# vim /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
#GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
Aquí GRUB no manda de inmediato el sistema operativo por default, sino que
da un tiempo de 10 segundos durante los cuales uno puede elegir la opción
que se prefiera. Si existe más de un sistema operativo instalado, se procede de
la misma manera que con el antiguo GRUB, editando el archivo menu.lst, para
cambiar la opción GRUB_DEFAULT=0 por el número que se prefiera.
Modo monousuario
Uno de los problemas que puede surgir es que el gestor de arranque permita
cargar el sistema operativo en modo monousuario. Este modo se suele utilizar
para realizar ciertas tareas de administración o reparación del sistema. Según
como esté configurado el inittab puede suceder que en este modo se abra una
shell de root sin necesidad de introducir ninguna contraseña. En ese momento
bastaría el comando
$ passwd
Seguridad en Linux 43
Configuración de Seguridad en servidores Linux
Para evitar esta incidencia, se debe o bien eliminar las opciones de arranque
en modo monousuario o bien protegerlas con contraseña. Esta segunda opción
se realiza de forma diferente en GRUB y en LILO.
# grub-md5-crypt
Password:
Retype password:
$1$01mZ2$qBsrALN.SGtETg9sE9GtL.
Seguridad en Linux 44
Configuración de Seguridad en servidores Linux
image=/boot/vmlinuz-2.6-18
password=c0ntr453ny4
label=Linux26
root=/dev/sda1
append=”single”
initrd=/boot/initrd-2.6-18
En cualquiera de los dos casos, una vez añadidas las contraseñas al fichero de
configuración, es necesario asegurar que los permisos de acceso al fichero
no permitan que cualquier usuario pueda leerlos. Para ello, se pueden ejecutar
los siguientes comandos:
LILO:
GRUB:
# mount –n –o rw,remount /
Seguridad en Linux 45
Configuración de Seguridad en servidores Linux
tecla „e‟ para editar un elemento del menú y luego la tecla „b‟ para arrancarlo.
Adicionalmente, se puede utilizar la tecla „c‟ para mostrar un prompt en el que
construir desde cero una opción de arranque.
Entre las responsabilidades del proceso init está la creación de los terminales, la
puesta en ejecución de los demonios, y la inicialización de la pantalla de
login gráfico si el servidor dispone de una. Además, este proceso se encarga
de mantener el run level o nivel de ejecución y de realizar transiciones entre
niveles.
La razón de ser de los niveles de ejecución, es que los servicios que init lanza
pueden variar según el uso que se le dé a la máquina o según el momento en
el que uno se encuentre. En algunos momentos el sistema está arrancando, en
otros se desea estar en modo multitarea, con o sin red; o se pueden desear
niveles personalizados que ejecuten o no ciertos servicios.
Seguridad en Linux 46
Configuración de Seguridad en servidores Linux
Los niveles que no se utilizan por omisión se pueden personalizar por parte del
administrador del sistema. Además, se puede utilizar S para referirse de forma
genérica al nivel monousuario.
# esto es un comentario
# para el inittab
Seguridad en Linux 47
Configuración de Seguridad en servidores Linux
identificador:runlevels:acción:comando
Seguridad en Linux 48
Configuración de Seguridad en servidores Linux
si::sysinit:/etc/init.d/rcS
# Runlevel 0 is halt.
# Runlevel 1 is single-user.
# Runlevels 2-5 are multi-user.
# Runlevel 6 is reboot.
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin
Seguridad en Linux 49
Configuración de Seguridad en servidores Linux
~~:S:wait:/sbin/sulogin
Otros aspectos relativos a la seguridad que hay que cuidar en este fichero de
configuración son las reglas que utilizan ctrlaltdel y el número y tipo de
terminales que se abren.
Seguridad en Linux 50
Configuración de Seguridad en servidores Linux
2.6 Conclusiones
Se ha resaltado que sin un estricto control del acceso físico, el resto de medidas
de seguridad son inútiles.
2.7 Cuestionario
Seguridad en Linux 51
Configuración de Seguridad en servidores Linux
Seguridad en Linux 52
Configuración de Seguridad en servidores Linux
Solución:
Seguridad en Linux 53
Configuración de Seguridad en servidores Linux
Seguridad en Linux 54
Configuración de Seguridad en servidores Linux
Seguridad en Linux 55
Configuración de Seguridad en servidores Linux
# menu.lst - See: grub(8), info grub, update-grub(8)
# default option
default 0
# timeout sec
timeout 5
# Pretty colours
color cyan/blue white/blue
El fichero es el siguiente:
Seguridad en Linux 56
Configuración de Seguridad en servidores Linux
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin
Seguridad en Linux 57
Configuración de Seguridad en servidores Linux
Otro aspecto menor, es que cualquier persona con acceso al terminal podría
utilizar la configuración de la línea resaltada en verde en el listado para reiniciar
el equipo pulsando Ctrl+Alt+Supr. Si no se desea este comportamiento habría
que comentarla.
Seguridad en Linux 58