INSTITUTO TECNOLÓGICO DE TLALNEPANTLA
“ UNIDAD 5 APACHE“
P r e s e n t a :
GARCIA CRUZ JOSE JUAN Lic. en Informática.
Gallardo Godínez J. Antonio
Sistemas web
Tlalnepantla de Baz,29 mayo del 2013.
Juan García Cruz
ITTLA
ALU-MAC
i
INDICE DE CUADROS Y FIGURAS _______________________________________ iii INTRODUCCION. _______________________________________________________ 1 1
2
3
SERVIDOR. ___________________________________________________________ 3 1.1
DEFINICION ____________________________________________________________ 3
1.2
CARACTERISTICAS _______________________________________________________ 3
1.3
ESPECIFICACIONES _______________________________________________________ 4
1.4
TENDENCIAS. ___________________________________________________________ 5
1.5
CLASIFICACION. ________________________________________________________ 10
APACHE. ___________________________________________________________ 11 2.1
HISTORIA. _____________________________________________________________ 11
2.2
DEFINICION ___________________________________________________________ 12
2.3
CARACTERISTICAS ______________________________________________________ 12
2.4
VERSIONES ____________________________________________________________ 13
2.5
COMPATIBILIDAD CON S.O _______________________________________________ 18
2.6
INSTALACION, CONFIGURACION Y ADMINISTRACION. ___________________ 21
2.7
VENTAJAS. ____________________________________________________________ 45
2.8
DESVENTAJAS. _________________________________________________________ 46
2.9
SEGURIDAD. ___________________________________________________________ 46
2.10
CUADRO COMPARATIVO APACHE VS IIS. ____________________________________ 48
I.I.S (INTERNET INFORMATION SERVER). __________________________________ 48 3.1
HISTORIA. _____________________________________________________________ 48
3.2
DEFINICION. ___________________________________________________________ 48
3.3
CARACTERISTICAS. ______________________________________________________ 49
3.4
VERSIONES. ___________________________________________________________ 51
3.5
COMPATIBILIDAD CON S.O. ______________________________________________ 51
3.6
INSTALACION, CONFIGURACION Y ADMINISTRACION. _________________________ 52
3.7
VENTAJAS. ____________________________________________________________ 61
3.8
DESVENTAJAS. _________________________________________________________ 62
3.9
SEGURIDAD. ___________________________________________________________ 62
Juan García Cruz
ITTLA
ALU-MAC
ii
4 INSTRUCCIONES PARALA ADMINISTRACION, GESTION Y ACTUALIZACION DE PORTALES. _____________________________________________________________ 63 5
SOFTWARE PARA SERVIDORES WEB. _____________________________________ 68
CONCLUSIONES _________________________________________________________ 75 BIBLIOGRAFIA. __________________________________________________________ 76
Juan García Cruz
ITTLA
ALU-MAC
iii
INDICE DE CUADROS Y FIGURAS FIG 1.1 SERVIDOR ................................................................................................................................ 3 FIG 1.2 MOONSHOT HP ....................................................................................................................... 6 FIG 1.3 POWER EDGE T110 II............................................................................................................... 8 FIG 1.4 DELL POWER EDGE M710HD .................................................................................................. 9 FIG 1.5 COMPATIBILIDAD APACHE .................................................................................................... 20 FIG 2.1 INSTALACION APACHE .......................................................................................................... 21 FIG 2.2 INSTALACION APACHE .......................................................................................................... 22 FIG 2.3 INSTALACION APACHE .......................................................................................................... 22 FIG 2.4 INSTALACION APACHE .......................................................................................................... 23 FIG 2.5 INSTALACION APACHE .......................................................................................................... 23 FIG 2.6 INSTALACION APACHE .......................................................................................................... 24 FIG 2.7 INSTALACION APACHE .......................................................................................................... 24 FIG 2.8 INSTALACION APACHE .......................................................................................................... 25 FIG 2.9 INSTALACION APACHE .......................................................................................................... 25 FIG 2.10 INSTALACION APACHE ........................................................................................................ 26 FIG 2.11 INSTALACION APACHE ........................................................................................................ 26 FIG 2.12 INSTALACION APACHE ........................................................................................................ 27 FIG 2.13 INSTALACION APACHE ........................................................................................................ 28 FIG 2.14 INSTALACION APACHE ........................................................................................................ 28 FIG 2.15 INSTALACION APACHE ........................................................................................................ 29 FIG 2.16 INSTALACION APACHE ........................................................................................................ 29 FIG 2.17 INSTALACION APACHE ........................................................................................................ 30 FIG 2.18 INSTALACION APACHE ........................................................................................................ 30 FIG 2.19 INSTALACION APACHE ........................................................................................................ 31 FIG 2.20 INSTALACION APACHE ........................................................................................................ 31 FIG 2.21 INSTALACION APACHE ........................................................................................................ 32 FIG 2.22 INSTALACION APACHE EN UBUNTU .................................................................................... 33 FIG 2.3 INSTALACION APACHE EN UBUNTU ..................................................................................... 34 FIG 2.4 INSTALACION APACHE EN UBUNTU ..................................................................................... 35 FIG 2.25 CONFIGURACION APACHE EN UBUNTU.............................................................................. 36 FIG 2.26 INSTALACION APACHE EN UBUNTU ................................................................................... 37 FIG 2.27 CONFIGURACION APACHE EN UBUNTU.............................................................................. 38 FIG 2.28 INSTALACION APACHE EN CENTOS ..................................................................................... 38 FIG 2.29 INSTALACION APACHE EN CENTOS ..................................................................................... 39 FIG 2.30 INSTALACION APACHE EN CENTOS ..................................................................................... 40 FIG 2.31 INSTALACION APACHE EN CENTOS ..................................................................................... 41 FIG 2.32 INSTALACION APACHE EN CENTOS ..................................................................................... 41 FIG 2.33 INSTALACION APACHE EN CENTOS ..................................................................................... 42 FIG 2.34 INSTALACION APACHE EN CENTOS ..................................................................................... 42 FIG 2.35 INSTALACION APACHE EN CENTOS ..................................................................................... 44 FIG 2.36 INSTALACION APACHE EN CENTOS ..................................................................................... 44
Juan García Cruz
ITTLA
ALU-MAC
iv
FIG.2.37 CUADRO COMPARATIVO APACHE VS IIS............................................................................. 48 FIG 3.1 CARACTERISTICAS IIS ............................................................................................................. 51 FIG. 3.2 COMPATIBILIDAD IIS ............................................................................................................ 52 FIG 3.3 INSTALACION ISS WINDOWS 8.............................................................................................. 52 FIG 3.4 INSTALACION ISS WINDOWS 8.............................................................................................. 53 FIG 3.5 INSTALACION ISS WINDOWS 8.............................................................................................. 53 FIG 3.6 INSTALACION ISS WINDOWS 8.............................................................................................. 54 FIG 3.7 INSTALACION ISS WINDOWS SERVER 2008 .......................................................................... 55 FIG 3.8 INSTALACION ISS WINDOWS SERVER 2008 .......................................................................... 56 FIG 3.9 INSTALACION ISS WINDOWS SERVER 2008 .......................................................................... 56 FIG 3.10 INSTALACION ISS WINDOWS SERVER 2008 ........................................................................ 57 FIG 3.11 INSTALACION ISS WINDOWS SERVER 2008 ........................................................................ 58 FIG 3.12 CONFIGURACION ISS WINDOWS SERVER 2008 .................................................................. 59 FIG 3.13 CONFIGURACION ISS WINDOWS SERVER 2008 .................................................................. 59 FIG 3.14 CONFIGURACION ISS WINDOWS SERVER 2008 .................................................................. 60 FIG 3.15 CONFIGURACION ISS WINDOWS SERVER 2008 .................................................................. 60 FIG 3.16 CONFIGURACION ISS WINDOWS SERVER 2008 .................................................................. 61
Juan García Cruz
ITTLA
1
INTRODUCCION. En la actualidad los servidores web son de mucha importancia por la gran cantidad de páginas web que son alojadas en ellos a diario, en las cuales se pueden encontrar cualquier tópico requerido. Un servidor web almacena documentos HTML, imágenes, archivos de texto, escrituras, y demás material Web, por lo cual en este documento se hace mención de los 2 servidores más conocidos hoy en día. En este escrito se presenta información basada en dos servidores los cuales son Apache server e IIS de Microsoft. En el capítulo 1 se hace referencia de lo que es un servidor tanto su definición como las características más comunes del mismo, al igual se hace mención de las especificaciones más importantes que se toman en cuenta a la hora de elegir un servidor. Las tendencias son otro punto muy importante que se trata en este capítulo así como los tipos de servidores que existen. El capítulo 2 habla sobre el servidor más usado en la actualidad, se refiere a Apache server, en este documento se redacta los inicios del mismo, su definición y características, sus versiones más recientes, la compatibilidad que tiene con los sistemas operativos existentes, se muestra también la forma de instalación ,configuración y administración, así como sus ventajas y desventajas terminando con un cuadro comparativo contra su rival de Microsoft del cual se hablara en el siguiente capítulo. En capítulo 3 se manejan los mismos temas que en capitulo anterior pero reflejados en el servidor comercial de Microsoft Internet Information Server (IIS) el cual su versión más reciente es la 8 y solo se puede instalar en Windows 8 y Windows server 2012. En el capítulo 4 se muestran las instrucciones más usadas para la configuración y gestión del servidor apache para los portales web que en este son las directivas de configuración del mismo. En el último capítulo se habla del software más común que se puede instalar junto a los servidores web antes mencionados.
Juan García Cruz
ITTLA
2
OBJETIVO. Dar a conocer el significado de lo que es un servidor web y sus características y tipos que existen hoy en día para poder entender su funcionamiento en un entorno profesional.
OBJETIVOS ESPECIFICOS.
Conocer las características del servidor Apache e Internet Information Server para poder llevar a cabo su instalación, configuración y administración. Conocer la compatibilidad de dichos servidores para realizar la instalación en el sistema operativo más conveniente. Conocer otras alternativas en cuanto a servidores web para tener más opciones a la hora de escoger un software para servidor web.
Juan García Cruz
ITTLA
3
1 SERVIDOR. 1.1 DEFINICION Un servidor es un ordenador remoto que provee los datos solicitados por parte de los navegadores de otras computadoras. Los Servidores almacenan información en forma de páginas web y a través del protocolo HTTP lo entregan a petición de los clientes (navegadores web) en formato HTML.
FIG 1.1 SERVIDOR
1.2 CARACTERISTICAS
Al iniciarse esperan a que lleguen las solicitudes de los clientes, desempeñan entonces un papel pasivo en la comunicación (dispositivo esclavo). Tras la recepción de una solicitud, la procesan y luego envían la respuesta al cliente. Por lo general, aceptan conexiones desde un gran número de clientes (en ciertos casos el número máximo de peticiones puede estar limitado). No es frecuente que interactúen directamente con los usuarios finales.
Juan García Cruz
ITTLA
4
1.3 ESPECIFICACIONES A continuación se muestran las especificaciones de algunos servidores de la marca DELL. Se basan en 4 configuraciones: económica, estándar, avanzada y más potencia. PROCESADOR Procesador Intel® Celeron® G530 2.40 GHz, 2M Cache, Dual Core (65W) Procesador Intel® Xeon® E3-1220v2 3.10 GHz, 8M Cache, Turbo, Quad Core/4T (69W) Procesador Intel® Xeon® E3-1220v2 3.10 GHz, 8M Cache, Turbo, Quad Core/4T (69W) Procesador Intel® Xeon® E3-1220 3.10 GHz, 8M Cache, Turbo, Quad Core/4T (80W) RAID Sin RAID - SATA Integrado, soporta de 1 a 3 Disco Duros conectados al controlador SATA Integrado Sin RAID - SATA Integrado, soporta de 1 a 3 Disco Duros conectados al controlador SATA Integrado Sin RAID - SATA Integrado, soporta de 1 a 3 Disco Duros conectados al controlador SATA Integrado Sin RAID - SATA Integrado, soporta de 1 a 3 Disco Duros conectados al controlador SATA Integrado MEMORIA 2GB Memory (1x2GB), 1600Mhz, Single Ranked, Low Volt UDIMM (speed is CPU dependent) 4GB Memory (1x4GB), 1600Mhz, Dual Ranked, Low Volt UDIMM (speed is CPU dependent) 4GB Memory (1x4GB), 1600Mhz, Dual Ranked, Low Volt UDIMM (speed is CPU dependent) 4GB Memory (1x4GB), 1600Mhz, Dual Ranked, Low Volt UDIMM (speed is CPU dependent) DISCO DURO 500GB (7200 RPM), SATA 3.5" 3Gps - Cableado
Juan García Cruz
ITTLA
5
500GB (7200 RPM), SATA 3.5" 3Gps - Cableado Disco Duro 1TB 7.2K RPM SATA 3.5" 500GB (7200 RPM), SATA 3.5" 3Gps - Cableado GARANTIA 1 Año de garantía Básica en el sitio con respuesta al siguiente día laborable. 1 Año de garantía Básica en el sitio con respuesta al siguiente día laborable. 1 Año de garantía Básica en el sitio con respuesta al siguiente día laborable. 1 Año de garantía Básica en el sitio con respuesta al siguiente día laborable. CHASIS PowerEdge T110 II Chassis with Cabled 4x3.5 Hard Drives PowerEdge T110 II Chassis with Cabled 4x3.5 Hard Drives PowerEdge T110 II Chassis with Cabled 4x3.5 Hard Drives PowerEdge T110 II Chassis with Cabled 4x3.5 Hard Drives UNIDAD OPTICA DVD-ROM (segundo dispositivo óptico Interno) DVD-ROM (segundo dispositivo óptico Interno) DVD-ROM (segundo dispositivo óptico Interno) DVD-ROM (segundo dispositivo óptico Interno)
1.4 TENDENCIAS. MOONSHOT HP. Tiene la capacidad de 45 servidores y ocupa un 80 % menos de espacio, consume un 89 % menos de energía y es un 77 % de menor precio que los tradicionales. La nueva estrategia Moonshot de servidores de HP está diseñado para atender las necesidades de datos de las redes sociales, la computación en la nube, la movilidad y las aplicaciones basadas en la gestión de datos (Big Data). La gran novedad tecnológica es que los servidores utilizan chips que habitualmente llevan los smartphones y las tabletas por lo que gastan menos energía y utilizan un espacio de alta densidad a precios más bajos. Juan García Cruz
ITTLA
6
El primer servidor se denomina HP ProLian Moonshot que cuenta con el procesador Intel Atom s1200 y soporta cargas de trabajo de alojamientos web.
FIG 1.2 MOONSHOT HP SERVIDORES SYSTEM X Los nuevos sistemas x86 de IBM le ayudan a alcanzar sus objetivos de TI. Elegir la plataforma IBM system x altamente flexible, resaliente y escalable le proporciona las herramientas necesarias para aprovechar la oportunidad de hacer crecer su negocio. Los servidores x86 de IBM dan soporte a Microsoft Windows, Linux y la virtualización. Estos servidores son sistemas inteligentes diseñados para reducir los costos y la complejidad. SERVIDORES PURESYSTEMS Combina la flexibilidad de un sistema de aplicación general, la elasticidad que aporta el entorno de cloud computing y la simplicidad de un dispositivo. IBM PureSystems le permite:
Consolidar: reduce la complejidad, permitiendo recortar los costos de gestión y acelerar la prestación de servicios. Optimizar: Integra diversos componentes y reasigna recursos para reducir el tiempo de gestión y los gastos. Innovar: automatiza rápidamente una variedad de funciones de TI, presta servicios con mayor rapidez y responde de forma rentable a los cambios en las demandas. Acelerar el cloud: Ayuda a su empresa a adoptar el cloud de forma rápida y sencilla, aportándole una ventaja competitiva.
Juan García Cruz
ITTLA
7
Acelerar la analítica: analiza grandes volúmenes de datos históricos en cuestión de minutos en lugar de días.
SERVIDORES SYSTEM POWER Con Power Systems, las empresas adoptan sistemas informáticos más inteligentes superando a la competencia. Estos servidores ayudan a los negocios a reducir costos y mejorar la eficiencia, impulsando conocimiento más rápido al permitir nuevas cargas de trabajo de computación intensiva. • System p.- ofrece una gran capacidad para consolidar aplicaciones y servidores Unix, Linux en una plataforma poderosa, abierta, probada, adaptable y escalable. • System i.- plataforma que permite implementar sistemas integrados en donde corren simultáneamente aplicaciones desarrolladas en IBM i, IBM AIX, Linux y Microsoft Windows en un mismo servidor.
SERVIDORES BLADE IBM BladeCenter ofrece una amplia selección de tecnologías de procesador y sistemas operativos que permiten a los clientes poner en marcha diferentes cargas de trabajo dentro de una misma infraestructura tecnológica individual. Integra servidores, almacenamiento y networking reduciendo la complejidad, simplificando la administración de TI y mejorando la flexibilidad mientras dirigen el costo total de la propiedad. A diferencia de otras marcas, las navajas Blade Center, switches y adaptadores son interoperables en todos los chasis, proveyendo soluciones de migración “mix and match”. DELL™ POWEREDGE™ T110 I El Dell™ PowerEdge™ T110 II es idóneo para ser el primer servidor de las pequeñas empresas, ya que ofrece la combinación adecuada de valor, fiabilidad y funciones de colaboración y protección de datos para mejorar la productividad y asegurar la continuidad empresarial. El PowerEdge T110 II es un servidor ampliable, adaptable y fácil de utilizar; ideal para las oficinas pequeñas y con capacidad para ampliarse al ritmo de crecimiento de su empresa.
Juan García Cruz
ITTLA
8
FIG 1.3 POWER EDGE T110 II POWER EDGE M710HD El servidor blade PowerEdge M710HD lo ayuda a ejecutar aplicaciones de negocios de forma eficiente, disminuir el volumen de su centro de datos, facilitar la administración de datos y recortar el tiempo de mantenimiento de sistemas. Con un rendimiento masivo de E/S, un potente procesamiento de núcleos y una memoria de densidad ultra alta, el servidor blade PowerEdge M710HD soporta las cargas de trabajo más resistentes.
Implementación flexible que se puede alcanzar mediante opciones de iSCSI, Ethernet, canal de fibra e InfiniBand múltiples (10 GbE, QDR IB, 8 Gb FC y más) Tarjeta dependiente de red modular (NDC) para opciones futuras de conectividad de red integrada Gran potencia de procesamiento de hasta 12 núcleos del procesador Intel® Xeon® serie 5600 Densidad RAM maximizada con 18 ranuras DIMM para ampliación económica de memoria DDR3 La memoria direccionable expandida en un blade de dos sockets y altura media le permite aprovechar más máquinas virtuales desde sus licencias de hipervisor
Juan García Cruz
ITTLA
9
existentes y asĂ ahorrar dinero y aumentar sus implementaciones virtualizadas utilizando recursos existentes.
FIG 1.4 DELL POWER EDGE M710HD
Juan GarcĂa Cruz
ITTLA
10
1.5 CLASIFICACION. A continuación se muestran los diferentes tipos de servidores que existen hoy en día.
Servidor de impresiones: controla una o más impresoras y acepta trabajos de impresión de otros clientes de la red, poniendo en cola los trabajos de impresión (aunque también puede cambiar la prioridad de las diferentes impresiones), y realizando la mayoría o todas las otras funciones que en un sitio de trabajo se realizaría para lograr una tarea de impresión si la impresora fuera conectada directamente con el puerto de impresora del sitio de trabajo.
Servidor de correo: almacena, envía, recibe, enruta y realiza otras operaciones relacionadas con el correo electrónico para los clientes de la red.
Servidor de fax: almacena, envía, recibe, enruta y realiza otras funciones necesarias para la transmisión, la recepción y la distribución apropiadas de los fax.
Servidor de la telefonía: realiza funciones relacionadas con la telefonía, como es la de contestador automático, realizando las funciones de un sistema interactivo para la respuesta de la voz, almacenando los mensajes de voz, encaminando las llamadas y controlando también la red o el Internet, p. ej., la entrada excesiva de la voz sobre IP (VoIP), etc.
Servidor proxy: realiza un cierto tipo de funciones a nombre de otros clientes en la red para aumentar el funcionamiento de ciertas operaciones (p. ej., prefetching y depositar documentos u otros datos que se soliciten muy frecuentemente), también proporciona servicios de seguridad, o sea, incluye un cortafuegos. Permite administrar el acceso a internet en una red de computadoras permitiendo o negando el acceso a diferentes sitios Web.
Servidor del acceso remoto (RAS): controla las líneas de módem de los monitores u otros canales de comunicación de la red para que las peticiones conecten con la red de una posición remota, responde llamadas telefónicas entrantes o reconoce la petición de la red y realiza la autentificación necesaria y otros procedimientos necesarios para registrar a un usuario en la red.
Servidor de uso: realiza la parte lógica de la informática o del negocio de un uso del cliente, aceptando las instrucciones para que se realicen las operaciones de un sitio de trabajo y sirviendo los resultados a su vez al sitio de trabajo, mientras que el sitio de trabajo realiza la interfaz operadora o la Juan García Cruz
ITTLA
11
porción del GUI del proceso (es decir, la lógica de la presentación) que se requiere para trabajar correctamente.
Servidor web: almacena documentos HTML, imágenes, archivos de texto, escrituras, y demás material Web compuesto por datos (conocidos colectivamente como contenido), y distribuye este contenido a clientes que la piden en la red.
Servidor de base de datos: provee servicios de base de datos a otros programas u otras computadoras, como es definido por el modelo clienteservidor. También puede hacer referencia a aquellas computadoras (servidores) dedicadas a ejecutar esos programas, prestando el servicio.
Servidor de reserva: tiene el software de reserva de la red instalado y tiene cantidades grandes de almacenamiento de la red en discos duros u otras formas del almacenamiento (cinta, etc.) disponibles para que se utilice con el fin de asegurarse de que la pérdida de un servidor principal no afecte a la red. Esta técnica también es denominada clustering.
Servidor de Seguridad: Tiene software especializado para detener intrusiones maliciosas, normalmente tienen antivirus, antispyware, antimalware, además de contar con cortafuegos redundantes de diversos niveles y/o capas para evitar ataques, los servidores de seguridad varían dependiendo de su utilización e importancia.
2
APACHE.
2.1 HISTORIA. En marzo de 1989 Tim Berners Lee, un científico inglés que trabaja en el CERN (Suiza) propone un nueva forma de gestionar la ingente cantidad de información de los proyectos del CERN. Se trata de una red de documentos hiperenlazados (hipertexto tal y como Ted Nelson lo denominó ya en 1965); estaba naciendo el WWW. Hubo que esperar hasta noviembre de 1990 hasta que el primer software WWW vio la luz: en un paquete llamado WorldWideWeb se incluía un navegador web de interfaz gráfica y un editor WYSIWYG (What You See Is What You Get - lo que ve en la pantalla es lo que obtiene como resultado). Dos años después, la lista de servidores WWW contaba con una treintena de entradas, entre los cuales ya se encontraba el NCSA HTTPd. La verdadera historia de Apache comienza cuando en marzo de 1995, Rob McCool abandona el NCSA. Apache 0.2 vería la luz el 18 de marzo de 1995 basado en el servidor NCSA httpd 1.3 realizado por el propio Rob McCool durante Juan García Cruz
ITTLA
12
su estancia en NCSA. Durante esos primeros meses, Apache era una colección de parches aplicados al servidor NCSA, hasta que Robert Thau lanzara Shambhala 0.1, una nueva implementación casi completa que ya incluía la API para los módulos que ha resultado ser tan exitosa. Habría que esperar a enero de 1996 para poder disfrutar de la primera versión estable de Apache, la Apache 1.0, que incluía la carga de módulos en tiempo de ejecución a modo de pruebas además de otras funcionalidades interesantes. Los primeros meses de ese año fueron especialmente fructíferos para el proyecto, ya que la versión 1.1 se publicó apenas dos meses después contando con módulos de autentificación contra bases de datos (como MySQL). Desde entonces hasta la actualidad, la total conformidad con el estándar HTTP 1.1 (incluido en abril de 1997 en Apache 1.2), la inclusión de la plataforma Windows NT (que comenzó ya en julio de 1997 con las versiones en pruebas de Apache 1.3), la unificación de los archivos de configuración en uno solo (habría que esperar a octubre de 1998 ya Apache 1.3.3 para ello) y el lanzamiento, todavía en pruebas, de la siguiente generación de Apache, Apache 2. Entremedias, en junio de 1998, IBM decidió que el motor tras su producto WebSphere fuera Apache en lugar de desarrollar un servidor HTTP propio. Esto se vio como un gran espaldarazo por parte del gigante azul al proyecto Apache y al software libre en general, aunque para facilitar este hecho hubiera que cambiar ligeramente la licencia Apache original.
2.2 DEFINICION El servidor HTTP Apache es un servidor web HTTP de código abierto, para plataformas Unix (BSD, GNU/Linux), Windows, Macintosh y otras, que implementa el protocolo HTTP/1.12 y la noción de sitio virtual.
2.3 CARACTERISTICAS Apache es un servidor web flexible, rápido y eficiente, continuamente actualizado y adaptado a los nuevos protocolos (HTTP 1.1). Entre sus características destacan:
Multiplataforma Es un servidor de web conforme al protocolo HTTP/1.1 Modular: Puede ser adaptado a diferentes entornos y necesidades, con los diferentes módulos de apoyo que proporciona, y con la API de programación de módulos, para el desarrollo de módulos específicos. Basado en hebras en la versión 2.0 Incentiva la realimentación de los usuarios, obteniendo nuevas ideas, informes de fallos y parches para la solución de los mismos.
Juan García Cruz
ITTLA
13
Se desarrolla de forma abierta Extensible: gracias a ser modular se han desarrollado diversas extensiones entre las que destaca PHP, un lenguaje de programación del lado del servidor.
2.4 VERSIONES Actualmente Apache se distribuye en dos "ramas" separadas de código, que corresponden a la versión 2.0.xx y la versión 1.3.xx. La versión 1.3 corresponde a la edición clásica de Apache, especialmente optimizada para las plataformas Unix. En la versión 2.0 se introducen cambios en el funcionamiento interno que permiten su utilización en otros sistemas operativos no derivados de Unix. Si el servidor web es una plataforma basada en Unix, el rendimiento de ambas versiones de Apache es prácticamente equivalente. En cambio, en otras plataformas como Windows y OS/2, la versión 2.0 ofrece un rendimiento notablemente superior. APACHE-2.0 Esta nueva versión soluciona tres problemas de seguridad detectados en las versiones anteriores de Apache 2.0.*. La primera de las vulnerabilidades corresponde una condición de carrera en el proceso de conexiones con un corto periodo de vida y que puede ser utilizada para provocar un ataque de denegación de servicio. Esta vulnerabilidad afecta los servidores Apache ejecutándose en determinadas versiones de Solaris, AIX y Tru64. La segunda vulnerabilidad radica en la posibilidad de que un usuario remoto pueda añadir caracteres arbitrarios en los mensajes de error escritos en el archivo de registro de errores del servidor. Esta vulnerabilidad puede ser utilizada para atacar algunos emuladores de Terminal en el momento que se visualiza el contenido de este archivo de registro de errores. La tercera y última vulnerabilidad es una pérdida de memoria, explotable de forma remota, en el módulo mod_ssl. Esto puede ser utilizado para consumir toda la memoria del servidor, provocando un ataque de denegación de servicio. Apache 1.3.31 En lo que se refiere a la versión "clásica" de Apache, las vulnerabilidades de
Juan García Cruz
ITTLA
14
seguridad
solucionadas
son
cuatro.
La primera se encuentra en el módulo mod_digest y consiste en que no se verifica correctamente las respuestas enviadas por el cliente remoto cuando se utiliza AuthNonce. La segunda vulnerabilidad radica en la posibilidad de que un usuario remoto pueda añadir caracteres arbitrarios en los mensajes de error escritos en el archivo de registro de errores del servidor. Esta vulnerabilidad puede ser utilizada para atacar algunos emuladores de Terminal en el momento que se visualiza el contenido de este archivo de registro de errores. La tercera vulnerabilidad radica en la posibilidad de que el servidor web deje de procesar nuevas conexiones hasta que se liberen los sockets bloqueados por un atacante remoto bajo circunstancias muy especiales. La cuarta y última vulnerabilidad se encuentra en las reglas de filtro de direcciones IP cuando se indican sin especificar su máscara de red. Mod_ssl Simultáneamente a la publicación de Apache 1.3.31, también se ha publicado una nueva versión de mod_ssl. Este es un módulo para la versión 1.3.xx de Apache que incorpora la capacidad criptográfica necesaria para que el servidor web pueda utilizar los protocolos SSL (SSL v2/v3) y TLS (TLS v1) para el cifrado del tráfico. Mod_ssl se utiliza para la configuración de servidores HTTPS. APACHE 1.0
API para las extensiones de servidor. El modelo que hemos adoptado todavía se basa en procesos de mínimo que se bifurcan de larga duración, pero en lugar de especificar una serie de procesos persistentes, el web-master especifica un número máximo y mínimo de los procesos para ser "libre". Apoyo a los contenidos a través de la negociación de las lenguas MultiViews a través de los nuevos comandos LanguagePriority Limpiezas internas significativas y reordenamientos. Las dos consecuencias visibles externamente de esto es que casi todos los límites fijos sin control se han ido, y que el servidor es un poco más selectivos acerca de la sintaxis del archivo de configuración.
APACHE 1.1
Juan García Cruz
ITTLA
15
Soporte para conexiones persistentes Keep-Alive Apache ahora tiene (opcional) soporte para conexiones persistentes, tal como se define en el proyecto de HTTP/1.1. Este protocolo, con el apoyo de un número de servidores y navegadores (incluyendo Netscape Navigator 2.0) actuales HTTP se ha demostrado que aumenta la velocidad de transferencia de documentos hasta en un 50% en algunos casos. Nuevo no IP Intensivo VirtualHost Apoyo El apoyo de Apache de hosts virtuales se ha mejorado para ser capaz de utilizar la información enviada por algunos de los nuevos navegadores web para determinar el servidor que se accede, sin necesidad de una dirección IP adicional para cada huésped. Escuche varias direcciones y puertos mediante el nuevo Escuche directiva, Apache puede escuchar a más de un puerto y dirección IP, utilizando el mismo conjunto de configuración. Estado del módulo Apache ahora contiene un módulo que da la web-master precisa y al día la información sobre el estado del servidor y su consumo de recursos. También se da el estado actual de cada proceso de servidor incluyendo la URL actual que se está procesando. Por ejemplo, echa un vistazo el estado del servidor www.apache.org . Módulo Information Server Este módulo ofrece una gran cantidad de información acerca de los otros módulos instalados, sus directivas, y sus configuraciones. Es de gran ayuda en la depuración de problemas de configuración. Por ejemplo, echa un vistazo a la información sobre el servidor www.apache.org . Experimental Caching Proxy Server Apache ahora puede actuar como un servidor proxy HTTP, permitiendo a los clientes detrás de cortafuegos para usar el servidor para tener acceso al mundo exterior. Además, se puede almacenar en caché los documentos lo proxies, acelerando el acceso a los documentos solicitados con frecuencia. Protección de acceso basado en URL Además de tener acceso a la comprobación y autorización por nombre de archivo (con <Directory> ), el nuevo <Location> Directiva permite la protección de la URL.
APACHE 1.2
Un nuevo conjunto de servidor de directivas de inclusión permite que el usuario cree mejor las páginas Web. Esto incluye el número de nuevas características, como la capacidad de establecer las variables y el uso de HTML condicional.
Juan García Cruz
ITTLA
16
Apache ahora admite la ejecución de scripts CGI como otros usuarios distintos al usuario del servidor. Una serie de controles de seguridad están integradas en tratar de hacerlo lo más seguro posible. CGI entorno de depuración ScriptLog le permite ahora configurar un registro que registra todas las entradas y salidas a la fallida scripts CGI. Esto incluye las variables de entorno, los encabezados de entrada, los datos posteriores, la producción, y más. Esto hace que los scripts CGI mucho más fácil de depurar. Límites de recursos para Scripts CGI Nuevas directivas permiten la limitación de los recursos utilizados por los scripts CGI (por ejemplo, tiempo máximo de CPU). Esto es útil en la prevención de los procesos de 'fugitivos' CGI. La directiva Redirect puede volver redirecciones permanentes o temporales, "Gone" o "Ver Otros" de estado HTTP. El proceso de configuración de Apache para la compilación se ha simplificado. La opción de directiva ahora puede añadir o eliminar opciones de los actualmente en vigor, en lugar de siempre reemplazarlos. De línea de comandos Ayuda El -h opción de línea de comandos ahora enumera todas las directivas disponibles. Módulo de títulos opcionales para configurar o quitar encabezados HTTP La opción mod_headers módulo puede ser utilizado para establecer cabeceras personalizadas en la respuesta HTTP. Se puede añadir a las cabeceras existentes, reemplazar o eliminar encabezados de la respuesta. Directivas de configuración condicionales Un nuevo <IfModule> sección permite a las directivas que se habilitan sólo si un determinado módulo se carga en el servidor.
APACHE 1.3
Al acceder a servidores FTP con mod_proxy y el método ftp, los listados de directorios ahora permiten una navegación más fácil. La ruta completa del directorio que se muestra en la línea de cabecera se compone actualmente de una lista de hacer clic en enlaces que saltan directamente al nivel de subdirectorio seleccionado. Las directivas de inclusión de control de flujo basadas en cadenas del lado del servidor (SSI) proporcionados por mod_include ahora incluyen la comparación de menor que (<), menor que o-igual (<=), mayor que (>), y mayor que o igual (> =). Anteriormente comparaciones sólo pueden hacerse por la igualdad o desigualdad. Juan García Cruz
ITTLA
17
El directorio predeterminado para el apache ServerRoot cambió de NCSA compatible el / Usr / local / etc / httpd / a / Usr / local / apache /. Este cambio sólo se refiere al ajuste por defecto (y la documentación), es por supuesto posible anular usando la -d ServerRoot y-f httpd.conf interruptores al iniciar apache. Si un directorio está marcado para su visualización con FancyIndexing, la página del listado general sigue un formato predefinido utilizando HTML generado por el servidor. El BrowserMatch * directivas de Apache 1.2 se han sumado algunos hermanos más potentes: SetEnvIf y SetEnvIfNoCase. Estas te permiten configurar las variables de entorno para el servidor y el uso de CGI en base a todos los tipos de atributos de la petición.
APACHE 2.0
En los sistemas Unix que soportan hebras POSIX, la nueva versión de Apache puede ejecutarse en modo híbrido multiproceso-multihebra. Esto mejora la escalabilidad para muchas aunque no para todas las configuraciones. El sistema de configuración y compilación ha sido escrito de nuevo desde cero para basarlo en autoconf y libtool. Esto hace que el sistema de configuración de Apache se parezca ahora más al de otros proyectos Open Source. La nueva versión tiene la infraestructura necesaria para servir distintos protocolos. Por ejemplo, se ha escrito el módulo mod_echo. La versión 2.0 de Apache es más rápida y más estable en sistemas que no son tipo Unix, tales como BeOS, OS/2 y Windows, que la versión antigua. Con la introducción de módulos de multiprocesamiento (MPMs) específicos para cada plataforma y del Apache Portable Runtime (APR), estas plataformas tienen ahora implementada su propia API nativa, evitando las capas de emulación POSIX que provocan problemas y un bajo rendimiento. La API para los módulos ha cambiado significativamente en la nueva versión. Muchos de los problemas de ordenación y prioridad de módulos de la versión 1.3 deben haber desaparecido. Apache 2.0 hace automáticamente mucho de lo que es necesario, y la ordenación de módulos se hace ahora por hooks, lo que ofrece una mayor flexibilidad. También se han añadido nuevas llamadas que ofrecen capacidades adicionales sin tener que parchear el núcleo del servidor Apache. Los módulos de Apache pueden ahora escribirse para que se comporten como filtros que actúan sobre el flujo de contenidos tal y como salen del servidor o tal y como son recibidos por el servidor. Esto permite, por
Juan García Cruz
ITTLA
18
ejemplo, que el resultado de un script CGI sea analizado por las directivas Server Side Include usando el filtro INCLUDES del módulo mod_include. El módulo mod_ext_filter permite que programas externos actúen como filtros casi del mismo modo que los CGIs pueden actuar como handlers. Los mensajes de error que se envían a los navegadores están ahora disponibles en diferentes idiomas, usando documentos SSI. Estos mensajes pueden personalizarse por el administrador del sitio web para conseguir un look and feel coherente con el resto de los contenidos. Muchas directivas que podían inducir a confusión han sido simplificadas. Las directivas Port y BindAddress han desaparecido; para configurar la dirección IP en la que escucha el servidor ahora se usa únicamente la directiva Listen; la directiva ServerName especifica el nombre del servidor y el número del puerto solo para re direccionamiento y reconocimiento de host virtual.
APACHE 2.2
2.5 COMPATIBILIDAD CON S.O
Apache Web Server presenta alta compatibilidad para cualquier sistema operativo de hoy en dia, aunque la mejor compatibilidad es con el sistema operativo Unix y todas sus versiones dado que Apache Web Server fue diseñado desde un principio bajo el servidor HTTPd(demonio http de Unix). La versión para Microsoft Windows todavía posee algunos bugs. En cuanto a la versión para la Apple, este no está todavía muy bien probada, por lo tanto no es muy segura todavía. Algunos de los sistemas operativos para los cuales Apache Web Server tiene binarios son:
Aix Aux
Juan García Cruz
ITTLA
19
Beos Bs2000-osd Bsdi Cygwin Darwin Dgux Digitalunix Freebsd Hpux Linux Macosx Netbsd Netware Openbsd Os2 Os390 Qnx Reliantunix Sinix Solaris Sunos Unixware Win32
UNIX El principal problema de hardware que afecta el rendimiento de un Servidor Web es la memoria RAM. Un Servidor Web nunca debería hacer Swap entre memoria RAM y discos, dado que el Swapping incrementa la latencia de cada pedido más de un punto que el usuario considera “suficientemente rápido”. Esto causa que el usuario presione Stop y luego haga una recarga de la página, incrementando así la carga. Los demás tópicos en cuanto a requerimientos de software es lo necesario: un CPU lo suficientemente rápido, una Tarjeta de Red lo suficientemente rápida y unos discos duros lo suficientemente rápidos, donde “suficientemente rápidos” es algo que debe ser determinado por experimentación. No hay diferencias significativas en cuanto a diferentes sistemas operativos de Unix (Solaris, Red Hat, Mandrake, etc.).
Juan García Cruz
ITTLA
20
Ahora en cuanto a los requerimientos comunes necesarios por las distribuciones para Unix tenemos:
Mínimo de 64 MB. de memoria RAM. Mínimo de 50 MB. de disco duro para la instalación del Apache solamente. Tener instalados los últimos drivers para TCP/IP en sus sistema. Este seguro de tener instalado un compilador ANSI-C. El GNU Compiller (GCC) es el recomendado.
WINDOWS En las distribuciones del Apache Web Server para Windows se tienen ciertas restricciones que se deben saber antes de bajar los archivos del Apache a su versión del sistema operativo Win32, a continuación nombramos las restricciones que deben de ser satisfechas para poder instalar con satisfacción el Apache Web Server en Win32:
Para Windows95 es necesario descargar e instalar el Windows Socket 2 Update. Windows NT 4.0, 98, ME y 2000 ya vienen con este Update por lo tanto no es necesario hacer este paso. Para Windows XP es necesario descargar y instalar el Windows XP Service Pack 1, además es recomendable deshabilitar el driver para QoS (“Quality of Service”), dado que Apache no soporta las extensiones de QoS del API de WinSock.
En común para todas las distribuciones de Win32 es necesario también poseer los siguientes requerimientos:
Mínimo de 64 MB. de memoria RAM. Mínimo de 50 MB. de disco duro para la instalación del Apache solamente.
FIG 1.5 COMPATIBILIDAD APACHE
Juan García Cruz
ITTLA
2.6
21
INSTALACION, CONFIGURACION Y ADMINISTRACION.
WINDOWS 7 Aquí se muestra como instalar apache en Windows 7.
FIG 2.1 INSTALACION APACHE La versión del servidor http de Apache para el sistema operativo Windows 7 se encuentra disponible en el sitio oficial de la Fundación Apache http://httpd.apache.org. Cuando abrimos en nuestro navegador el sitio web del servidor http Apache, se encuentra a la izquierda la sección de Download!, damos un click en from a mirror.
Juan García Cruz
ITTLA
22
FIG 2.2 INSTALACION APACHE
Escogemos la versi贸n del servidor apache.
FIG 2.3 INSTALACION APACHE
Despu茅s escogemos una versi贸n para Windows.
Juan Garc铆a Cruz
ITTLA
23
FIG 2.4 INSTALACION APACHE
Click en el link y click en Guardar.
FIG 2.5 INSTALACION APACHE
Guardaremos el instalador como aparece en la imagen en el escritorio de Windows 7 para encontrarlo fácilmente. Click en Guardar.
Juan García Cruz
ITTLA
24
FIG 2.6 INSTALACION APACHE
Esperamos una par de minutos a que termine la descarga de nuestro instalador de Apache.
FIG 2.7 INSTALACION APACHE
Una vez completada la descarga damos un doble click en el instalador y click en Ejecutar. Juan GarcĂa Cruz
ITTLA
25
FIG 2.8 INSTALACION APACHE
La primera ventana que nos aparece es la de "Welcome to the Installation Wizard for Apache HTTP Server 2.2.17", click Next.
FIG 2.9 INSTALACION APACHE
Juan GarcĂa Cruz
ITTLA
26
Una vez en los Términos y Condiciones de uso, leemos la licencia, y damos un click en I accept the terms in the license agreement para poder continuar y luego click en Next.
FIG 2.10 INSTALACION APACHE
En este paso hay información proporcionada por el instalador de Apache, ya que ésta es de importancia para el buen uso del servidor HTTP de Apache, la cual incluye la ubicación de la documentación como en http://httpd.apache.org/docs/2.2. Luego de leer, click en Next.
FIG 2.11 INSTALACION APACHE
Juan García Cruz
ITTLA
27
Ahora en este paso de la instalación ingresamos la información del servidor Apache. Como usaremos el servidor Apache en un entorno local para nuestras pruebas escribimos lo siguiente: Network Domain: localhost Server Name: localhost Administrator's Email: cualquier@email.com Estos datos los podemos cambiar después. Seleccionamos for All Users, on port 80, as a Service -- Recommended. Esta opción dejará nuestro servidor Apache corriendo como un servicio más de windows 7 cada vez que iniciemos nuestro pc. Click en Next.
FIG 2.12 INSTALACION APACHE
En este paso de la instalación Typical es suficiente para desarrollar con PHP y MySQL localmente en un entorno de pruebas en nuestro pc. Click en Next para continuar.
Juan García Cruz
ITTLA
28
FIG 2.13 INSTALACION APACHE
En este paso el instalador de Apache nos sugiere la ubicación en donde se instalará el servidor HTTP de Apache. Recomiendo cambiar la ubicación a C:\apache ya que esto nos permitirá trabajar con Apache fácilmente y tendremos los archivos fuera de nuestra carpeta de sistema. Click en Change...
FIG 2.14 INSTALACION APACHE
Juan García Cruz
ITTLA
29
En Folder name escribimos C:\apache y damos click en OK.
FIG 2.15 INSTALACION APACHE
Una vez tenemos la nueva ubicación c:\apache en donde se instalará el servidor http de Apache continuamos dando un click Next.
FIG 2.16 INSTALACION APACHE
Juan García Cruz
ITTLA
30
En este paso ya tenemos toda la configuraci贸n lista. Un click en Install y todo sera instalado en nuestro pc.
FIG 2.17 INSTALACION APACHE
En la ventana de "Control de cuentas de usuario" permitimos la ejecuci贸n del instalador de Apache dando un click en S铆 para continuar.
FIG 2.18 INSTALACION APACHE Juan Garc铆a Cruz
ITTLA
31
Esperamos un par de minutos a que termine la instalaci贸n del servidor http de Apache.
FIG 2.19 INSTALACION APACHE
En este paso una vez terminada la instalaci贸n del servidor http de Apache sin ning煤n error cerramos la ventana dando un click en Finish.
FIG 2.20 INSTALACION APACHE Juan Garc铆a Cruz
ITTLA
32
Ahora lo más importante. Una vez finalizado el proceso de instalación abrimos nuestro navegador web y verificamos si está en funcionamiento nuestro recién instalado servidor web de Apache escribiendo en la barra de direcciones http://localhost y si todo salió durante la instalación veremos este sencillo mensaje It works! .Con esto queda instalado el servidor http de Apache.
FIG 2.21 INSTALACION APACHE
La carpeta donde se colocan los proyectos se llama htdocs dentro de la carpeta de apache que se creó durante la configuración. INSTALACION EN UBUNTU La instalación del servidor apache en Ubuntu se puede hacer por medio de la terminal o por medio del centro de software de Ubuntu. Instalación por terminal. Tan solo tienes que oprimir esta combinación de teclas: CTRL + ALT + T y escribir la siguiente orden:
Juan García Cruz
ITTLA
33
FIG 2.22 INSTALACION APACHE EN UBUNTU
Después ingresa la clave de root o administrador, es decir la misma que creaste al momento de instalar el sistema.
La
orden
se
muestra
en
la
imagen
tiene
la
siguiente
explicación:
la primera palabra (sudo) es un comando usado para ejecutar procesos como root sin importar si el usuario en donde iniciados tiene o no permiso para ejecutar dicho proceso. El comando apt-get hace referencia al sistema de paquetes usado en Ubuntu (apt) que se encarga de todas las tareas relacionadas con el software instalado en el sistema
El parámetro install nos indica que lo que queremos cambiar en el software del sistema es la instalación de un paquete, si quisieras desinstalar algo puedes usar el comando remove
Juan García Cruz
ITTLA
34
Por ultimo tenemos el nombre del paquete o los paquetes que queremos instalar. Instalación
por
el
centro
de
software
de
Ubuntu.
Este método es el más sencillo aunque no siempre se puede instalar de esta manera especialmente en entornos donde no hay siquiera un entorno gráfico, pero para las personas que están aprendiendo este sistema es perfecto para comenzar.
FIG 2.3 INSTALACION APACHE EN UBUNTU
Para iniciar el proceso de instalación basta con abrir el centro de software, buscar el paquete apache2 y oprimir el botón instalar.
Uso Para saber si nuestro servidor funciona correctamente tenemos que abrir el navegador web y escribir como url:
Juan García Cruz
ITTLA
35
http://localhost ohttp://127.0.0.1
En esta última opción puedes también la dirección ip de la máquina que estés usando.
Finalmente se verá algo como esto:
FIG 2.4 INSTALACION APACHE EN UBUNTU
Configuración del servidor apache. Para configurar el servidor apache debes buscar los archivos destinados para ello, los cuales están en la carpeta/etc/apache2. Cuando hacemos configuraciones al servidor apache es necesario reiniciar este para poder aplicar los cambios, para ellos vamos a usar un sencillo comando: sudo service apache2 start
Para este comando también es posible cambiar el parámetro restart por stop y start para parar o arrancar apache respectivamente. Es preciso destacar que podemos usar el parámetro reload cuando es imposible recargar servidores con alto flujo de tráfico. Cambiar la raíz del directorio
Juan García Cruz
ITTLA
36
Al instalar apache en ubuntu la carpeta en donde podemos ubicar los archivos que componen una página web es/var/www, pero por razones de facilidad hay muchas personas que cambian esta carpeta por una que este ubicada en la carpeta personal (home).
Debido a que los archivos que están dentro de la carpeta /etc/apache2 solo pueden ser editados por el usuario root tendremos que usar el comando sudo o gksu para poder configurar apache, para ello oprime la combinación de teclas . ALT + F2 y escribe la orden:
FIG 2.25 CONFIGURACION APACHE EN UBUNTU
Busca el archivo default el cual carpeta /etc/apache2/sites/available.
se
encuentra
ubicado
Una vez que hayas abierto el abierto este archivo veras algo como esto:
Juan García Cruz
en
la
ITTLA
37
FIG 2.26 INSTALACION APACHE EN UBUNTU
Finalmente cambia las líneas en donde este escrito /var/www por la carpeta en donde quieras guardar tus archivos, por ejemplo /home/usuario/archivosweb. Módulos de Apache. Apache cuenta con módulos para aumentar su funcionalidad, entre los módulos mas usados de apache son:
mod_cband mod_perl mod_php mod_python mod_rexx mod_ruby mod_security Algunos de estos módulos (y otros más) pueden encontrarse en la carpeta modsavailable la cual contiene aquellos módulos que están disponibles para su uso y los módulos que están corriendo en el servidor pueden verse en la carpeta modsenabled. Crear un espacio de usuario. En apache es posible crear un espacio web para cada usuario, es decir que podemos usar la carpeta personal de cada usuario para alojar por ejemplo archivos de una aplicación web.
Juan García Cruz
ITTLA
38
Para ello debes activar el módulo usedir entrando a la carpeta mods-available y creando los enlaces simbólicos en la carpeta mods-enabled, esto lo haremos desde la terminal escribiendo el siguiente comando: cd /etc/apache2/mods-available available/userdir* .
&&
sudo
ln
-s
/etc/apache2/mods-
Para acceder vía web a la página de un usuario, debes escribir esta dirección cambiando la palabra usuario por el nombre de usuario que tengas, por ejemplo http://localhost/~usuario/
FIG 2.27 CONFIGURACION APACHE EN UBUNTU
INSTALACION EN LINUX CENTOS
FIG 2.28 INSTALACION APACHE EN CENTOS
Juan García Cruz
ITTLA
39
Una vez en el escritorio de nuestro Linux CentOS abrimos una consola o terminal para iniciar.
FIG 2.29 INSTALACION APACHE EN CENTOS
Escribo los siguientes comandos: whoami El comando anterior sirve para mostrar bajo que usuario estoy ejecutando la consola. pwd Este comando mostrará el directorio actual en el que me encuentro. su NOTA: Para instalar Apache necesitamos elevar nuestros privilegios a root así que ingresamos el comando anterior y nuestro password de súper usuario de Linux CentOS whoami Nuevamente ejecutamos el comando anterior para mostrar bajo que usuario estamos ejecutando la consola
Juan García Cruz
ITTLA
40
pwd Siempre nos encontramos bajo el mismo directorio. Aca esto no es importante de momento. .
FIG 2.30 INSTALACION APACHE EN CENTOS
Ejecutamos el siguiente comando: yum search httpd Con este comando buscaremos el paquete de Apache. Veremos una lista de paquetes entre los cuales se encuentra httpd que es el que nos interesa instalar para nuestra distribuci贸n.
Juan Garc铆a Cruz
ITTLA
41
FIG 2.31 INSTALACION APACHE EN CENTOS
Ingresamos el siguiente comando para instalar el servidor web de Apache: yum install httpd Con el comando anterior yum comienza a ubicar los paquetes y sus dependencias para la instalaci贸n.
FIG 2.32 INSTALACION APACHE EN CENTOS
Juan Garc铆a Cruz
ITTLA
42
Veremos que nos informa que instalaremos http con todas sus dependencias, la cantidad de espacio a utilizar en el disco duro. Escribimos Y para continuar y aceptar la instalación.
FIG 2.33 INSTALACION APACHE EN CENTOS
Veremos una imagen a la anterior con la palabra Complete! y así sabremos que fue instalado Apache.
FIG 2.34 INSTALACION APACHE EN CENTOS
Juan García Cruz
ITTLA
43
Ingresaremos los siguientes comandos para comprobar la instalación de Apache: rpm -qa | grep httpd El comando anterior nos muestra los paquetes relacionados con httpd ls -l /etc/httpd/ Con el comando anterior listamos los archivos ls -l /etc/httpd/conf Listamos el directorio conf que contiene httpd.conf service httpd status Revisamos con el comando anterior si el servicio de httpd esta iniciado chkconfig --levels 235 httpd on Con el comando anterior configuramos Apache para iniciar automáticamente después de un reinicio de sistema service httpd start Iniciamos el servicio de apache con el comando anterior netstat -ntlp | grep httpd Con este comando veremos el socket abierto y escuchando en el puerto 80 en IPv4 y IPv6 .
Juan García Cruz
ITTLA
44
FIG 2.35 INSTALACION APACHE EN CENTOS
Abriremos el navegador web y escribimos http://localhost Esto nos mostrara la ventana anterior con la página de inicio. .
FIG 2.36 INSTALACION APACHE EN CENTOS
Juan García Cruz
ITTLA
45
Ahora veremos donde se encuentra el directorio donde colocaremos el contenido: ls -l /var/www/html El siguiente comando nos lista el directorio pero sin contenido .html. Aquí es donde se colocaría nuestro sitio web. ls -l /var/www/ El comando anterior solo nos muestra el contenido del directorio www/.
2.7 VENTAJAS. Apertura Apache Web Server es un software de código abierto. Esto significa que la programación que impulsa el software puede ser consultada y editada por cualquiera en el mundo Costo Una segunda ventaja relacionada con el diseño de código abierto de Apache es su costo. El servidor web Apache es completamente gratuito y puede ser descargado por cualquier persona en el mundo. Funcionalidades A pesar de su costo mínimo, Apache Web Server tiene un gran conjunto de funcionalidades de gran alcance. Estas características principales, junto con las extensiones creadas por programadores de todo el mundo, ayudan a que la plataforma Apache sea competitiva incluso frente a rivales de alto precio. Apache ha incorporado en su soporte a una amplia gama de lenguajes de programación web, como Perl, PHP y Python. Estos lenguajes son fáciles de aprender y se pueden utilizar para crear potentes aplicaciones en línea. Apache también incluye soporte "SSL" y "TLS". Estos son los protocolos para enviar datos encriptados a través deInternet, y son importantes en el desarrollo de tiendas seguras en línea y otras aplicaciones que requieren privacidad. Soporte Apache Web Server cuenta con una gran comunidad de usuarios de soporte. A diferencia de muchas compañías de software que se encargan de todo el soporte a los programas desde un solo lugar, el soporte técnico de Apache se extiende a lo largo de múltiples localizaciones, empresas, y foros. Este modelo de distribución del soporte permite a los usuarios obtener respuestas a preguntas técnicas casi las 24 horas al día, no importa dónde se encuentren.
Juan García Cruz
ITTLA
46
Portabilidad Apache Web Server es muy portable. Esto significa que se puede instalar en una amplia variedad de servidores y sistemas operativos. Apache es capaz de ejecutarse en todas las versiones del sistema operativo UNIX. Linux es compatible, así como los sistemas operativos Windows NT y MacOS. En comparación, el propio servidor de Microsoft Windows normalmente sólo se puede instalar en sistemas operativos Windows.
2.8 DESVENTAJAS. A continuación se muestran las desventajas del servidor apache:
Falta de integración Posee formatos de configuración no estándar No posee buena administración El mecanismo DSO no puede ser usado en todas las plataformas. El servidor es aproximadamente un 20% más lento en su arranque debido a la sobrecarga que la resolución representa para el cargador (loader). El servidor es aproximadamente un 5% más lento en su ejecución bajo algunas plataformas porque el PIC (Position IndependentCode, posición de código independiente) necesita maniobras complicadas para direccionamiento dinámico, que no es necesariamente tan rápido como el direccionamiento absoluto.
2.9 SEGURIDAD. Cuando un servidor apache recibe una petición de una página web, antes de devolver el resultado, lleva a cabo varias acciones para verificar que la petición está autorizada. Las distintas acciones que lleva a cabo para verificar la validez de la aplicación, se pueden agrupar en tres tipos: Autentificación, Autorización y Control de Acceso. La autentificación es el proceso por el cual se verifica la identidad de una persona. De una forma simple, este proceso se puede llevar a cabo mediante un nombre de usuario y una contraseña, pero se pueden llegar a utilizar otros métodos para validar la identidad de una persona, como mediante el uso de certificados, tarjetas etc… En apache la autentificación puede estar gestionada por distintos módulos, dependiendo de la forma de implementación. Si decide llevarla a cabo gestionando ficheros con listas de usuarios y contraseñas (encriptadas), deberá utilizar el módulo mod_auth. Sin embargo, si decide llevarla a cabo mediante base
Juan García Cruz
ITTLA
de
47
datos,
deberá
utilizar
los
módulos
mod_auth_dbm.
La autorización es el proceso por el cual se verifica que un usuario con una identidad conocida, tiene acceso al recurso solicitado. Para llevar a cabo esta acción, se suelen utilizar listas de permisos en las cuales se enumeran cada una de las acciones que puede realizar un usuario, o las que no puede hacer. Normalmente, para simplificar la gestión de estos ficheros, los usuarios se suelen unir en grupos proporcionando los permisos al grupo. En apache la autorización a recursos es gestionada o bien mediante la directiva <directory> en el fichero principal de configuración, o bien mediante la configuración de la carpeta a través de ficheros .htaccess. El control de acceso es el proceso por el cual se verifica que la máquina desde la que se ha hecho la petición, tiene acceso al recurso. Los controles de acceso se utilizan para limitar y controlar las máquinas que tienen acceso a un recurso independientemente del usuario que accede, ya que estos controles se llevan a cabo antes de que se realice el proceso de autentificación. En apache, el control de acceso se puede llevar a cabo mediante las directivas <directory><files>y <location>, o a través del fichero de configuración .htaccess para controlar una carpeta especifica.
Juan García Cruz
ITTLA
48
2.10 CUADRO COMPARATIVO APACHE VS IIS.
FIG.2.37 CUADRO COMPARATIVO APACHE VS IIS
3 I.I.S (INTERNET INFORMATION SERVER). 3.1 HISTORIA. 3.2 DEFINICION. Los servicios de Internet Information Server (o IIS), son los servicios de software que admiten la creación, configuración y administración de sitios Web, además de otras funciones de Internet. Los servicios de Microsoft Internet Information Server incluyen el Protocolo de transferencia de noticias a través de la red (NNTP), el Protocolo de transferencia de archivos (FTP) y el Protocolo simple de transferencia de correo (SMTP). Los servicios de Internet Information Server 5.0 (IIS) es el servicio Web de Windows 2000 que facilita la publicación de información en una intranet o en Internet; IIS permite autenticación robusta y segura de los usuarios, así como comunicaciones seguras vía SSL; además podemos crear contenido dinámico utilizando los componentes y secuencias de comandos del servidor para crear
Juan García Cruz
ITTLA
49
contenido dinámico independiente del explorador mediante páginas Active Server (ASP). IIS es un conjunto de servicios para servidores usando Microsoft Windows.
3.3 CARACTERISTICAS. En la tabla siguiente se muestran algunas de las características nuevas en IIS. Característica o funcionalidad
Nueva o actualizada
Resumen
Certificados centralizados
Nueva
Proporciona un único almacén de certificados SSL para una granja de servidores y simplifica la administración de enlaces SSL.
Restricciones de IP dinámicas
Nueva
Permite a los administradores configurar IIS 8 para bloquear el acceso a las direcciones IP que superen el número especificado de solicitudes y especificar el comportamiento cuando se bloquea una dirección IP.
Restricciones de intentos de inicio de sesión en FTP
Nueva
Restringe el número de intentos de inicio de sesión infructuosos que se pueden realizar en una cuenta de FTP en un período de tiempo especificado.
Indicación de nombre de servidor (SNI)
Nueva
Amplía los protocolos SSL y TSL para poder usar un nombre de dominio virtual, o un nombre de host, con el fin de identificar el extremo de red.
Inicialización de aplicaciones
Nueva
Permite a los administradores web configurar IIS 8 para inicializar aplicaciones web, de forma que la aplicación esté lista para la primera solicitud.
Escalabilidad habilitada para NUMA
Nueva
Proporciona compatibilidad con el hardware NUMA, que permite núcleos de 32-128 CPU. Esta compatibilidad proporciona un rendimiento prácticamente óptimo desde el principio en el hardware NUMA.
Velocidad moderada de CPU de IIS
Actualizada
Limita el consumo de CPU, memoria y ancho de banda de un grupo de aplicaciones en una implementación multiempresa. IIS 8 incluye opciones de limitación adicionales.
Juan García Cruz
ITTLA
50
Característica
Descripción
Reglas de autorización de .NET
Configurar reglas para autorizar a los usuarios a acceder a sus sitios web y aplicaciones.
Compilación de .NET
Administrar los valores de configuración del código de la aplicación ASP.NET.
Páginas de errores de .NET
Configurar las respuestas a errores HTTP que se devuelven cuando se produce un error.
Globalización de .NET
Configurar los valores de globalización de .NET Framework.
Perfil de .NET
Administrar una lista de propiedades de perfiles que se utilizan para realizar el seguimiento de la información personalizada requerida por la aplicación.
Roles de .NET
Administrar una lista de grupos de usuarios. Los grupos de usuarios ofrecen la posibilidad de clasificar un conjunto de usuarios y realizar operaciones relacionadas con la seguridad, como la autorización, en un conjunto definido de usuarios.
Niveles de confianza de .NET
Configurar el nivel de seguridad de acceso del código (CAS) que se otorga a una aplicación.
Usuarios de .NET
Administrar una lista de identidades de usuario para una aplicación.
Grupos de aplicaciones
Administrar una lista de conjuntos de aplicaciones en un servidor web.
Configuración de aplicaciones
Administrar una lista de pares clave-valor que se almacenan en el archivo Web.config de su aplicación.
Autenticación FTP
Configurar los métodos de autenticación que los clientes FTP pueden utilizar para obtener acceso al contenido.
Reglas de autorización FTP
Administrar la lista de reglas de permiso o denegación que controlan el acceso al contenido.
Juan García Cruz
ITTLA
51
Examen de directorios FTP
Modificar la configuración del contenido que se puede ver en un directorio del servidor FTP.
Compatibilidad con el firewall de FTP
Modificar la configuración de las conexiones pasivas cuando los clientes FTP se conecten a un servidor FTP ubicado detrás de un firewall.
Restricciones de direcciones IP y dominios FTP
Definir y administrar reglas que permitan o denieguen el acceso al contenido de una dirección IP, un intervalo de direcciones IP o un nombre o nombres de dominio específicos.
Registro FTP
Configurar las características de registro en el nivel de servidor o sitio para establecer las opciones de registro.
Restricciones de intentos de inicio de sesión en FTP
Modificar el número de veces que FTP permite al usuario intentar sin éxito iniciar sesión en un período de tiempo especificado antes de denegar el acceso a la dirección IP.
Mensajes FTP
Modificar la configuración de los mensajes que se envían cuando un usuario se conecta a su sitio FTP.
FIG 3.1 CARACTERISTICAS IIS
3.4 VERSIONES.
IIS 1.0, Windows NT 3.51 Service Pack 3 IIS 2.0, Windows NT 4.0 IIS 3.0, Windows NT 4.0 Service Pack 3 IIS 4.0, Windows NT 4.0 Option Pack IIS 5.0, Windows 2000 IIS 5.1, Windows XP Professional IIS 6.0, Windows Server 2003 y Windows XP Profesional x64 Edition IIS 7.0, Windows Vista (Solo Business y Ultimate) y Windows Server 2008 IIS 7.5, Windows 7 y Windows Server 2008 R2 IIS 8, Windows 8 y Windows Server 2012
3.5 COMPATIBILIDAD CON S.O. Este servidor solo es compatible con sistemas operativos de la familia Windows.
Juan García Cruz
ITTLA
52
FIG. 3.2 COMPATIBILIDAD IIS
3.6 INSTALACION, CONFIGURACION Y ADMINISTRACION. INSTALACION IIS 8 EN WINDOWS 8 En la pantalla de Inicio nos desplazamos hacia la derecha para que aparezca la barra de herramientas. Seleccionaremos la opción de Buscar y buscaremos el termino Características (dentro de la sección Configuración)
FIG 3.3 INSTALACION ISS WINDOWS 8
Juan García Cruz
ITTLA
53
Seleccionamos Activar o desactivar las características de Windows. Activaremos la característica Internet Information Services y pulsaremos Aceptar.
FIG 3.4 INSTALACION ISS WINDOWS 8
Esperaremos a que se instale la característica y ¡listo! ya tenemos en nuestro Windows 8 IIS instalado.
FIG 3.5 INSTALACION ISS WINDOWS 8
Juan García Cruz
ITTLA
54
Para confirmar que todo está correctamente instalado, nos vamos a nuestro navegador y ponemos http://localhost, nos deberá cargar una página de la misma forma que en la imagen.
FIG 3.6 INSTALACION ISS WINDOWS 8
Para trabajar con IIS 8 es como en sus versiones anteriores, el path es C:\inetpub\wwwroot INSTALACION EN WINDOWS 2008 SERVER. Para empezar con la instalación de nuestro IIS tendremos que irnos hasta "Server Manager"(Administrador del Servidor) que es desde ahí donde podremos instalar todos nuestros servicios y en este caso el servicio IIS, podremos llegar de las 2 siguientes formas: - Clickeamos en el icono en forma de "Armario y Caja de Herramientas" en la Barra de Herramientas.
Juan García Cruz
ITTLA
55
o - Start (Inicio)/Administrative Tools (Herramientas Manager(Administrador del Servidor).
Administrativas)/Server
FIG 3.7 INSTALACION ISS WINDOWS SERVER 2008
Ahora clickeamos en la opci贸n "Add Roles" (Agregar Funciones):
Juan Garc铆a Cruz
ITTLA
56
FIG 3.8 INSTALACION ISS WINDOWS SERVER 2008
A continuaci贸n nos aparecer谩 todas los servicios disponibles para instalar, en nuestro caso vamos a instalar el servicio IIS. Marcamos la opci贸n "Web Server IIS" (Servidor Web IIS).
FIG 3.9 INSTALACION ISS WINDOWS SERVER 2008
Juan Garc铆a Cruz
ITTLA
57
En la siguiente ventana nos mostrara multitud de opciones, podremos dejar las marcadas ya que no influirá en el funcionamiento de nuestro servidor o marcar todas las opciones, en mi caso, marcare todas las opciones para evitar cualquier falta de compatibilidad, herramientas u opciones necesaria mas adelante.
Por último clickearemos la instalación:
en
el botón "Install" (Instalar) para
empezar
con
FIG 3.10 INSTALACION ISS WINDOWS SERVER 2008
Ya terminada la instalación, solo quedaría comprobar que está correctamente instalado, escribiremos lo siguiente en nuestro navegador: - http://localhost o 127.0.0.1
Juan García Cruz
ITTLA
58
FIG 3.11 INSTALACION ISS WINDOWS SERVER 2008
Con esto termina la instalación de nuestro IIS en Windows 2008 Server. CONFIGURACION. Paso 1 - Habilitar ASP > Panel de Control Inicio - -> Programas y características -> Vuelta Ventanas o desactivar las características. Asegúrese de que ASP está marcada.
Juan García Cruz
ITTLA
59
FIG 3.12 CONFIGURACION ISS WINDOWS SERVER 2008
Paso 2 - Crear Nueva AppPool para ASP > Panel de Control Inicio - -> Herramientas administrativas - Administrador de IIS>. Grupos de aplicaciones -> Agregar grupo de aplicaciones.
FIG 3.13 CONFIGURACION ISS WINDOWS SERVER 2008
Juan GarcĂa Cruz
ITTLA
60
Haga clic derecho sobre su recién creado aplicación Pool -> Configuración avanzada. Set "Habilitar aplicaciones de 32 bits" a true.
FIG 3.14 CONFIGURACION ISS WINDOWS SERVER 2008
Paso 3 - Configuración de sitios Crear nuevo su sitio web en IIS. Asegúrese de que utiliza su recién creado AppPool. Esto se puede establecer por ir a las Opciones avanzadas de su sitio web.
FIG 3.15 CONFIGURACION ISS WINDOWS SERVER 2008
Juan García Cruz
ITTLA
61
Una página de error por defecto está configurada para manejar los errores que pueden ocurrir cuando el sitio esté en funcionamiento. Seleccione las Propiedades de ASP de su sitio web y luego proceder a establecer la depuración de Propiedades -> "Enviar errores en el navegador" para VERDADERO. Usted también debe establecer Comportamiento -> "Habilitar rutas de acceso primarias" para VERDADERO. Esto permitirá el uso de ".." encuentran comúnmente en aplicaciones ASP
FIG 3.16 CONFIGURACION ISS WINDOWS SERVER 2008
3.7 VENTAJAS.
Es confiable, seguro y administrable en internet. Proporcionan capacidades de servidor Web integrado Al momento de la instalación permite elegir sobre que servidor web va a correr (Apache o IIS)
Desarrolla y es Compatible con las aplicaciones beneficiándose con un único entorno de alojamiento de aplicaciones integrado con compatibilidad total.
Juan García Cruz
ITTLA
62
3.8 DESVENTAJAS.
Tiende a limitarse en las versiones que no son de la familia “Server” Posee vulnerabilidades Este servidor no es multiplataforma, sólo funciona bajo Windows La mayoría de funcionalidad extra debe ser comprada separadamente
Multitud de nuevos fallos de seguridad 3.9 SEGURIDAD. En la lista siguiente se describen las nuevas características de seguridad de IIS:
Un nuevo grupo integrado de Windows denominado IIS_IUSRS reemplaza el grupo IIS_WPG local. Una nueva cuenta integrada de Windows denominada IUSR reemplaza la cuenta local IUSR_nombre de equipo anónima de IIS 6.0. Sin embargo, la cuenta IUSR_nombre de equipo continuará utilizándose para FTP. Estos cambios se combinan para proporcionar cuatro ventajas. o
La capacidad de utilizar una cuenta anónima personalizada sin deshabilitar la cuenta anónima de IIS.
o
El mantenimiento de listas de control de acceso (ACL) coherentes entre varios servidores web utilizando un identificador de seguridad común (SID).
o
La mejora del proceso DCPROMO al garantizar que la cuenta anónima local no se convierte en una cuenta de dominio.
o
La eliminación de la necesidad de administrar las contraseñas.
La lista de restricciones de IP se puede configurar para denegar el acceso al contenido en un solo equipo, en un grupo de equipos, en un domino o en todas las direcciones IP y entradas no registradas. De esta forma, además de proporcionar compatibilidad con la característica de concesión o denegación de IIS 6.0, se permite la herencia y combinación de reglas de restricción de direcciones IP.
En IIS se incorporan las características de la herramienta de seguridad UrlScan 2.5. Por tanto, ya no es necesario descargar una herramienta aparte.
IIS admite la autorización de direcciones URL en código nativo. Para mantener la coherencia, este cambio proporciona compatibilidad con toda la funcionalidad de la implementación de código administrado de ASP.NET existente.
Juan García Cruz
ITTLA
63
4 INSTRUCCIONES PARALA ADMINISTRACION, GESTION Y ACTUALIZACION DE PORTALES. El fichero httpd.conf es la principal fuente de configuración del servidor Apache, en él se encuentran todas las directivas aplicables a la configuración.
El fichero de configuración se divide en cuatro secciones:
Directivas de funcionamiento Parámetros de gestión de recursos Hosts Virtuales Parámetros de seguridad
Dentro de estas secciones se encuentran las directivas más comunes para administrar y gestionar los portales web, como lo son las siguientes: MaxClients: Se utiliza para especificar el máximo número de clientes (navegadores) que se pueden conectar simultáneamente al servidor. Si se alcanza este límite, los clientes quedan bloqueados hasta que algunos de los servidores queda libre. Su sintaxis se especifica a continuación: MaxClients <Numero Entero> DirectoryIndex: Mediante este parámetro, indicamos a Apache qué fichero debe buscar, por defecto, en caso de que no se especifique ninguno. Este fichero, de forma predeterminada es index.html. Una de las partes atractivas de esta directiva es que podemos indicarle más de un fichero a buscar de la siguiente forma: DirectoryIndex fichero1 fichero2 fichero3
Juan García Cruz
ITTLA
64
El orden con el que se especifica el nombre del fichero determinara la prioridad a la hora de decidir que fichero es el que se muestra. RedirectPermanent: Se utiliza para indicar que una página alojada en el servidor web ha pasado a estar en otro URL. De esta forma, la respuesta que genera el servidor web permite al cliente iniciar una nueva petición a un nuevo servidor que aloja la página pedida. Las directivas <Directory> y </Directory> se usan para englobar un grupo de directivas que se aplicarán solamente al directorio especificado y a sus subdirectorios. Puede incluir a cualquier directiva cuyo uso esté permitido en un contexto <directory <Directory /usr/local/httpd/htdocs> Options Indexes FollowSymLinks </Directory> IndexOptions: Esta directiva controla la apariencia de la página que se mostrara a un usuario cuando se pide la lista de ficheros de un directorio. Entre las opciones posibles, destaca: FancyIndexing, que muestra los nombres de los ficheros con iconos. AccessFileName: Se utiliza para especificar el nombre de cada archivo que contiene directivas que especifican los parámetros de seguridad para cada directorio. Su sintaxis se especifica a continuación: AccessFileName [archivo] LimitRequestBody Esta directiva especifica el número de bytes desde 0 (que significa sin límite) hasta 2147483647 (2GB) que se permite que tenga el cuerpo de una petición. Sintaxis: LimitRequestBody bytes MaxKeepAliveRequests Limita el número de peticiones permitidas por conexión cuando KeepAlive está activado. Si se especifica el valor 0, el número de peticiones permitidas es ilimitado. Se recomienda que en esta directiva se especifique un valor alto para obtener el máximo rendimiento del servidor. Sintaxis: MaxKeepAliveRequests number
Juan García Cruz
ITTLA
65
VER VIRTUAL HOSTS También podemos ver todos los virtual hosts que están configurados en el Apache. httpd -S
Esto nos va a mostrar una lista como esta: VirtualHost configuration: 1.1.1.1:80
is a NameVirtualHost
default server localhost (/etc/httpd/conf/extra/httpd-vhosts.conf:29) port 80 namevhost localhost (/etc/httpd/conf/extra/httpd-vhosts.conf:29) port 80 namevhost www.midominio.com (/usr/local/directadmin/data/users/usuario/httpd.conf:11) 1.1.1.1:443
is a NameVirtualHost
default server localhost (/etc/httpd/conf/extra/httpd-vhosts.conf:38) port 443 namevhost localhost (/etc/httpd/conf/extra/httpdvhosts.conf:38) port 443 namevhost www.midominio.com (/usr/local/directadmin/data/users/usuario/httpd.conf:48)
En el ejemplo vemos un hipotético servidor (usando Directadmin) con IP 1.1.1.1, y los virtual hosts para el puerto 80 y el 443, tanto los default como los que corresponden al dominio “www.midominio.com” del usuario llamado “usuario”.
A continuación se muestra como configurar otro portal que se haya creado. 1. Dentro de la ruta “Archivos de programa\Apache Software Foundation\Apache2.2\conf” debemos abrir, con el blog de notas, el fichero “httpd.conf” (que es donde se halla la programación de Apache):
Juan García Cruz
ITTLA
66
Escribiremos dentro de ese archivo lo siguiente (cambiando la ruta según donde tenga su sitio y el nombre de la página):
2. En el archivo host que está en la ruta “C:\WINDOWS\System32\drivers\etc” el cual lo abriremos con el blog de notas, debemos escribir la IP del localhost que este en ese archivo y a continuación“www.prueba.es” (o como se llame el sitio que quiera crear):
Juan García Cruz
ITTLA
67
3. Tras escribirlo deberemos reiniciar el servicio Apache, desde el icono que aparece abajo a la derecha programa, pulsaremos Restart:
clicamos dos veces sobre él y se abrirá el
Si todo está en orden se reiniciara sin problemas, si hay alguna línea errónea no se reiniciara y deberemos corregirlo en el fichero “httpd.conf” para poder arrancar el servicio Apache de nuevo. 4. Para comprobar que hemos cambiado el sitio web predeterminado por el que Juan García Cruz
ITTLA
68
nosotros queríamos, deberemos abrir un explorador como por ejemplo Internet Explorer y escribir en la barra de direcciones la página que hemos puesto como predeterminada. Nos saldrá la página que hemos creado y configurado como sito web predeterminado.
5 SOFTWARE PARA SERVIDORES WEB. LIGHTTPD lighttpd (pronunciado lighty) es un servidor web diseñado para ser rápido, seguro, flexible, y fiel a los estándares. Está optimizado para entornos donde la velocidad es muy importante, y por eso consume menos CPU y memoria RAM que otros servidores. Por todo lo que ofrece, lighttpd es apropiado para cualquier servidor que tenga problemas de carga. CARACTERISTICAS.
Virtual hosting (alojar varios dominios en la misma IP) CGI, SCGI y FastCGI Soporte para PHP, Ruby, Python y otros Entorno chroot Cifrado SSL Compresión (gzip, bzip2, ...) Autenticación (LDAP, htpasswd, otros) Server Side Includes Consumo de memoria constante Redirecciones HTTP, y reescrituras de URL Puede enviar partes de un fichero (rangos) Puede usar select() o poll() También permite otros sistema de notificación de eventos como kqueue y epoll Hace estadísticas mediante RRDtool Muestra un listado de ficheros cuando se entra a un directorio sin index.html Redirección condicional Permite módulos externos Cache Meta Language Acepta parte de WebDAV
Juan García Cruz
ITTLA
69
Este servidor funciona en GNU/Linux y UNIX de forma oficial pero actualmente hay una versión para Windows que es llamada LIGHTTPD FOR WINDOWS.
INSTALACION EN DEBIAN. La instalación del web server en Linux es muy sencilla. Para instalar lighttpd en linux, tecleamos como root: deathbian:~# aptitude install lighttpd
CONFIGURACION BASICA
server.document-root = /var/www/html/ Especifica el directorio por default para los sitios. server.port = 80 Especifica el puerto por default del servidor. server.username = www-data Usuario de Linux, ya sea Debian, Ubuntu, Mint u distro derivada sobre el cual corre lighty. server.groupname = www-data Especifica el nombre de usuario y grupo con los cuales arranca/detiene el demonio del servidor lighttpd. Esta es una característica de seguridad, así de esta manera no corre con los privilegios de root. server.bind = server-ip-address Especifica la dirección ip del servidor. Así mismo también es posible ingresar un hostname o localhost. server.tag =lighttpd Se utiliza para asignar el nombre y el número de versión de lighttpd (default). Esta es una característica de seguridad. Se puede configurarde esta manera: server.tag ="Mi servidor web v1.0" Nota: Este es el nombre que reporta el servidor en su cabecera de respuesta. Se puede comprobar utilizando netcraft.
server.errorlog = /var/log/lighttpd/error.log Especifica el archivo de bitácora de error. accesslog.filename = /var/log/lighttpd Especifica el archivo de bitácora de accesos, el cual puede ser utilizado por una aplicación de estadísticas de visitantes como webalizer.
Juan García Cruz
ITTLA
70
index-file.names = ( index.php, index.html ) Un listado de los archivos por omisión en cada directorio. server.modules = ( mod_access, mod_accesslog, mod_fastcgi, mod_rewrite, mod_auth ): Los módulos anteriormente descritos serán los únicos que cargara lighty. Claro que se pueden agregar más. De aquí el secreto de la rapidez y bajo consumo de memoria del servidor, veamos una descripción más detallada: o mod_access: El módulo de acceso es utilizado para denegar acceso a ciertos archivos. o mod_accesslog: Utilizado para escribir la bitácora CLF, flexible como apache. o mod_fastcgi: Soporte FastCGI para perl/PHP etc. o mod_rewrite: Necesario para re-escribir Url’s SEO compatibles. o mod_auth: Autenticación, usualmente para directorios protegidos por contraseña.
mimetype.assign = .pdf => .sig => ): Se utiliza para asignar el mapeo del mimetype.
( application/pdf, application/pgp-signature
Editemos el archivo /etc/lighttpd/lighttpd.conf y configuren todas las directivas descritas anteriormente. deathbian:~# vim /etc/lighttpd/lighttpd.conf
SERVIDOR CHEROKEE Cherokee es un servidor web multiplataforma. Su objetivo es ser rápido y completamente funcional, sin dejar de ser liviano comparado con otros servidores web. Está escrito completamente en C. Puede usarse como un sistema
Juan García Cruz
ITTLA
71
embebido y soporta complementos para aumentar sus funcionalidades. Es software libre, disponible bajo la Licencia Pública General de GNU. CARACTERISTICAS.
Soporta tecnologías como: FastCGI, SCGI, PHP, CGI, SSI, SSL/TLS. Soporta la configuración de servidores virtuales. Permite la realización de redirecciones. Permite su utilización como balanceador de carga. Dispone de un panel de administración desde la web. Dispone del primer market de instalación de aplicaciones web. Soporta los métodos de registro:
NCSA
W3C
Combinado Soporta los métodos de autenticación:
plain
htpasswd
htdigest
PAM
INSTALACION En debían es sencilla la instalación solo se utiliza el siguiente comando. aptitude install cherokee La instalación es sencilla, ahora solo nos queda configurar Cherokee y lo haremos desde su administrador web poniendo en la terminal lo siguiente. cherokee-admin -b
El cual nos dará los datos de login necesarios como son el User el Password y la Url para entrar en el administrador web.
Juan García Cruz
ITTLA
72
para terminar y cerrar el administrador web pulsar CTRL+C en la terminal Una vez entramos en el administrador web de cherokee debemos añadir la“extensión php” para hacerlos nos dirigimos al icono “vServers” y en la pestaña “comportamiento” le damos al botón de “Rule Mangement”
Ahora creamos un comportamiento nuevo, seleccionamos “lenguajes” “php” y “añadir” nos aparece una ventana de información y presionamos el botón “crear”.
Juan García Cruz
ITTLA
73
En el panel lateral izquierdo veremos que la regla “extensions php” su estado es “NO FINAL” seguidamente nos dirigimos a la pestaña “gestor” que es donde podemos cambiar la configuración por defecto de PHP y una vez finalizado presionar en “NO FINAL” para que cambie a “FINAL”
Ya solo nos queda “guardar” que se encuentra en la parte superior derecha, nos aparecerá una ventana informativa y presionaremos en “reinicio suave”
Juan García Cruz
ITTLA
74
Después regresamos a “vServers” y en la pestaña comportamiento debería aparecer “Extensions
php” listado,
ya
podemos
salir
del
administrador
presionando en a terminal CTRL+C .
Para comprobar que todo funciona creamos un archivo info.php con nuestro editor preferido, vim por ejemplo “vim /var/www/info.php” y le añadimos la siguiente linea “<?php phpinfo(); ?>” guardamos y probamos que funciona en nuestro
Juan García Cruz
ITTLA
75
navegador web con la dirección ip de nuestro servidor, por ejemplo “http://192.168.0.20/info.php”
Para finalizar solo nos queda instalar el modulo MySQL para php5 con un 1 aptitude install php5-mysql
CONCLUSIONES Para terminar, se entiende que un servidor web es aquel que responde peticiones de los navegadores clientes. Entre los cuales existen varios pero solo 2 son los que sobresalen por su historia y características, su alto rendimiento, su velocidad y capacidad, Apache server y el servidor de Microsoft internet information server. Por un lado Apache server siendo software libre y compatible con todas las plataformas, por eso su gran auge en los últimos años es el servidor más usado en la actualidad. En segundo lugar entra Microsoft con Internet information server el cual es comercial y solo se distribuye para sistemas operativos de la familia Windows.
Juan García Cruz
ITTLA
76
En otra instancia se encuentran otros servidores como lo son Nginx, Lighttp ,Googleserver, cherokee etc.
BIBLIOGRAFIA. http://curso-sobre.berlios.de/introsobre/2.0.1/sobre.html/apache.html http://es.wikipedia.org/wiki/Servidor_HTTP_Apache http://httpd.apache.org/docs/2.4/new_features_2_0.html http://www.dell.com/mx/empresas/p/poweredge-mseries-servers?~ck=anav http://www.dell.com/mx/empresas/p/poweredge-t110-2/fs http://www.slideshare.net/elianaespinoza/ventajas-y-desventajas-de-los-servidores-apache-y1 http://www.alegsa.com.ar/Dic/iis.php http://sauce.pntic.mec.es/crer0052/iis/definici.htm
http://daverndn.com/2013/03/24/configurar-iis-en-windows-8/ http://elrincondelsoft.blogspot.mx/2012/05/instalacion-de-iis-en-windows-2008.html http://es.scribd.com/doc/22300726/Especificaciones-Tecnicas-IIS-vs-Apache http://manuales.guebs.com/apache-2.0/server-wide.html#page-header http://manuales.guebs.com/apache-2.0/mod/core.html#servername http://www.instalarapache.com/apache/instalar-apache-en-linux-centos.html http://flossblog.wordpress.com/2009/12/15/instalar-y-configurar-apache-http-server-encentos-fedora-rhel/ http://proyectosbeta.net/2013/04/instalar-apache-en-centos-6-4/ http://instalarapache.com/apache/instalar-apache-en-windows-7-parte-3.html http://wiki.bizagi.com/es/index.php?title=Configuracion_de_sitio_web_en_IIS
Juan GarcĂa Cruz
ITTLA
77
http://www.taringa.net/comunidades/webdesign/878210/Configurar-Y-QUE-ANDEcorrectamente-el-IIS-en-Windows-7.html http://es.wikipedia.org/wiki/Nginx#Caracter.C3.ADsticas_b.C3.A1sicas_servidor_web http://www.guatewireless.org/internetworking/internet/lighttpd-instalacion-y-configuracion-delweb-server.html http://redmine.lighttpd.net/projects/lighttpd/wiki/TutorialConfiguration
Juan GarcĂa Cruz