Instalación y configuración segura de
sistemas Unix
Sergio Talens-Oliag
InfoCentre (http://www.infocentre.gva.es)
[email protected]
En este curso hablaremos de la instalación y configuración segura de sistemas Unix, centrándonos
principalmente en sistemas GNU/Linux y Solaris.
Introducción
En el curso trataremos la instalación y configuración segura de sistemas Unix, centrándonos en sistemas
GNU/Linux y Solaris, aunque parte de los contenidos serán aplicables a otros sistemas.
La idea es proporcionar a los alumnos una guía y una serie de referencias para que instalen y configuren los
servidores Unix teniendo siempre en cuenta los aspectos relacionados con la seguridad.
El curso se estructurará según los siguientes apartados:
• Seguridad física; donde se hablará de la seguridad de los servidores desde el punto de vista físico.
• El sistema de arranque; comentaremos como funcionan los sistemas de arranque de los PC y las estaciones
SPARC y sus problemas de seguridad.
• Elección de la distribución; donde hablaremos de los factores a considerar a la hora de elegir el sistema
operativo a instalar.
• Planificación de la instalación; donde se hablará de los datos que debemos conocer antes de una instalación.
• Particionado del disco y elección de tipo de sistema de archivos, donde se comentará que es importante pensar
como vamos a organizar el disco y los sistemas de archivos que vamos a emplear, ya que una vez creados
suele ser problemático modificarlos.
• El cargador de arranque; donde hablaremos de los bootloaders empleados en sistemas PC y de sus
características de seguridad.
•
Instalación de Debian GNU/Linux; donde se describirán los pasos a seguir para instalar una Debian
GNU/Linux 3.0 (Woody).
• Herramientas administrativas y de actualización de Debian; en donde se hablará del formato de paquetes
.deb, de APT y de los mecanísmos de instalación y actualización de Debian.
•
Instalación de RedHat 9.
• Herramientas administrativas y de actualización de RedHat; aquí hablaremos del rpm y de otras herramientas
de esta distribución.
•
Instalación de Solaris; donde se describirán los pasos a seguir para instalar Solaris 9.
1
Instalación y configuración segura de sistemas Unix
• Herramientas administrativas y de actualización de Solaris; comentaremos el formato de paquetes del SysV y
el sistema de parcheado de Sun.
• Configuración inicial del sistema; en este apartado se describirán algunos procesos a seguir antes de pasar a
producción una máquina recién instalada.
En el curso siempre que hablemos de instalación de programas nos referiremos a la instalación de paquetes en
formato binario, no a la instalación a partir de la compilación de código fuente.
En principio lo haremos así por que el uso de los sistemas de paquetes nos simplifica enormemente el
mantenimiento de los sistemas, permitiéndonos controlar perfectamente las versiones instaladas y actualizar de
manera sencilla cuando aparecen vulnerabilidades.
Guía rápida
Para los impacientes, incluimos en este apartado una guía rápida de lo que vamos a estudiar en el resto del curso.
El proceso de instalación segura de un sistema Unix cualquiera se podría resumir en los siguientes pasos:
1. Estudio del emplazamiento físico de la máquina, para minimizar riesgos.
2. Determinar para qué se va a emplear la máquina y los servicios que va a proporcionar. Para los servicios que
transmitan información no pública o requieran autentificación intentaremos emplear sistemas que cifren la
la información importante cuando viaja por la red.
3. Elegir los programas servidores más adecuados a nuestros conocimientos y objetivos (p. ej. en el caso del
servidor smtp)
4. En función de los programas elegidos, decidiremos qué tipo de sistema operativo y versión vamos a instalar.
5. Revisar el Hardware y la documentación del S. O. para saber si necesitamos controladores de dispositivo
adicionales o cualquier otra actualización.
6. Generar un listado de datos de configuración del equipo:
a. Nombre de la máquina,
b. Datos de la configuración de la red (dirección y máscara ip, rutas por defecto, direcciones de los
servidores de nombres y dominio a emplear),
c. Esquema de particiones y tipos de sistemas de archivos a emplear,
d. Sistema de autentificación y contraseña(s),
e. Usuarios y máquinas que van a tener acceso a los distintos servicios,
7. Una vez tenemos los datos realizamos una instalación mínima del sistema (preferiblemente sin conectarnos
a la red),
8. Detenemos todos los servicios innecesarios y desactivamos su arranque al inicio del sistema; si sabemos que
no vamos a necesitarlos también es buena idea desinstarlos completamente,
9. Si se va a emplear la red para instalar o actualizar más servicios colocaremos la máquina detrás de un
cortafuegos que bloquee las conexiones entrantes o configuraremos el sistema de firewalling de nuestro S.
O. para que haga lo mismo.
10. Una vez instalado el sistema básico, añadiremos los paquetes necesarios para proporcionar los servicios. Es
importante que seamos conscientes de si alguno de los programas que proporcionan servicios necesita
conectarse como clientes a otros equipos, por ejemplo para consultar nombres de máquinas o enviar
mensajes de correo.
2
Instalación y configuración segura de sistemas Unix
11. Después comprobaremos que tenemos instaladas todas las actualizaciones de seguridad de los paquetes que
tenemos en el sistema.
12. Luego configuraremos los distintos servidores, intentando cerrar todos los agujeros de seguridad que
pudieran tener, empezando por no usar ninguna configuración por defecto.
13. Empleando el sistema cortafuegos de nuestro servidor, limitaremos la conexiones de entrada al mínimo
número de puertos posibles y sólo permitiremos conexiones de salida relacionadas con las entrantes o las
que sepamos con certeza que son necesarias (p. ej. las de consultas del DNS o el acceso al mail relay).
Una vez hecho todo esto podremos pasar nuestra máquina a producción.
Hay que indicar que una vez instalado el equipo será necesario mantenerlo, en lo relativo a la seguridad y en
estrecha relación con la instalación del mismo deberemos:
1. Monitorizar las listas de seguridad en las que se publican vulnerabilidades e instalar las actualizaciones del
fabricante que nos afecten.
2. Auditar periódicamente la seguridad del sistema para comprobar que no tiene ninguna vulnerabilidad
conocida.
Para realizar estas tareas de manera eficaz necesitaremos conocer las herramientas de gestión de paquetes de los
distintos sistemas y las aplicaciones que vayamos a administrar.
En el curso describiremos brevemente como funcionan las distintas herramientas de gestión de paquetes, los
sistemas cortafuegos de Linux y Solaris y comentaremos algunas cosas sobre la configuración de los servicios de
red, aunque no hablaremos con detalle de ninguno de ellos.
Referencias
Para comodidad del alumno se presenta aquí la lista de referencias empleada en la elaboración del curso,
clasificadas por áreas a las que se refieren.
Referencias generales
Seguridad en general:
• Seguridad en Unix y Redes, de Antonio Villalón Huerta: Manual sobre seguridad en Unix, se ha empleado
fundamentalmente para la primera parte del curso, disponible en http://andercheran.aiind.upv.es/toni/personal/
• Recomendaciones de seguridad en una instalación de Linux, de Gunnar Wolf:
http://www.gwolf.cx/seguridad/recom_seg_linux/
Sistemas de paquetes:
• Comparing Linux/UNIX Binary Package Formats de Joey Hess: http://www.kitenet.net/~joey/pkg-comp/
Sistemas cortafuegos:
• Net Filter / IP Tables: Sistema cortafuegos para Linux, disponible en http://www.netfilter.org/
•
IP Filter: Sistema cortafuegos para *BSD y Solaris, disponible en http://coombs.anu.edu.au/ipfilter/
Sitios web sobre seguridad:
• CERT: http://www.cert.org/
3
Instalación y configuración segura de sistemas Unix
• Linux Security: http://www.linuxsecurity.com/
• PacketStorm Security: http://www.packetstormsecurity.org/
• SANS Institute: http://www.sans.org/
• Security Focus: http://www.securityfocus.com/
Avisos de seguridad:
• Boletines de seguridad del SANS Institute: http://www.sans.org/newsletters/
• Listas de Security Focus: http://www.securityfocus.com/archive/
• Listas del CERT: http://www.cert.org/contact_cert/certmaillist.html
• Área de seguridad de la revista LWN (Linux Weekly News): Disponible en http://lwn.net/security, tiene una
base de datos con avisos de la mayoría de distribuciones de Linux.
• Boletín diario de Hispasec: http://www.hispasec.com/unaaldia/
Debian GNU/Linux
Documentación:
• Área de documentación del servidor web de Debian GNU/Linux: http://www.debian.org/doc/
• Manual de instalación de debian: http://www.debian.org/releases/stable/installmanual
• The Very Verbose Debian 3.0 Installation Walkthrough, de Clinton De Young:
http://osnews.com/story.php?news_id=2016
• Guía de instalación de debian 3.0: traducción al castellano del artículo anterior disponible en
http://es.tldp.org/Manuales-LuCAS/doc-instalacion-debian-3.0/
• Manual de seguridad de debian: http://www.debian.org/doc/manuals/securing-debian-howto/
Software, avisos de seguridad y parches:
• Área de seguridad del proyecto Debian GNU/Linux: http://www.debian.org/security/
Hay que indicar que los almacenes de paquetes de la distribución estable y del área de seguridad ya contienen
todo el software y los parches que nos puedan interesar.
Foros y listas de correo accesibles desde http://lists.debian.org/:
• debian-security: Lista de discusión sobre temas de seguridad en debian
• debian-security-announce: Lista donde se publican avisos de seguridad
• debian-firewall: Lista de discusión sobre cortafuegos
Red Hat
Documentación:
• Área de documentación del servidor web de RedHat: http://www.redhat.com/docs/
• Documentación técnica sobre seguridad de Red Hat: http://www.redhat.com/solutions/security/techdocs.html
• Red Hat Linux Security Guide: http://www.re
Comentarios de: Instalación y configuración segura de sistemas Unix (0)
No hay comentarios