Trabajo De Tesina Para Optar Al Título De Ingeniero Electrónico Trabajo publicado en www.ilustrados.com La mayor Comunidad de difusión del conocimiento Diciembre 2002 Managua, Nicaragua Análisis De Los Requerimientos Tecnológicos Para La Implementación De Servidores Web Seguros Realizado por: Silvio Sandoval Ramos silvioalx@yahoo.com Descarga el trabajo completo en: www.monografias.com Objetivo General Orientar sobre el mejor curso de acción para la puesta en marcha de un servidor Web que garantice la seguridad de la información. Objetivos Específicos Evaluar y seleccionar un Sistema Operativo adecuado. Enunciar los requerimientos del equipo para su correcta instalación. Establecer mecanismos y métodos de seguridad eficaces. Proporcionar Técnicas de protección. Presentar recomendaciones para el desempeño satisfactorio del sistema. Resumen del Tema Servidores Web: son aquéllos que permiten a los clientes compartir datos, documentos y multimedia en formato Web. Suministran páginas Web a los navegadores (como Internet Explorer y Netscape Navigator a través del Protocolo de Transferencia De Hipertexto (HTTP) Funcionamiento del Servidor Seguridad La seguridad en redes de telecomunicaciones está fundamentada en tres elementos: La Integridad. Se refiere a que el contenido y el significado de la información no se altere. La Confiabilidad. Implica que el servicio debe estar disponible en todo momento. La Confidencialidad. Es quizá la parte más estratégica del negocio, ya que contribuye a impedir que personas no autorizadas lean y conozcan la información que se transmite. Posibles Problemas de Seguridad Suplantación de identidades Negación de servicios Accesos o modificaciones ilegales a los recursos Aprovechamiento de programación insegura Ataque de Virus Políticas de Seguridad Todo sistema debe contar con una política de seguridad que los usuarios puedan comprender y seguir; quién tiene acceso al sistema, quién puede instalar programas, quién es el dueño de los datos, el uso apropiado del sistema, etc. Criptografía Proporciona comunicaciones seguras en canales inseguros. Se divide en Sistemas de Clave Secreta, donde el emisor y el receptor utilizan la misma clave secreta; y Sistemas de Clave Pública donde cada usuario posee un par de claves una secreta y otra pública. Mecanismos de Seguridad Cifrado: técnicas criptográficas que se aplican extremo a extremo o a cada enlace; Firma Digital: conjunto de datos que se añaden a una unidad de Datos para protegerlos contra la falsificación, utiliza el esquema criptográfico. Necesitan realizar una autenticación a través de un Certificado firmado por la Autoridad de Certificación válido durante un tiempo límite. Análisis y Resultados Los servidores requieren de sistemas operativos capaces de satisfacer las demandas de la tecnología ClienteServidor. El programa servidor debe transmitir la información de forma eficiente, y atender a varios clientes al mismo tiempo sin que estos conozcan su ubicación (Sistemas Distribuidos). Sistemas Operativos Distribuidos Sistema Operativo Conectividad Confiabilidad Estabilidad Escalabilidad Multiusuario Multiplataforma UNIX Excelente Muy Alta Excelente Muy Alta Si Si Múltiple Si Si Windows NT Muy Buena Baja Regular Media Inseguro Parcial Limitada Si Netware Excelente Alta Excelente Alta Si Si No Si Linux Excelente Muy Alta Excelente Muy Alta Si Si Múltiple Si No Sistema Operativo Propietario Precio UNIX Mac OS X Server 10.2 Apple US $499.00 (10 usuarios) US $999.00 (sin limite de usuarios) Windows 2000 Advanced Server Microsoft US $809 (5 usuarios) US $1,129 (10 Usuarios) Netware 6.0 Novell US $1,395 (5 usuarios) US $47,995 (1000 usuarios) Linux Red Hat 8.0 Gratis o sobre US $49.95 para una distribución en CD-ROM POSIX Propietario Características de Seguridad Sistema Operativo Seguridad UNIX Realiza un proceso denominado ingreso (login). Cada archivo en UNIX tiene asociados un grupo de permisos. Hay que ''autentificarse'', o identificarse como un usuario autorizado de la máquina. UNIX reconoce tres tipos diferentes de individuos: primero, el propietario del archivo; segundo, el "grupo"; por último, el "resto" que no son ni propietarios ni pertenecen al grupo, denominados "otros". Windows NT El usuario debe tener su cuenta asignada y una contraseña para poder tener acceso al sistema. El sistema está protegido del acceso ilegal a las aplicaciones en las diferentes configuraciones. Ofrece la detección de intrusos. Permite cambiar periódicamente las contraseñas. No permite criptografía de llave pública ni privada. Netware Brinda la posibilidad de asignar diferentes permisos a los diferentes tipos de usuarios. Permite detectar y bloquear intrusos. Algunas versiones no permiten criptografía de llave pública ni privada. Linux Presenta las mismas características que UNIX lo que lo hace mucho más seguro que otros servidores. Linux Red Hat 8.0 Red Hat puso en el mercado la versión 8.0 de su sistema operativo de fuente abierta que ofrece un interfaz gráfico más agradable. Se incluye una suite de herramientas para configurar diversos servicios del sistema incluyendo los servidores de Apache, samba, ajustes de la red, firewall, etc. Herramientas Básicas (PAM) Los Modulos de Autenticación Conectables, son una manera de permitir que el administrador utilice esquemas de autentificación común que se pueden usar con una gran variedad de aplicaciones. Haciendo el proceso de verificación de usuarios más sencillo y transparente. Kerberos Kerberos era el perro de tres cabezas de la mitología griega que por ser quien cuidaba las puertas del infierno, representa seguridad. Es un servicio que tiene por objetivo principal proporcionar un sistema de autenticación entre clientes y servidores que evite que los passwords de los usuarios viajen continuamente por la red. Funcionamiento de Kerberos Tripwire Tripwire puede ayudar a asegurar la integridad de ficheros y directorios de sistema esenciales identificando todos los cambios hechos a ellos El uso de Tripwire para detectar intrusiones y fijar daños ayuda a mantener al tanto al Administrador de los cambios que sufre el sistema Compara los ficheros y directorios con una base de datos de la ubicación de los ficheros, las fechas en que han sido modificados y otros datos SSH SSH (o Secure SHell) es un protocolo para crear conexiones seguras entre dos sistemas Usando SSH, la máquina del cliente inicia una conexión segura con una máquina de servidor ya que la información es cifrada El cliente puede verificar que se está conectando al mismo servidor durante sesiones ulteriores SSH hace relativamente sencilla la tarea de cifrar tipos diferentes de comunicación que normalmente se envía en modo inseguro a través de redes públicas Uso de Apache como Servidor Web Seguro (HTTPS) La combinación del servidor Apache con el módulo de seguridad mod_ssl y con las librerías y el kit de herramientas OpenSSL proporcionados por Red Hat Linux, es lo que se conoce como secure Web server Incluye el OpenSSL Project, un kit de herramientas que implementa los protocolos SSL (Capa de Conecciones Seguras) y TLS (Capa de Transporte Segura), así como una librería de codificación de propósito general. El protocolo SSL se usa actualmente para la transmisión de datos segura sobre Internet; El protocolo TLS es un estándar de Internet para comunicaciones privadas (seguras) y fiables a través de Internet. Requerimientos Recomendados de Instalación para Red Hat 8.0 Procesador: Pentium-class 200 MHz o superior RAM: 192MB para modo gráfico Disco Duro:2.5GB de espacio; 4.5GB para instalación completa Monitor: SVGA (1028x1024) para ambiente gráfico CD –ROM: 32x con autoinicialización Tecnologías de Seguridad Firewalls (Muros de Fuego) son sistemas o grupos de sistemas que establecen políticas de control de acceso entre dos redes El sistema es realmente resistente a la penetración. Sólo el tráfico autorizado, definido por la política de seguridad es autorizado para pasar por él. Software SPX Usa claves asimétricas RSA certificadas según la norma X.509 combinadas con el uso de DES como algoritmo de cifrado con claves de sesión. Al igual que Kerberos dispone de un centro de autenticación ante el que se identifican los usuarios El uso de una jerarquía de certificados de clave pública permite solucionar los problemas de escalabilidad que presenta Kerberos IPSec IPSec Es una extensión del protocolo IP. Proporciona servicios criptográficos de seguridad como control de acceso, integridad, autenticación del origen de los datos, confidencialidad. Proporciona encriptación y autenticación a nivel de red. Los paquetes tienen la misma apariencia que un paquete IP corriente. Combina distintas tecnologías: Diffie Hellman, encriptación clave pública, DES, funciones hash, certificados digitales, entre otros. Modos de funcionamiento Modo transporte: es el host el que genera los paquetes. Solo se encriptan los datos, la cabecera intacta añade pocos bytes. Permite ver las direcciones de origen y de destino. Modo túnel: uno de los extremos de la comunicación es un gateway. El paquete IP se encripta entero, para el sistema final el paquete es transparente Firewalls Internos Configuraciones de Firewalls que se utilizan para proteger la red privada de ataques mal intencionados desde dentro de la misma Reduce significativamente los riesgos del ataque de un hacker desde adentro es decir acceso no autorizado por usuarios autorizados. Agregando encriptación a los servicios del firewall lo convierte en una conexión firewall a firewall muy segura Servidores Proxy Proxy Server es una aplicación que media en el tráfico que se produce entre una red protegida e Internet. Los proxies se utilizan a menudo, como sustitutos de routers controladores de tráfico, para prevenir el tráfico que pasa directamente entre las redes. Muchos proxies contienen logins auxiliares y soportan la autentificación de usuarios. Hardware Routers de Selección, pueden discriminar entre el tráfico de red en base en el tipo de protocolo y en los valores de los campos del protocolo en el paquete. A esta capacidad también se le denomina filtración de paquetes Fabricantes de routers como Cisco, Wellfleet, 3COM, digital, Newbridge, ACC y muchos otros proporcionan routers que pueden programarse para desarrollar funciones de filtración de paquetes Routers como Firewalls Los routers toman sus decisiones basándose en tablas de datos y reglas, por medio de filtros Esto transforma al ruteador que puede filtrar paquetes en un dispositivo de control de acceso o firewall Si el ruteador puede generar un registro de accesos esto lo convierte en un valioso dispositivo de seguridad Firewalls con Encriptación Algunos firewalls proveen servicios de seguridad adicionales. Como encriptación y desencriptación, ambas deben usar sistemas compatibles de encriptación; usando tarjetas inteligentes, fichas y otros métodos Una compañía puede aplicar las mismas restricciones de tráfico, mejorado con autenticación gracias a estos dispositivos Routers de Filtrado Técnicas de Protección Aplicación Gateway Para contar algunas de las debilidades asociadas con el ruteador de filtrado de paquetes, los desarrolladores han creado aplicaciones de software para controlar y filtrar conexiones Trabajando juntos, firewalls de aplicación gateway y el ruteador de filtrado de paquetes pueden potencialmente dar más altos niveles de seguridad y flexibilidad que uno solo Monitoreo de Paquetes Esta técnica no sólo filtra los paquetes, considera su contenido tanto como sus direcciones Los firewalls de este tipo emplean una inspección de módulos, aplicable a todos los protocolos que comprenden los datos de los paquetes destinados desde el nivel network (IP) hasta el nivel de aplicación También se pueden realizar la inspección del estado de la conexión; y la filtración de las sesiones de red (implementaciones inteligentes) Firewalls Híbridos En la práctica, muchos de los firewalls comerciales de hoy usan una combinación de estas técnicas. Por ejemplo, un producto que se originó como un firewall filtrador de paquetes puede haber sido mejorado con filtrado inteligente a nivel de aplicación Las aplicaciones proxy en áreas establecidas como ftp pueden agregar una inspección de filtrado en base a su esquema Consideraciones Técnicas Particiones del Disco Duro Partición Única Múltiples Particiones en un sólo disco Múltiples Discos con una partición por disco Múltiples Discos con múltiples particiones por disco Para la instalación de Red Hat se recomienda realizar estas particiones: Partición swap son utilizadas para soportar la memoria virtual. El tamaño mínimo debe ser igual a la cantidad de memoria RAM boot partición, contiene el kernel del sistema operativo. Esta partición no debería superar los 32 MB Partición root, es donde se encuentra el directorio root (raíz) por tanto mientras más espacio se le de a la partición root mejor. Arreglo de Discos Duros RAID (Arreglo de Discos Baratos) para mejorar el rendimiento de los discos IDE EIDE se invento un sistema para guardar información en varios discos duros a la vez por lo que el acceso se hace mas rápido ya que la carga se distribuye entre los diferentes discos duros Se puede realizar por Software y por Hardware; pero es mejor por Hardware Se implementa en niveles (0-5), aunque los recomendables son: RAID-1 nos provee de información redundante ya que graba todos los datos en dos o más discos. Si un disco falla no se pierde la información RAID-5 graba los datos a nivel de blocks entre varios discos, distribuyendo la paridad entre los discos. La paridad permite recuperar los datos en caso de que algún disco falle. RAID Híbridos Hay otros tipos de arreglos definidos por marcas como Compaq o IBM: RAID-10 Se distribuye la información en los diferentes discos RAID-0 pero es tolerante a fallas RAID-1 RAID-7 Definido por Compaq e IBM como "Hotspare", es un arreglo RAID-5 al que se le agrega un disco extra que sólo entra a funcionar automáticamente cuando uno de los discos del arreglo falla Protección Física del Servidor • Protección del hardware Acceso físico Desastres naturales Prevención Detección Terremotos Tormentas eléctricas Inundaciones y humedad Desastres del entorno Electricidad Ruido eléctrico Incendios y humo Temperaturas extremas • Protección de los datos Eavesdropping Backups Otros elementos • Radiaciones electromagnéticas Conclusiones Red Hat Linux presenta numerosas ventajas, además de lo económico de su adquisición, las herramientas de seguridad que incluye hacen factible su configuración como servidor Web Los requerimientos de Hardware son menores en relación a otros Sistemas Operativos, lo que disminuye costos Las técnicas de protección son soluciones eficientes; capaces de detectar, prevenir y atenuar cualquier situación de peligro para el sistema Se deben analizar las consideraciones técnicas; proporcionan un incremento en el rendimiento del sistema. Sin olvidar la “seguridad física” si no todos los esfuerzos por asegurar el sistema con la tecnología más eficiente no van a servir de nada Recomendaciones Construir Políticas de Seguridad con las siguientes pautas: Sencilla y no compleja Fácil de mantener y no difícil Promover la libertad a través de la confianza en la integridad del sistema en vez de una sofocante utilización del sistema El reconocimiento de la falibilidad en vez de una falsa sensación de seguridad El enfoque debería estar en los problemas reales en vez de en problemas teóricos La inmediatez en vez de la desidia Las Contraseñas Seguras Una buena contraseña debe tener las siguientes cualidades: Tener por lo menos ocho caracteres Estar hecha de caracteres, números y símbolos Ser única Se deben evitar contraseñas que sean palabras que se encuentran en el diccionario tengan que ver con sus datos personales no pueda ser escrita rápidamente Bibliografía Gibbs Mark. Redes Para Todos. Editorial Prentice Hall. Primera Edición. Año 1997. México. Harvey. M. Deitel. Introducción a los Sistemas Operativos. Editorial Addison-Wessley. Segunda Edición. Año 1993. E.U.A. Official Red Hat Linux 8.0 Installation Guide Sheldon Tom. Novell NetWare Manual De Referencia. Editorial McGraw-Hill. Primera Edición. Año 1992. México Siyan Karanhit. Windows NT Server Professional Reference. Editorial New Riders. Año 1995. E.U.A. Tackett Jack, Gunter David & Brown Lance. Edición Especial Linux. Editorial Prentice Hall. Primera Edición. Año 1996. México. Tanenbaum Andrew. S. Redes de Computadoras. Editorial Prentice Hall. Tercera Edición. Año 1997. México. Tanenbaum Andrew. S. Sistemas Operativos Modernos. Editorial Prentice Hall. Primera Edición. Año 1995. México. Travis Dewire Dawn. Client/Server Computing. Editorial Mc GrawHill. Primera Edición. Año 1993. E.U.A. FRANCO, J.P., SARASA L., M.A. Criptografía Digital. Prensas Universitarias de Zaragoza, 1º Edición, 1998. SCHNEIER, B. Criptograma. Número 20. 15 de Diciembre de 1999