servidores apache-iss

69
SERVIDOR APACHE-IIS

Upload: diego-oropeza

Post on 10-Mar-2016

249 views

Category:

Documents


5 download

DESCRIPTION

Desarrollo de las caracteristicas importantes sobre Apache e Internet Information Server (IIS). asi como los conceptos basicos sobre servidor.

TRANSCRIPT

Page 1: Servidores Apache-ISS

SERVIDOR

APACHE-IIS

Page 2: Servidores Apache-ISS
Page 3: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 1

INDICE OBJETIVO GENERAL ..................................................................................................................... 4

OBJETIVO ESPECIFICO ................................................................................................................ 4

INTRODUCION ................................................................................................................................. 5

1.- Servidor. ....................................................................................................................................... 7

Definición: ...................................................................................................................................... 7

Características: ............................................................................................................................. 7

Especificaciones: .......................................................................................................................... 8

Tendencias: ................................................................................................................................... 8

Compatibilidad con S.O: ........................................................................................................... 10

Clasificación: ............................................................................................................................... 11

2.- Apache. ...................................................................................................................................... 13

Historia: ........................................................................................................................................ 13

Definición: .................................................................................................................................... 14

Características: ........................................................................................................................... 14

Versiones: .................................................................................................................................... 15

Compatibilidad: ........................................................................................................................... 16

Instalación y Configuración del Servidor Apache en Windows: .......................................... 17

Instalación y Configuración del Servidor Apache en Ubuntu: ............................................. 18

Ventajas: ...................................................................................................................................... 20

Desventajas: ................................................................................................................................ 21

Seguridad: ................................................................................................................................... 21

3.- INTERNET INFORMATION SERVER (I.I.S)........................................................................ 22

Historia: ........................................................................................................................................ 22

Definición: .................................................................................................................................... 22

Características: ........................................................................................................................... 23

Versiones: .................................................................................................................................... 23

Compatibilidad con S.O: ............................................................................................................ 23

Instalación, Configuración y Administración: ......................................................................... 24

Ventajas: ...................................................................................................................................... 27

Desventajas: ................................................................................................................................ 28

Page 4: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 2

Cuadro Comparativo de I.I.S y Apache: ................................................................................. 28

4.- Instrucciones más usadas para la administración, gestión y actualización de portales web a través de Apache. ............................................................................................................... 30

Ficheros de configuración.# ...................................................................................................... 34

Descripción de parámetros. .................................................................................................. 35

Configuración de VirtualHost ................................................................................................ 36

Usuario Encargado del Deposito. ........................................................................................ 38

Logs del Sitio. .......................................................................................................................... 39

Fichero hosts. .......................................................................................................................... 39

Habilitando VirtualHost. ......................................................................................................... 40

Desactivando VirtualHost. ..................................................................................................... 40

Habilitar htaccess.# .................................................................................................................... 41

Ejemplo de htaccess. ............................................................................................................. 41

Módulos Activados. ................................................................................................................ 42

Herramienta apache2ctl.# ......................................................................................................... 43

5.- Software para Servidores Web. .............................................................................................. 49

CHEROKEE ..................................................................................................................................... 49

TOMCAT ........................................................................................................................................ 57

LIGHTTPD ....................................................................................................................................... 64

CONCLUSION. .................................................................................................................................... 66

FUENTES DE INFORMACION. ............................................................................................................. 67

Page 5: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 3

INDICE DE FIGURAS

Fig. 3.1 IIS .......................................................................................................................................... 24

Fig. 3.2 IIS .......................................................................................................................................... 25

Fig. 3.3 IIS .......................................................................................................................................... 25

Fig. 3.4 IIS .......................................................................................................................................... 26

Fig. 3.5 IIS .......................................................................................................................................... 27

Fig. 3.1 CUADRO COMPARACION APACHE-IIS ................................................................................... 29

Fig. 4.1 PRUEBA ................................................................................................................................. 45

Fig. 4.2 CONFIGURACION APACHE .................................................................................................... 46

Fig. 4.3 CONFIGURACION 2 APACHE ................................................................................................. 47

Fig. 4.4 COFIGURACION 3 APACHE .................................................................................................... 48

Fig. 5.1 CONFIGURACION CHEROKEE ................................................................................................ 50

Fig. 5.2 CONFIGURACION CHEROKEE ................................................................................................ 50

Fig. 5.3 CONFIGURACION CHEROKEE ................................................................................................ 51

Fig. 5.4 CONFIGURACION CHEROKEE ................................................................................................ 51

Fig. 5.5 CONFIGURACION CHEROKEE ................................................................................................ 52

Fig. 5.6 CONFIGURACION CHEROKEE ................................................................................................ 52

Fig. 5.7 CONFIGURACION CHEROKEE ................................................................................................ 53

Fig. 5.8 CONFIGURACION CHEROKEE ................................................................................................ 53

Fig. 5.9 CONFIGURACION CHEROKEE ................................................................................................ 54

Fig. 5.10 ADMINISTRACION CHEROKEE ............................................................................................. 55

Fig. 5.11 ADMINISTRACION CHEROKEE ............................................................................................. 55

Fig. 5.12 ADMINISTRACION CHEROKEE ............................................................................................. 56

Fig. 5.13 INSTALACION TOMCAT ....................................................................................................... 59

Fig. 5.14 INSTALACION TOMCAT ....................................................................................................... 60

Fig. 5.15 INSTALACION TOMCAT ....................................................................................................... 60

Fig. 5.16 INSTALACION TOMCAT ....................................................................................................... 61

Fig. 5.17 INSTALACION TOMCAT ....................................................................................................... 61

Fig. 5.18 INSTALACION TOMCAT ....................................................................................................... 61

Fig. 5.19 INSTALACION TOMCAT ....................................................................................................... 62

Fig. 5.20 ADMINISTRACION TOMCAT ................................................................................................ 62

Fig. 5.21 ADMINISTRACION TOMCAT ................................................................................................ 63

Page 6: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 4

OBJETIVO GENERAL

Conocer y entender los conceptos básicos de los temas para 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 y su gestión.

OBJETIVO ESPECIFICO

Presentar conceptos, técnicas, mecanismos y recomendaciones con el enfoque de un mayor entendimiento para el uso de servidores y software adecuado para su manejo.

Page 7: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 5

INTRODUCCION

En informática, un servidor es un tipo de software que realiza ciertas tareas en nombre de los usuarios.

El término servidor ahora también se utiliza para referirse al ordenador físico en el cual funciona ese software, una máquina cuyo propósito es proveer datos de modo que otras máquinas puedan utilizar esos datos.

Este uso dual puede llevar a confusión.

Por ejemplo, en el caso de un servidor web, este término podría referirse a la máquina que almacena y maneja los sitios web, y en este sentido es utilizada por las compañías que ofrecen hosting o hospedaje.

Alternativamente, el servidor web podría referirse al software, como el servidor de http de Apache, que funciona en la máquina y maneja la entrega de los componentes de los páginas web como respuesta a peticiones de los navegadores de los clientes.

Apache es el servidor web hecho por excelencia, su configurabilidad, robustez y estabilidad hacen que cada vez millones de servidores reiteren su confianza en este programa.

La historia de Apache se remonta a febrero de 1995, donde empieza el proyecto del grupo Apache, el cual está basado en el servidor Apache httpd de la aplicación original de NCSA. El desarrollo de esta aplicación original se estancó por algún tiempo tras la marcha de Rob McCool por lo que varios webmaster siguieron creando sus parches para sus servidores web hasta que se contactaron vía email para seguir en conjunto el mantenimiento del servidor web, fue ahí cuando formaron el grupo Apache.

Fueron Brian Behlendorf y Cliff Skolnick quienes a través de una lista de correo coordinaron el trabajo y lograron establecer un espacio compartido de libre acceso para los desarrolladores.

Fue así como fue creciendo el grupo Apache, hasta lo que es hoy :) Aquella primera versión y sus sucesivas evoluciones y mejoras alcanzaron una gran implantación como software de servidor inicialmente solo para sistemas operativos UNIX y fruto de esa evolución es la versión para Windows.

Apache es una muestra, al igual que el sistema operativo Linux (un Unix desarrollado inicialmente para PC), de que el trabajo voluntario y cooperativo dentro de Internet es capaz de producir aplicaciones de calidad profesional difíciles de igualar.

Page 8: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 6

La licencia Apache es una descendiente de la licencias BSD, no es GPL. Esta licencia te permiten hacer lo que quieras con el código fuente (incluso forks y productos propietarios) siempre que les reconozcas su trabajo.

Un servidor web es un programa que se está ejecutando en un equipo, normalmente un servidor y que proporciona páginas web a los "clientes" que le piden. Los clientes son los navegadores web como Internet Explorer o NetScape

Cuando llamamos a un equipo "servidor" nos referimos a un equipo que va a proporcionar determinados servicios a los usuarios de una red local o de Internet. Lleva un equipamiento de prestaciones más avanzadas que un equipo de sobremesa y sobre todo incorpora un sistema operativo de servidor.

Por tanto si en un navegador o explorador web escribimos una dirección o una página intentará localizar el servidor escrito y buscar la página solicitada. Para que ocurra esto debemos tener instalado en nuestro servidor el programa Internet Information Server. Internet Information Server, que llamaremos IIS, es el servidor de páginas web de Microsoft. Éste viene de forma gratuita con el sistema operativo Windows NT, 2000 y XP y descargable para los demás.

Page 9: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 7

1.- Servidor.

Definición: Termino con el que se designa al ordenador o la aplicación que se encarga de suministrar información u otros recursos aplicaciones cliente que se conectan a él. En las redes convencionales, por lo general, el servidor es un ordenador y en las aplicaciones cliente/servidor de internet el servidor es un programa.

Características:

Algunas de sus características son:

• Al iniciarse esperan a que lleguen las solicitudes de los clientes, desempeñan entonces un papel pasivo en la comunicación.

• 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.

Las características que estos tengan, variaran dependiendo del servicio que proveerá el servidor, del entorno en donde se usara y cuanta información manejara.

Las principales características de un servidor son:

Procesador: Se elegirá si se usara un Intel o AMD. Un solo núcleo, doble núcleo, 4 núcleos, etc. Normalmente para servidores se llegan a utilizar los Intel Xeon, o los AMD Opteron.

Memoria RAM: Esta llega a ser muy importante, ya que al manejar gran cantidad de datos, es conveniente no quedarnos con poca RAM. Una vez agotada la RAM se empieza a utilizar memoria virtual (o swap), la cual ralentiza los procesos. Lo recomendable son 2GB o más.

Disco Duro: Con una buena capacidad de almacenamiento, unos 100GB mínimo. La velocidad (RPM) y la marca del disco duro también es muy importante. Preferentemente SATA.

Page 10: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 8

Velocidad del Internet: En caso de usarse como servidor web, se necesita una velocidad de subida y bajada buena.

Sistema operativo: Hablando en términos de software, también se tiene que decidir que sistema operativo llevara. Ya sea Linux o Windows Server, que son los más usados, dependiendo el ambiente de trabajo en donde se usara, la seguridad que sea necesaria, y el presupuesto con el que se cuenta.

Especificaciones:

Las especificaciones básicas para un rendimiento óptimo en un servidor web son:

HARDWARE: MEMORIA SWAP: 4GB DISCO DURO: MINIMO 60GB RECOMENDADO 120 GB MEMORIA RAM: 1.5 GB POR CADA 500 USUARIOS CONCURRENTES MEMORIA CACHE: 500 MB 2 PROCESADORES: INTEL x86 2.4 GHZ SOFTWARE: SISTEMA OPERATIVO: LINUX REDHAT ADVANCED SERVER 3.0 HERRAMIENTAS: JAVA JDK VERSION 1.4

Tendencias: Según Gartner apunta a tres dinamizadores que generarán oportunidades de crecimiento en el mercado de servidores hasta 2015. La consultora considera que los servidores representan el punto de control de la infraestructura de hardware en los centros de datos, pues es donde residen las cargas de trabajo y las aplicaciones; y estima que el tiempo que los usuarios finales pasan operando con servidores es cerca del 60% de todo el hardware del CPD.

Por eso ha identificado como oportunidades de negocio a estos tres factores:

• La demanda creciente de centros de datos a hiperescala crea una oportunidad para los proveedores para impulsar las ventas de servidores.

Page 11: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 9

• La flexibilidad del puesto de trabajo virtual hospedado (por sus siglas en inglés, HVD), significará que más empresas muevan sus cargas de trabajo, aumentando la demanda de servidores virtualizados.

• Los factores de eficiencia y ahorro energético aumentará la demanda de servidores ELE, ofreciendo una nueva oportunidad para que los proveedores puedan diversificar su negocio.

"El mercado mundial de servidores estaba valorado en 52.800 millones de dólares en 2011, y aunque es un negocio maduro, ofrecerá importantes oportunidades de crecimiento en los próximos años",comenta Kiyomi Yamada, analista principal de investigación de Gartner. "Estas oportunidades surgirán cuando la demanda de ciertos tipos de cargas de trabajo aumente y use el cambio de servidores por centros de datos de gran tamaño, y productos de virtualización y energéticamente eficientes".

"En la actualidad, el mercado de servidores es muy competitivo, y a pesar de su tamaño, ofrece un margen de beneficios pequeño", añade Jeffrey Hewitt, vicepresidente de investigación de Gartner. "La prevalencia de las plataformas estandarizadas x86 también hace que sea difícil para las empresas diferenciar sus productos. En respuesta, los proveedores de servidores, con el objetivo de conseguir mayores márgenes de beneficio, han estado haciendo un mayor esfuerzo por crear una infraestructura fabric-based y una convergencia en torno a los sistemas integrados. Para tener éxito en el mercado de servidores en los próximos años, las compañíaS deben innovar y responder rápidamente a los cambios en la demanda”.

Page 12: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 10

Compatibilidad con S.O:

Servidores Linux

CentOS o Community Enterprise Operating System es un sistema operativo de código libre basado enteramente en Red Hat Enterprise Linux con el objetivo de ser 100% compatible con el mismo. CentOS es básicamente Red Hat pero sin el logotipo, marcas y soporte oficial de la compañía. Es el sistema operativo por excelencia para empresas y servidores.

Versiones disponibles: CentOS 5, 6, 6.2 (64-bit). CentOS 4.5, 4.6, 4.7, 4.8, 5, 6 (32-bit).

Debian es un sistema operativo de código abierto basado directamente en Linux con el objetivo de adherirse estrictamente a Unix. Es ampliamente utilizado en todo tipo de dispositivos dada su estabilidad y seguridad. Es la base para muchas otras variantes de Linux y cuenta con una abundante cantidad de paquetes adicionales.

Versiones disponibles: Debian Squeeze 6 (64-bit y 32-bit). Debian Lenny 5.0 (32-bit).

Ubuntu es una distribución de Linux basada en Debian pero que cuenta con el respaldo comercial de una compañía privada. Es una de las distribuciones de Linux para escritorios más populares y también es de código libre.

Versiones disponibles: Ubuntu Lucid Lynx 10.04 (64-bit y 32-bit). Ubuntu Maverick Meerkat 10.10 (64-bit y 32-bit).

Red Hat Enterprise Linux es la plataforma corporativa preferida para servidores y centros de datos utilizado ampliamente en plataformas científicas, comerciales y financieras. Con actualizaciones y soporte comercial de Red Hat Inc.

Versiones disponibles: Red Hat Enterprise Linux 6, 5 (64-bit). Red Hat Enterprise Linux 4.5, 4.6, 4.7, 4.8, 5, 6 (32-bit).

Page 13: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 11

Servidores Windows

Windows es el sistema operativo comercial de Microsoft. En su variante para servidores es un sistema operativo con gestión grafica de fácil uso y muy seguro para entornos basados en Windows. Es la primera elección si se requiere compatibilidad para aplicaciones Windows o tecnologías propias de Microsoft. Es muy flexible y fácil de administrar pero tiene costo de licenciamiento.

Versiones disponibles: Windows Server 2008 R2 (64-bit). Windows Server 2008 (64-bit y 32-bit).

Clasificación:

En la siguiente lista hay algunos tipos comunes de servidores: es el que almacena varios tipos de archivos y los distribuye a otros clientes en la red.

• 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.

Page 14: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 12

• 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 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 cliente-servidor. 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

Page 15: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 13

evitar ataques, los servidores de seguridad varían dependiendo de su utilización e importancia.

Sin embargo, de acuerdo al rol que asumen dentro de una red se dividen en:

• Servidor dedicado: son aquellos que le dedican toda su potencia a administrar los recursos de la red, es decir, a atender las solicitudes de procesamiento de los clientes.

• Servidor no dedicado: son aquellos que no dedican toda su potencia a los clientes, sino también pueden jugar el rol de estaciones de trabajo al procesar solicitudes de un usuario local.

2.- Apache.

Historia: En febrero del año 1995, el servidor web más popular era un servidor desarrollado por el NCSA (National Center for Supercomputing Applications de la Universidad de Illinois). Sin embargo, al dejar el principal desarrollador del servidor, Rob McCool, la NCSA en el año 1994, la evolución del programa había quedado seriamente comprometida. La responsabilidad del desarrollo recayó en los responsables de sitios web, que introdujeron mejoras progresivas en sus servidores. Un grupo de ellos, utilizando el correo electrónico como herramienta principal de coordinación, se pusieron de acuerdo para poner en común estas mejoras en forma de "patches" o parches. 2 de ellos, Cliff Skolnick y Brian Behlendorf, iniciaron una lista de correo, un espacio para compartir información y un servidor en California donde los desarrolladores más importantes pudiesen trabajar. A principios del año siguiente, 8 programadores fundaron lo que había de ser el Grupo Apache.

Éstos, utilizando como base de trabajo el servidor NCSA 1.3, incorporaron las correcciones de errores publicadas y las mejoras más importantes que encontraron y probaron el resultado final en sus servidores. Después publicaron lo que había de ser la 1a versión oficial del servidor Apache (la 0.6.2, en abril del año 1995). Casualmente, por esas fechas, la NCSA reemprendió el desarrollo de su servidor NCSA.

En aquel momento el desarrollo de Apache continuó por 2 líneas paralelas. Por un lado, algunos desarrolladores siguieron trabajando en el Apache 0.6.2 para llegar a la serie 0.7, incorporando diversas mejoras. Otro grupo reescribió por completo el código de la primera versión, creando una nueva arquitectura de tipo modular. En julio del año 1995 migraron a esta nueva arquitectura las mejoras desarrolladas para Apache 0.7, haciéndose público como Apache 0.8.

Page 16: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 14

El día 1 de diciembre del año 1995, apareció Apache 1.0, que incluía abundante documentación y muchas mejoras en forma de módulos que se podían incrustar. Después, Apache sobrepasó al servidor NCSA como el más popular en Internet, posición que ha mantenido hasta hoy. En el año 1999 los miembros del Grupo Apache fundaron la Apache Software Foundation, que da soporte de tipo legal y financiero al desarrollo del servidor Apache y los proyectos relacionados que ha ido surgiendo.

Definición:

Apache es un servidor web HTTP de código abierto para plataformas Unix (BSD, GNU/Linux, etc.), Windows, Macintosh y otras, que implementa el protocolo HTTP/1.1 y la noción de sitio virtual.

El servidor Apache se desarrolla dentro del proyecto HTTP Server (httpd) de la Apache Software Foundation.

Apache es altamente configurable, admite bases de datos de autenticación y negociado de contenido, aunque carece de una interfaz gráfica que ayude en su configuración. Apache es una aplicación que permite montar un servidor web en cualquier equipo y casi cualquier sistema operativo. Al contrario que IIS (Internet Information Server) que sólo funciona en sistemas operativos de Microsoft.

Apache soporta PHP como lenguaje de programación. Con los módulos adecuados, Apache puede soportar también ASP.

Características: 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.

Page 17: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 15

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. * Soporte para los lenguajes perl, python, tcl y PHP.

* Módulos de autenticación: mod_access, mod_auth y mod_digest.

* Soporte para SSL y TLS.

* Permite la configuración de mensajes de errores personalizados y negociación de contenido.

* Permite autenticación de base de datos basada en SGBD.

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.49

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.

Page 18: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 16

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 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.

Compatibilidad:

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, Windows y Macintosh, 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.

Page 19: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 17

Instalación y Configuración del Servidor Apache en Windows: En la práctica Apache se instala de varias formas: -El programa exclusivo, al que después se le agregan manualmente distintos módulos. Es lo que se explica en este artículo.

-El paquete XAMPP que incluye Apache, la base de datos MySQL, PHP y Perl.

-Otras distribuciones como LAMP o MAMP.

La instalación de la aplicación es sencilla. Descarga de Apache.org. la última versión para Windows. Crea dos carpetas en la unidad C, la primera de nombre Apache y la segunda servidor_web. Descomprime el archivo descargado y ejecútalo, sigue los pasos de la instalación y de los datos que te piden solo escoge el destino de la instalación, que será la carpeta que creaste en C:\Apache, los otros datos déjalos de la forma predeterminada para configurarlos más tarde. El programa al instalarse crea un icono en el área de notificación que te permitirá: iniciar, detener y reiniciar Apache; tienes que tener en cuenta que cualquier cambio que hagas en el archivo de configuración no tendrá efecto hasta que reinicies el servidor. Configuración de Apache. Toda la configuración para el funcionamiento de Apache se guarda en un archivo de texto nombrado: httpd.conf que se encuentra en la ruta C:\Apache\conf, lo podemos editar en cualquier editor de texto como el Bloc de notas pero un programa recomendado es Notepad++, software libre que es inmejorable. Tienes dos opciones a continuación: 1- Primera opción, la más sencilla, descarga en el siguiente link una copia del archivo httpd.conf, descomprímelo, cópialo o muévalo a la carpeta C:\Apache\conf y sustituye el archivo original, ya tendrás listo para funcionar el servidor. 2- La otra opción, más avanzada pero no difícil, abre el archivo httpd.conf y edita manualmente las líneas que se indican: Todas las líneas que comienzan con el símbolo # son comentarios, explican en cada sección las distintas opciones pero se encuentran en ingles. La línea 52 Listen indica el puerto y dirección IP por el que el servidor va a recibir las peticiones, puedes usarla de las siguientes maneras: 1- El servidor va recibir peticiones solo de la misma PC: Listen localhost:80 2- Recibirá peticiones de otras máquinas en una red local: Listen 80

Page 20: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 18

En la línea 149 DocumentRoot es necesario especificar la ruta de la carpeta local que contendrá las páginas y archivos a servir, en tu caso será la carpeta que creaste enC:/servidor_web, quedaría de la siguiente forma: DocumentRoot "C:/servidor_web" La línea 177 <Directory> establece los permisos necesarios al directorio anterior, quedaría: <Directory "C:/servidor_web"> Esta es la configuración con los parámetros esenciales para comenzar a utilizar Apache. Guarda los cambios realizados y reinicia el servidor dando clic en el icono del área de notificación. También es posible configurar Apache usando un archivo de texto llamado .htaccess, en el que se agregan todos los parámetros necesarios. Es usado cuando hospedamos nuestros archivos en un servidor web en la red, en el que no tenemos acceso al archivo principal de configuración httpd.conf.

Instalación y Configuración del Servidor Apache en Ubuntu:

Apache es el servidor web mas utilizado en sistemas GNU/Linux y Unix. Los servidores web se usan para el alojamiento de páginas web solicitadas por el cliente a través de internet desde los navegadores de web, actualmente el servidor apache se encuentra en la versión 2. Viene con las siguientes ventajas y beneficios proporcionados por el software de servidor apache:

• Estabilidad. • Trabaja sobre una amplia gama de plataformas. • Extremadamente flexible. • Varios sitios alojados en un solo servidor apache. • El servidor web más utilizado en www.

Protocolo HTTP.

El protocolo utilizado para ver páginas web es el HyperText Tranfer-Protocol(Protocolo de Transferencia de hipertexto), protocolo es de los pilares de la www.

Puertos HTTP.

El puerto predeterminado para las solicitudes http es el puerto 80, aunque también puede configurarse un servidor web para que utilice un puerto diferente que no se

Page 21: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 19

esté ocupando en ese momento. También existe otro puerto para el servidor apache el cual es 443, este puerto solamente es ocupado para conexiones seguras del apache (https).

Instalación de Apache.

Para poder instalar apache solamente tenemos que ejecutar el siguiente comando.

root@server1:~# apt-get install apache2 elinks

Lo que se hizo fue instalar el servidor apache2 y el paquete elinks es un navegador web vía consola de comandos. Cuando termina de instalar el servidor apache será iniciado automáticamente, ante solamente tendremos acceso a la página de bienvenida o de prueba de apache.

Configuración Básica de Apache.

Como sabemos al terminar de instalar apache ya es iniciado en automático ya que no requiere de modificaciones para funcionar. Lo que haremos en este momento es añadir un alias a un directorio localizado en /var/ww/pub y cual queremos visualizar como el directorio /pub/ en apache, para esto tenemos que crear un fichero de configuración el cual nos permite hacer esta opción. Como vimos anteriormente todos estos archivos de configuración van dentro del directorio sites-available.

root@server1:~# cd /etc/apache/sites-available

Estando dentro de este directorio tenemos que crear el archivo de configuracion.

root@server1:sites-available# vim alias.conf

El cual tendrá la siguiente información.

Alias /pub /var/www/pub

<Directory "/var/www/pub"> Options Indexes Includes FollowSymLinks AllowOverride all </Directory> }}}

Guardamos el archivo y nos vamos a la siguiente ruta:

root@server1:sites-available# cd /var/www

Dentro de esta ruta en donde se depositaran las páginas web de cada sitio que tengamos registrados. Lo que haremos es crear una carpeta pub y le daremos permisos.

Page 22: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 20

root@server1:www# mkdir pub

Lo que haremos es dar permisos de grupo para que sea ocupada por apache.

root@server1:www# chown root.www-data pub -R

Ahora tendremos que recargar los ultimos cambios de nuestro servidor web.

root@server1:www# /etc/init.d/apache2 reload

• Reloading web server config apache2 [ OK ] root@server1:/var/www#}}} Utilizaremos nuestro navegador web elinks el cual se ejecuta desde consola

root@server1:www# elinks http://192.168.1.243/pub

Ventajas:

Corre en una multitud de Sistemas Operativos, lo que lo hace prácticamente universal.

Apache es una tecnología gratuita de código fuente abierto. El hecho de ser gratuita es importante pero no tanto como que se trate de código fuente abierto. Esto le da una transparencia a este software de manera que si queremos ver que es lo que estamos instalando como servidor, lo podemos saber, sin ningún secreto, sin ninguna puerta trasera ;).

Apache es un servidor altamente configurable de diseño modular. Es muy sencillo ampliar las capacidades del servidor Web Apache. Actualmente existen muchos módulos para Apache que son adaptables a este, y están ahí para que los instalemos cuando los necesitemos. Otra cosa importante es que cualquiera que posea una experiencia decente en la programación de C o Perl puede escribir un módulo para realizar una función determinada.

Apache trabaja con gran cantidad de Perl, PHP y otros lenguajes de script. Perl destaca en el mundo del script y Apache utiliza su parte del pastel de Perl tanto con soporte CGI como con soporte mod perl. También trabaja con Java y páginas jsp. Teniendo todo el soporte que se necesita para tener páginas dinámicas.

Apache te permite personalizar la respuesta ante los posibles errores que se puedan dar en el servidor. Es posible configurar Apache para que ejecute un determinado script cuando ocurra un error en concreto.

Page 23: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 21

Tiene una alta configurabilidad en la creación y gestión de logs. Apache permite la creación de ficheros de log a medida del administrador, de este modo puedes tener un mayor control sobre lo que sucede en tu servidor.

Desventajas:

El mecanismo DSO no puede ser usado en todas las plataformas porque no todos los sistemas operativos soportan carga dinámica del código en el espacio de direcciones de un programa.

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 Independent Code, posición de código independiente) necesita maniobras complicadas para direccionamiento dinámico, que no es necesariamente tan rápido como el direccionamiento absoluto.

No se puede usar DSO para todo tipo de módulos, debido a que los módulos DSO no pueden ser enlazados con otras bibliotecas basadas en DSO (ld -lfoo) en todas las plataformasB.4. En otras palabras, los módulos compilados como ficheros DSO están restringidos a utilizar sólo símbolos del núcleo de Apache, de las biblioteca C (libc ) y todas las demás bibliotecas dinámicas o simbólicas usadas por el núcleo de Apache o desde archivos de bibliotecas estáticas (libfoo.a ) que contengan PIC. La única ocasión de usar otro código es, o bien asegurarse de que el núcleo de Apache ya contenga una referencia a él, cargando uno mismo el código por medio de dlopen() , o bien habilitando la regla SHARED_CHAIN cuando se compila Apache y la plataforma soporta el enlace de ficheros DSO contra bibliotecas DSO.

Bajo algunas plataformas (varios sistemas SVR4) no hay forma de forzar al enlazador para que exporte todos los símbolos globales cuando se enlaza el programa ejecutable httpd. Pero sin la visibilidad de los símbolos del núcleo de Apache, ningún módulo estándar de Apache podría ser usado como DSO. La única posible solución es compilar el sistema con la opción SHARED_CORE porque de este modo los símbolos globales se fuerzan a ser exportados.

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.

Page 24: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 22

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.

3.- INTERNET INFORMATION SERVER (I.I.S).

Historia:

IIS fue inicialmente lanzado como un conjunto de servicios basados en Internet para Windows NT 3.51. IIS 2.0 siguió agregando soporte para el sistema operativo Windows NT 4.0 y IIS 3.0 introdujo las Active Server Pages, una tecnología de scripting dinámico.

IIS 4.0 eliminó el soporte para el protocolo Gopher y fue puesto con Windows NT como un CD-ROM de "Paquete Opcional" separado.

La versión de IIS 7.5 corresponde a Windows Server 2008, e IIS 5.1 a Windows XP Professional. La versión IIS 5.1, para Windows XP, es una versión compacta del IIS que soporta sólo 10 conexiones simultáneas y sólo un sitio web. IIS 6.0 ha agregado soporte para IPv6.

Windows Vista viene con IIS 7.0 preinstalado. No limitará el número de conexiones permitidas pero limitará el flujo de tareas basándose en las solicitudes activas concurrentes, mejorando el uso y el rendimiento en escenarios punto-a-punto (peer-to-peer).

Definición:

Es un servidor web y un conjunto de servicios para el sistema operativo Microsoft Windows. Originalmente era parte del Option Pack para Windows NT. Luego fue integrado en otros sistemas operativos de Microsoft destinados a ofrecer servicios, como Windows 2000 o Windows Server 2003. Windows XP Profesional incluye una versión limitada de IIS. Los servicios que ofrece son: FTP, SMTP,NNTP y HTTP/HTTPS.

Page 25: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 23

Características:

Actualmente forma parte de la distribución estándar de Windows, de modo que no se necesita una licencia extra para instalarlo.2 Este servicio convierte a una PC en un servidor web para Internet o una intranet, es decir que en las computadoras que tienen este servicio instalado se pueden publicar páginas web tanto local como remotamente.

Los servicios de Internet Information Services proporcionan las herramientas y funciones necesarias para administrar de forma sencilla un servidor web seguro.

El servidor web se basa en varios módulos que le dan capacidad para procesar distintos tipos de páginas. Por ejemplo, Microsoft incluye los de Active Server Pages (ASP) y ASP.NET. También pueden ser incluidos los de otros fabricantes, como PHP o Perl.

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

Compatibilidad con S.O:

Solo funciona para Windows.

Page 26: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 24

Instalación, Configuración y Administración:

Instalación. 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 término Características (dentro de la sección Configuración).

Fig. 3.1 IIS

Seleccionamos Activar o desactivar las características de Windows. Activaremos la característica Internet Information Services y pulsaremos Aceptar.

Page 27: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 25

Fig. 3.2 IIS

Esperaremos a que se instale la característica y ¡listo! ya tenemos en nuestro Windows 8 IIS instalado.

Fig. 3.3 IIS

Page 28: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 26

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.4 IIS

Administración. El servidor posee un panel de administración en el cual es posible configurar varios parámetros del funcionamiento de la aplicación. Dicho panel es posible abrirlo de varias formas. 1- Crea un acceso directo en el Escritorio, en el cuadro "Ubicación del elemento" introduce la ruta: C:\Windows\System32\inetsrv\InetMgr.exe

2- En el Panel de control selecciona Herramientas administrativas, en ella "Administrador de Internet Information Services (IIS)".

Page 29: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 27

3- Escribe en el cuadro de Inicio o en la pantalla de inicio en Windows 8: inetmgr y presiona la tecla Enter.

El panel de administración de IIS es similar a la siguiente imagen:

Fig. 3.5 IIS

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.

Page 30: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 28

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.

Cuadro Comparativo de I.I.S y Apache:

Page 31: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 29

Fig. 3.1 CUADRO COMPARACION APACHE-IIS

Page 32: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 30

4.- Instrucciones más usadas para la administración , gestión y actualización de portales web a través de Apache.

Para Windows:

Comenzar a utilizar Apache. Copia en la carpeta C:/servidor_web alguna página web o cualquier archivo y accede a él escribiendo en la barra de direcciones de tu navegador 127.0.0.1 o localhost . En el caso de que sea una página web que estas diseñando la verás cómo realmente se mostrará en Internet. Cualquier problema del servidor estará reflejado en los logs que guarda enC:\Apache\logs, los puedes abrir con el bloc de notas, en el archivo access.log se registran todos los accesos hechos al servidor, tanto de tu PC como de internet, en error.log se registran todos los errores de su funcionamiento, te ayudará mucho analizarlos periódicamente. Acceder al servidor Apache desde la red local. Para acceder al servidor desde otra computadora conectada en una red local solo es necesario escribir en la barra de direcciones la dirección IP de la computadora que sirve de host, es decir la que tiene el servidor Apache instalado. Para conocer la dirección IP necesaria solo abre una ventana de CMD, escribiendo en Inicio >CMD, escribe en la ventana que se abre IPCONFIG /ALL y oprime Enter, busca la línea Puerta de enlace, el número a continuación es la dirección IP del proxy. En caso de que el servidor escuche en otro puerto diferente al 80 (predeterminado) escribe: "dirección ip:puerto", por ejemplo: 192.168.1.3:8080. En caso de conflictos al tratar de conectarse a un equipo usando una red local, verifica lo siguiente: • La dirección IP del equipo al que deseas conectarte. • Si Apache está escuchando en el puerto al que se efectúa la petición. • Si el firewall de Windows está bloqueando la conexión. • Si se recibe un mensaje de error con el código 403 significa que no se cuenta con los permisos necesarios para acceder al directorio, en ese caso establécelo de la siguiente forma: <Directory " ruta al directorio"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all

Page 33: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 31

</Directory>

Como conectarse a internet a través de Apache desde tu PC. Para que tu conexión a internet pase a través del servidor será necesario configurarlo como un proxy fordward para eso en el archivo de configuración httpd.conf descomenta, (quitar el signo #) las siguientes líneas: LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so Después agrega en el final del archivo la siguiente línea: ProxyRequests On Cierra y guarda los cambios. • Accede a las Opciones de internet mediante el Panel de Control. • En la pestaña Conexiones pulsa el botón Configuración de LAN y marca la casilla Usar un servidor Proxy • Escribe en Dirección: 127.0.0.1 y en Puerto: 80 o el que vayas a usar. • Presiona Aceptar en todas las ventanas. • Reinicia el servidor. Lo anterior se aplica si usas el navegador Internet Explorer y Google Chrome, si usas Firefox las opciones anteriores tienes que ingresarlas en: Opciones >Configuración >Configurar como Firefox se conecta a Internet. A partir de ahora toda tu conexión pasa a través de Apache, sea direcciones locales o externas. Como guardar en la cache del servidor web las págin as.

Para guardar en la cache del servidor web las páginas web haz lo siguiente: Crea una carpeta en la unidad C de nombre cacheroot, será la que almacene los archivos de la cache, también puedes crearla en otra unidad, en ese caso tendrías que indicar su ruta en el archivo de configuración. En el archivo httpd.conf descomenta, (quita el signo #) la siguiente línea: LoadModule expires_module modules/mod_expires.so Y agrega las siguientes líneas: LoadModule cache_module modules/mod_cache.so LoadModule disk_cache_module modules/mod_disk_cache.so

El valor ExpiresDefault A604800 especifica el tiempo en segundos que persistirá tu cache, puedes modificarlo de acuerdo a tus necesidades. Todos los demás valores puedes ajustarlo a tu conveniencia.

Page 34: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 32

Lee las siguientes páginas en la carpeta de manuales: C:/Apache/manual/mod/mod_disk_cache.html C:/Apache/manual/mod/mod_expires.html Reinicia el servidor. Servir tus páginas en internet y permitir el acceso al servidor desde el exterior Para servir tus páginas web en internet primero es necesario configurar la línea 147ServerName, Nombre del servidor, tienes las siguientes opciones: 1- Dispones de una conexión a internet fija, sustituye localhost por la dirección IP que tienes asignada seguida de dos puntos y el puerto a usar, el predeterminado en el protocolo http es el 80. Si te conectas a través de un router sería la dirección IP de este ya que la tuya es una dirección local en este caso.

2- Tienes una conexión a internet dinámica, lo más común, significa que cada vez que te conectas tu proveedor del servicio de internet te asigna una dirección IP diferente. En este caso cada vez que te instales necesitas ingresar en tu archivo httpd.conf la dirección IP asignada en ese momento, lo que es bastante incómodo.

3- La otra opción es acceder al servicio que ofrece DynDNS que va a sincronizar la dirección IP que te asignen con tu servidor. Lee más a continuación de un extracto de Wikipedia.

Usar el Servicio de DynDNS. DynDNS (Dynamic Network Services, Inc.) es una compañía de Internet de Estados Unidos dedicada a soluciones de DNS en direcciones IP dinámicas. Ofrece servicios gratuitos de redirección a IP de subdominios de una gran lista de nombres disponibles, ofreciendo a particulares la oportunidad de crear un servidor en Internet gratuitamente con una dirección como 'wikipedia.dyndns.com', Debe ser actualizado mediante algún cliente en la máquina del cliente, tales como el que la misma compañía ofrece. Puedes acceder a DynDNS desde el siguiente vínculo: DynDNS, tienes que registrarte y a continuación escoges un nombre de dominio por el que podrás acceder a tu servidor desde internet, tienes que descargar un cliente de actualización https://www.dyndns.com/support/clients.html que ellos te ofrecen (es sencillo solo pesa alrededor de 700 KB) e instalarlo en tu PC. En este caso en tu archivo httpd.conf no tienes que modificar nada deja intactoServerName con el valor localhost:80 , a partir de ahora DynDNS se encargará de sincronizar tu dirección IP.

Page 35: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 33

Si ya configuraste el Nombre del servidor agrega al final de tu archivo httpd.conf la siguiente línea:

Listen 80 para acceder mediante el puerto 80 que es el predeterminado en la navegación web.

Hay proveedores de internet que cierran este puerto, puedes probar si ese es el caso tuyo accediendo a esta página:

Probar puertos introduciendo tu dirección IP y el puerto, si es así cambia probando otro puerto, por ejemplo el 8080 y especifícalo en el archivo httpd.conf de esta forma: Listen 8080

Es todo, en caso de que así funcione para acceder desde el exterior a tu página, tendrían que escribir en el navegador: tudireccionIP:8080/ Si has instalado el cliente de actualización de DynDNS no tendría que ser la necesariamente la dirección IP si no la dirección asignada por ese servicio.

Para Ubuntu:

Opciones de ejecución apache.

Apache tiene varias opciones de ejecución dentro apache.

root@server1:~# /etc/init.d/apache2 {start|stop|restart|reload|force-reload

Como podimos ver nuestro servidor apache tiene varias opciones:

OPCION DESCRIPCION

start Inicia el servicio de apache.

stop Detiene el servicio de apache.

restart Reinicia el servicio de apache.

reload Recarga los últimos cambios registrados dentro del servicio de apache.

Force-reload

Forza a realizar una recarga de los últimos cambios realizados dentro del servicio de apache.

Ejemplo: Como reiniciar el servidor apache.

root@server1:~# /etc/init.d/apache2 restart

Page 36: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 34

• Restarting web server apache2 [ OK ] root@server1:# }}}

Ficheros de configuración.#

La ruta de configuración de los archivos del servicio de apache se localiza en:

/etc/apache2/

Para poder entrar a la ruta solamente tenemos que hacer lo siguiente:

root@server1:~# cd /etc/apache/

Dentro de este directorio encontraremos varios archivos y carpetas como las siguientes:

OPCION DESCRIPCION

apache2.conf Dentro de este archivo se encuentra la configuración del servidor web apache.

conf.d Directorio en donde se encuentran los archivos de configuración de apache.

envvars Este archivo de configuración contiene la información del usuario, grupo Y PID del servicio de apache.

httpd.conf Este era el archivo de configuración, pero todavía esta siendo ocupado en la distribución Red Hat y derivados.

mods-available

Directorio en se depositan los módulos que se vayan agregar a nuestro servidor apache.

mods-enabled

Directorio donde se encontrara el modulo cuando ya este activado y esta disponible para apache. Este carpeta solamente contiene ligas suaves a los módulos.

port.conf Archivo de configuración en donde se especifica el puerto de escucha, por default es 80 y 443.

sites-available

Directorio en donde se encuentran los archivos de configuración de sitios o paginas web que configuremos. Dentro de esta carpeta se encuentra un archivo de default el cual trae la configuración de la pagina de bienvenida de nuestro apache.

Page 37: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 35

sites-enabled Directorio en donde se habilita los sitios web, también son ligas suaves a los sitios.

Descripción de parámetros.

Como vimos que creamos un archivo de configuración de una carpeta pub, comentaremos ahora para que es cada opción.

Parámetro Alias

Este parámetro permite definir directorios virtuales e instalar tu sitio web "fuera" del DocumentRoot e incluso en otro servidor.

Alias /pub /var/www/pub

Parámetro Directory

Este parámetro se usa para englobar un grupo de directivas que se aplicaran solamente al directorio especificado y a sus subdirectorios.

<Directory "/var/www/pub">

</Directory> }}}

Parámetro Options.

Configura las funcionalidades disponibles en un directorio en particular

Options Indexes Includes FollowSymLinks

AllowOverride all }}}

Parámetro Indexes.

Permite el uso de directivas que controlan el indexado de directorio.

Options Indexes Includes FollowSymLinks

AllowOverride all }}}

Page 38: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 36

Parámetro Includes.

Permite incluir Server-side, puede ejecutar programas dentro del servidor (php,perl, etc).

Options Indexes Includes FollowSymLinks

AllowOverride all }}}

Parámetro FollowSymLinks

El servidor seguira los enlaces simbolicos en este directorio.

Options Indexes Includes FollowSymLinks

AllowOverride all}}}

Parámetro AllowOverride

AllowOverride controla qué directivas de los ficheros .htaccess. Los valores de AllowOverride pueden ser "All", "None",

Options Indexes Includes FollowSymLinks

AllowOverride all }}}

Dominios Virtuales en Apache

Los dominios virtuales consisten en utilizar el mismo servidor web para atender varios dominios. En estos casos solo se dispone de una sola dirección IP pública y esta misma esta enlazada a varios dominios.

Configuración de VirtualHost

Tendremos que entrar a la siguiente ruta.

root@server1:~# cd /etc/apache2/

root@server1:apache2# }}}

Todas las configuraciones de los virtualhost se guardan dentro del directorio sites-available.

root@server1:apache2# cd sites-available/

Page 39: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 37

root@server1:sites-available# }}}

Ya estando adentro tendremos que crear el archivo de configuración de cada dominio.

root@server1:sites-available# vim rodmen.conf

Y tendremos que agregar lo siguiente.

<VirtualHost *>

DocumentRoot /var/www/rodmen.com ServerName www.rodmen.com ServerAdmin [email protected] ErrorLog /var/www/rodmen.com/log/error_log CustomLog /var/www/rodmen.com/log/access_log combined </VirtualHost> <Directory "/var/www/rodmen.com"> AllowOverride All </Directory> }}}

Tendremos que crear el depósito de la página web del dominio rodmen.com.

root@server1:sites-available# mkdir /var/www/rodmen.com

Parámetros Dominios Virtuales

Ahora vamos a explicar para que sirva cada parámetro del VirtualHost.

Parámetro VirtualHost

En apache existen dos tipos de Host Virtuales:

• Host Virtual basado en IP. • Host Virtual basado en nombres.

En este parámetro que estamos viendo indicamos que todas las direcciones IP asignadas apache serán utilizadas para soportar los Host Virtuales.

<VirtualHost *>

</VirtualHost> }}}

Por cada virtualhost que vayamos agregar lo tendremos que agregar entre las directivas <VirtualHost> </VirtualHost>

Parámetro DocumentRoot.

Indica el directorio desde donde se servirán los documentos web.

Page 40: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 38

DocumentRoot /var/www/rodmen.com

Parámetro ServerName

El cual indica el nombre del Host por el cual responderá su sitio web, tambien se puede especificar algún puerto de escucha.

ServerName www.rodmen.com

Parámetro ServerAdmin.

Especifica la dirección de correo electrónico del administrador del servidor.

ServerAdmin [email protected]

Parámetro ErrorLog.

Esta opción indica en donde se encuentra el archivo en el cual se registran los errores para este sitio.

ErrorLog /var/www/rodmen.com/log/error_log

Parámetro CustomLog.

Esta opción especifica primero el archivo donde se anotan las peticiones hechas al servidor y en segundo lugar el tipo de anotación según se haya definido.

CustomLog /var/www/rodmen.com/log/access_log combined

Usuario Encargado del Deposito.

Tendremos que agregar el usuario encargado del mismo.

root@server1:sites-available# useradd -g ftp -d /var/www/pub/ -s /bin/ftp \ rodmen

root@server1:/var/www/pub# passwd rodmen Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully root@server1:sites-available# }}}

Page 41: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 39

Tendremos que cambiar el usuario y grupo encargado del deposito.

root@server1:sites-available# chown rodmen.www-data /var/www/rodmen.com/ -R

Logs del Sitio.

Ahora tendremos que crear el directorio de los log los archivo que contiene.

root@server1:sites-available# cd /var/www/rodmen.com/

root@server1:rodmen.com# }}}

Tendremos que crear el directorio log.

root@server1:rodmen.com# mkdir log

Dentro de este tendremos que crear dos archivo de texto plano, los cuales registraran los accesos al sitio como también los errores.

root@server1:rodmen.com# touch log/access_log

root@server1:rodmen.com# touch log/error_log }}}

Fichero hosts.

Tendremos que editar el fichero hosts ya que sean enlace el nombre con la ip de nuestro servidor.

root@server1:sites-available# vim /etc/hosts

Agregar la siguiente linea.

127.0.0.1 localhost

127.0.1.1 server1.factor.dynalias.net server1 192.168.1.243 www.rodmen.com rodmen }}}

Una forma de checar que ya esta funcionando el hacer un ping al dominio.

root@server1:sites-available# ping -c 2 www.rodmen.com

Page 42: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 40

Habilitando VirtualHost.

Ya que tenemos el archivo de configuración del virtualhost, usuario, logs y hosts, ya podemos activar el dominio virtual dentro de apache. Primero entraremos en la ruta en donde se encuentra el archivo de configuración del virtualhost a activar.

root@server1:rodmen.com# cd /etc/apache2/sites-available/

root@server1:sites-available#}}}

Ya estando ahí tendremos que usar el comando a2ensite y el archivo de configuracion del dominio virtual.

root@server1:sites-available# a2ensite rodmen.conf

Site fabian.conf installed; run /etc/init.d/apache2 reload to enable. root@server1:sites-available# }}}

Nos muestra una salida en la cual indica que tenemos que hacer una recarga de apache.

root@server1:sites-available# /etc/init.d/apache2 reload

• Reloading web server config apache2 [OK] root@server1:sites-available# }}}

Entonces podemos ahora ejecutar nuestro navegador web desde consola.

root@server1:sites-available# elinks http://www.rodmen.com

Desactivando VirtualHost.

Para poder desactivar un dominio tendremos que ejecutar el comando a2dissite mas el archivo del virtualhost.

root@server1:sites-available# a2dissite rodmen.conf

Site fabian.conf disabled; run /etc/init.d/apache2 reload to fully disable. }}}

Y nos pide que también recarguemos el apache.

Page 43: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 41

root@server1:sites-available# /etc/init.d/apache2 start

• Starting web server apache2 [OK] root@server1:sites-available# }}}

Habilitar htaccess.#

Los htaccess son archivo en texto plano ocultos que contienen una serie de directivas para el servidor apache. El servidor busca dentro del directorio y subcarpetas del sitio El uso para que se ocupan los htaccess para:

• Impedir listados del contenido de un directorio. • Redireccionar el tráfico web. • Crear mensajes de error personalizado. • Seguridad extra un sitio. • Etc.

Ejemplo de htaccess.

Para poder crear el fichero htaccess, lo haremos dentro del depósito del sitio a desear.

root@server1:~# cd /var/www/rodmen.com/

root@server1:rodmen.com#}}}

Crearemos el archivo htaccess pero este archivo es oculto.

root@server1:rodmen.com# touch .htaccess

Ahora tendremos que editar este archivo, agregarle los siguientes datos y guardarlo.

AuthName "ZONA VIP"

AuthType Basic require valid-user AuthUserFile /var/www/rodmen.com/claves}}}

Hay que crear otro archivo plano en donde se almacenaran contraseñas.

root@server1:rodmen.com# touch /var/www/rodmen.com/claves

Tendremos que darle seguridad al fichero que hemos creado.

Page 44: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 42

root@server1:rodmen.com# chmod 600 claves

root@server1:rodmen.com# chown www-data.www-data claves root@server1:rodmen.com# }}}

Ahora crearemos el usuario y contraseña.

root@server1:rodmen.com# htpasswd claves rodrigo

New password: Re-type new password: Adding password for user rodrigo }}}

Reiniciamos apache.

root@server1:rodmen.com# /etc/init.d/apache2 restart

• Restarting web server apache2 [ OK ] root@server1:rodmen.com# }}}

Ahora que usemos nuestro navegador web hacia el sitio rodmen.com, nos solicitara el usuario y contraseña para poder acceder. Lo que se hizo es darle más seguridad al sitio ya solamente usuario autenticados podrán conectarse al sitio.

Módulos Activados.

Un módulo en Apache, es la forma de poder agrupar y modularizar ciertos funcionamientos para el servidor, se encuentra una lista de los módulos en: htp://modules.apache.org Una de las principales razones de emplear módulos en Apache, es que no toda instalación requiere de las mismas funcionalidades, si fueran incluidas todas las funcionalidades posibles en una versión única de Apache, esto lo haría sumamente pesado en cuanto a requerimientos de Memoria RAM y espacio en Disco Duro. Existen dos tipos de módulos:

• En el código fuente de Apache: Estos están incluidos en el Tar principal de Apache.(Ejemplo: "Virtual Hosting","Rewrite")

• Por 3eros: Se distribuyen en productos utilizados en conjunción con Apache. (Ejemplo: Mod_JK (Java))

Para poder ver los módulos que tenemos activados en apache tenemos que ejecutar:

root@server1:~# apache2ctl -l

Compiled in modules: core.c mod_log_config.c mod_logio.c http_core.c mod_so.c }}}

Page 45: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 43

Activar módulos.

En algunos casos apache no carga los módulos automáticamente y tendremos que agregarlos manualmente.

root@server1:~#a2enmod modulo

Desactivar módulos.#

Para desactivar módulos tenemos que ejecutar el siguiente comando.

root@server1:~#a2dismod modulo

Herramienta apache2ctl.#

Es una interfaz de usuario al servidor que ayudar al administrador controlar el funcionamiento del demonio de apache. La herramienta apache2ctl tiene varias opciones:

OPCION DESCRIPCION

start Inicia el servicio de apache.

stop Detiene el servicio de apache.

reload Reinicia el servicio de apache.

fullstatus Muestra un reporte del estado completo de apache.

status Muestra un reporte del estado breve de apache.

graceful Reinicia delicadamente el servicio apache enviando una señal SIGUSR1.

configtestCorre una prueba hacia los archivos de configuración de apache, en caso de que devuelva Syntax OK indica que toda la configuración de apache está bien o marca el error.

Page 46: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 44

Logs Apache.

Apache contiene dos archivos en los cuales se almacenan los log de acceso y error.

• access.log • error.log

Es tán importante esta información para el administrador del servidor ya que ellos pueden obtener estadísticas o un posible problema que tenga el mismo. Se recomienda siempre ver los logs.

root@server1:~# tail -f /var/log/apache2/error.log

Prueba Para saber si nuestro servidor funciona correctamente tenemos que abrir el navegador web y escribir como url: http://localhost o http://127.0.0.1 En esta última opción puedes también la dirección ip de la maquina que estés usando. Finalmente veras algo como esto:

Page 47: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 45

Fig. 4.1 PRUEBA

Configuración del servidor apache. Cuando hablamos de servidores generalmente su instalación y puesta en marcha es mucho más sencilla que su configuración es por esa razón que cualquier tutorial de instalación va acompañado del tutorial de configuración y esta no es la excepción. Para configurar el servidor apache debes buscar los archivos destinados para ello, los cuales están en la carpeta /etc/apache2. Reiniciar el servidor Apache 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

Page 48: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 46

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. 4.2 CONFIGURACION APACHE

Busca el archivo default el cual se encuentra ubicado en la carpeta/etc/apache2/sites/available. Una vez que hayas abierto el abierto este archivo veras algo como esto:

Page 49: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 47

Fig. 4.3 CONFIGURACION 2 APACHE

Finalmente cambia las lineas 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 más 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 mods-available 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 mods-enabled.

Page 50: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 48

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.

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 && sudo ln -s /etc/apache2/mods-available/userdir*.

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. 4.4 COFIGURACION 3 APACHE

El carácter '~'comúnmente conocido como gusanillo y que se obtiene con Alt Gr + 4 sirve para indicar a apache que debe servir la página desde el home del usuario (en Linux el 'gusanillo' equivale a la carpeta home). Ejemplo, si hemos creado un usuario y éste ha creado la carpeta /home/usuario/public_html y ha copiado en ella su página web, desde cualquier PC de la red podremos acceder a dicha carpeta yendo a la dirección http://localhost/~usuario/. Para que la página aparezca automáticamente, es necesario crear un archivo llamado index.html.

Page 51: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 49

5.- Software para Servidores Web.

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.3 Está escrito completamente en C. Puede usarse como un sistema 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.5 • 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.6 • Soporta los métodos de registro: � NCSA � W3C � Combinado • Soporta los métodos de autenticación: � plain � htpasswd � htdigest � PAM

Page 52: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 50

CONFIGURACION:

En el administrador web poniendo en la terminal lo siguiente.

cherokee-admin –b

Fig. 5.1 CONFIGURACION CHEROKEE

El cual nos dará los datos de login necesarios como son el User el Password y la Url para entrar en el administrador web.

Fig. 5.2 CONFIGURACION CHEROKEE

Page 53: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 51

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”

Fig. 5.3 CONFIGURACION CHEROKEE

Ahora creamos un comportamiento nuevo, seleccionamos “lenguajes” “php” y “añadir” nos aparece una ventana de información y presionamos el botón “crear”.

Fig. 5.4 CONFIGURACION CHEROKEE

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”

Page 54: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 52

Fig. 5.5 CONFIGURACION CHEROKEE

Solo queda “guardar” que se encuentra en la parte superior derecha, nos aparecerá una ventana informativa y presionaremos en “reinicio suave”

Fig. 5.6 CONFIGURACION CHEROKEE

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 .

Page 55: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 53

Fig. 5.7 CONFIGURACION CHEROKEE

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 línea “<?php phpinfo(); ?>” guardamos y probamos que funciona en nuestro navegador web con la dirección ip de nuestro servidor, por ejemplo http://192.168.0.20/info.php

Fig. 5.8 CONFIGURACION CHEROKEE

Para finalizar solo nos queda instalar el módulo MySQL para php5 con un

aptitude install php5-mysql

Page 56: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 54

Fig. 5.9 CONFIGURACION CHEROKEE

INSTALACION:

Para la instalación completa del servidor se utiliza MySQL, php y Cherokee, lo primero que se hace es abrir una terminal e instalar los paquetes necesarios empezando por MySQL, durante la instalación nos preguntara por el password para el root que introduciremos para poder continuar con la instalación.

aptitude install mysql-server mysql-client

Una vez instalado continuamos con la instalación de Cherokee.

aptitude install Cherokee

Lo siguiente será instalar php5.

aptitude install php5-cgi

Y continuamos editando el archivo /etc/php5/cgi/php.ini con vim, nano o el editor que utilices habitualmente, nos tendremos que dirigir a la linea 845 y descomentar la linea “cgi.fix_pathinfo=1″ después guardamos el archivo y reiniciamos el servidor Cherokee.

/etc/init.d/cherokee restart

Para comprobar que funciona abrimos nuestro navegador y en la barra de dirección ponemos la ip de nuestro servidor, si no la sabemos podemos utilizar el comando ifconfig como root desde la terminal para averiguarla.

Page 57: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 55

ADMINISTRACION:

Si accedemos a la documentación de cherokee podremos leer que todo el proceso de modificación de la configuración es recomendable hacerlo mediante una herramienta llamada cherokee-admin. Esta herramienta de configuración nos permite manejar nuestro servidor sin tener que editar ficheros de configuración, ya que se hace accediendo mediante web. Para ello deberemos ejecutar en una consola y con privilegios de administrador el comando cherokee-admin, lo que dará como resultado algo similar a esto:

Fig. 5.10 ADMINISTRACION CHEROKEE

Con estos datos accederemos desde una navegador a localhost:9090, con lo que nos aparecerá una ventanita de acceso:

Fig. 5.11 ADMINISTRACION CHEROKEE

Una vez introducidos los datos obtenidos anteriormente con la ejecución del comando en consola ya tendremos acceso al panel de control de nuestro servidor, método recomendado para configurarlo según los desarrolladores del proyecto, aunque tenemos la opción de realizar modificaciones en el fichero /etc/cherokee/cherokee.conf.:

Page 58: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 56

Fig. 5.12 ADMINISTRACION CHEROKEE

En principio y según el equipo de cherokee, por defecto ya tiene una configuración bastante funcional, por lo que modificarlo ya lo haremos más adelante.

Page 59: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 57

TOMCAT

Apache Tomcat (también llamado Jakarta Tomcat o simplemente Tomcat) funciona como un contenedor de servlets desarrollado bajo el proyecto Jakarta en la Apache Software Foundation. Tomcat implementa las especificaciones de los servlets y de JavaServer Pages (JSP) de Sun Microsystems. Tomcat es mantenido y desarrollado por miembros de la Apache Software Foundation y voluntarios independientes. Los usuarios disponen de libre acceso a su código fuente y a su forma binaria en los términos establecidos en la Apache Software License.

CARACTERISTICAS:

Tomcat 5.x

• Implementado a partir de las especificaciones Servlet 2.4 y JSP 2.0 • Recolección de basura reducida • Capa envolvente nativa para Windows y Unix para la integración de las

plataformas • Análisis rápido JSP

Tomcat 6.x

• Implementado de Servlet 2.5 y JSP 2.1 • Soporte para Unified Expression Language 2.1 • Diseñado para funcionar en Java SE 5.0 y posteriores • Soporte para Comet a través de la interfaz CometProcessor

Tomcat 7.x

• Implementado de Servlet 3.0 JSP 2.2 y EL 2.2 • Mejoras para detectar y prevenir "fugas de memoria" en las aplicaciones

web • Limpieza interna de código • Soporte para la inclusión de contenidos externos directamente en una

aplicación web

Page 60: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 58

CONFIGURACION:

server.xml

server.xml es el archivo principal de configuración para Tomcat, al igual que otros archivos de configuración para productos empleados en servidor puede contener una gran variedad de parámetros, sin embargo, esta guia se concentrará en los parámetros principales.

Validación, <!-- --> y valores "Default"

El archivo server.xml es un archivo en XML , el cual de no contener una estructura conforme a XML, se indicará al arranque de Tomcat; dicho archivo se encuentra bajo el directorio /usr/local/tomcat/conf donde /usr/local/tomcat es el directorio definido en CATALINA_HOME.

Como cualquier otro documento en XML todo contenido entre <!-- --> es considerado un comentario, y por lo tanto cualquier parámetro que se encuentre entre estos caracteres no es utilizado por "Tomcat"; aquellos parámetros que no sean definidos dentro de server.xml son asignados un valor "Default" por Tomcat.

<Server> - </Server>

<Server> es el elemento principal del archivo server.xml y todas las demás secciones deben encontrarse entre estos nodos; el atributo port indica el puerto TCP donde se espera la señal de cierre (shutdown) de Tomcat, el cual rara vez es modificado.

<Listener>

A través de los elementos <Listener> se configuran las extensiones JMX ("Java Management Extensions") que serán utilizadas por Tomcat, dichos elementos toman dos atributos : className que indica la Clase diseñada para escuchar sobre eventos JMX y debug para especificar el nivel de "debug" generado al tiempo de ejecución.

<GlobalNamingResources> , <Resource> y <ResourceParams>

Anidado dentro de los elementos <GlobalNamingResources> es posible definir recursos JNDI para ser utilizados globalmente en Tomcat. Lo anterior evita que estos recursos tengan que ser declarados a nivel de WAR de manera individual.

A través de <Resource> es como define el tipo de recurso JNDI que será utilizado y mediante <ResourceParams> se especifican los parámetros específicos que tomará el recurso en dicha instancia de Tomcat.

Page 61: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 59

INSTALACION:

Acceder al directorio donde se a descomprimido. Ejemplo:

Fig. 5.13 INSTALACION TOMCAT

$CATALINA_HOME = Representa la raiz donde se ha instalado apache-tpmcat.

Cada uno de los directorios de la imagen 4 tienen su respectivo significado:

/bin – arranque, cierre, y otros scripts y ejecutables

/temp – archivos temporales

/conf – archivos XML y los correspondientes DTD para la configuración de apache-tomcat el más importante es server.xml.

/logs – archivos de registro (log) de apache-tomcat.

/webapps – directorio que contiene las aplicaciones web

/work – almacenamiento temporal de ficheros y directorios

El siguiente paso quizás es uno de los más importantes y es la creación de la variable de entorno JAVA_HOME. Ejemplo:

JAVA_HOME = directorio del JDK.

Page 62: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 60

Fig. 5.14 INSTALACION TOMCAT

Para acceder a la creación de la variable de entorno: Windows+Pausa>Opciones Avanzadas>Variables de Entorno>Nueva

Existen dos archivos sumamente importantes los cuales nos permitirán iniciar y parar apache-tomcat se encuentra en el siguiente directorio.

$CATALINA_HOME/bin/startup = para iniciar o arrancar

$CATALINA_HOME/bin/shutdown = para parar o detener

Fig. 5.15 INSTALACION TOMCAT

Seguidamente abrimos un navegador web y escribimos en el URL.

http://{host}:{port}/ = donde {host}{port} representa el hostname y el puerto donde corre apache-tomcat, entonces quedaría http://localhost:8080/ y aparecerá la pagina de bienvenida de apache-tomcat.

Page 63: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 61

Fig. 5.16 INSTALACION TOMCAT

Nota: Recuerda iniciar apache-tomcat o de lo contrario se producirá un ERROR.

Para poder acceder a las aplicaciones de gestión y administración de apache-tomcat es necesario crear un usuario accediendo al siguiente directorio.

$CATALINA_HOME/conf/tomcat-users.xml = este archive permite crear un username, password and roles

Fig. 5.17 INSTALACION TOMCAT

Entre la etiqueta tenemos que agregar la linea que permitirá crear un usuario. Ejemplo:

Fig. 5.18 INSTALACION TOMCAT

Page 64: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 62

Procedemos a parar e iniciar apache-tomcat > http://localhost:8080/ en el navegador > clic en Tomcat Manager > debemos ingresar el username and password anteriormente creado en el archivo tomcat-users.xml.

Fig. 5.19 INSTALACION TOMCAT

ADMINISTRACION:

Quizás el Tomcat no es muy bien visto porque no tiene una interfaz de administración tan amigable como el de IIS. Pero esto es totalmente falso. Desde las primeras versiones, Tomcat ha tenido un administrador vía web. Pero por razones de seguridad el acceso era bloqueado.

Quizás todos los hemos visto, pero no le hemos dado importancia. Cuando iniciamos el tomcat, se nos muestra una página como esta.

Fig. 5.20 ADMINISTRACION TOMCAT

Vemos un bloque llamado "Administration" y dentro un enlace que dice "Tomcat Manager". Y cuando se trata de ingresar allí, pide un usuario y una clave que ignoramos.

Pues bien, si vemos en esta misma página, está la explicación.

Page 65: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 63

Editemos el archivo $CATALINA_HOME/conf/tomcat-users.xml y agreguemos una línea como esta:

<?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="manager"/> <role rolename="admin"/> <user username="admin" password="admin" roles="admin,manager"/> </tomcat-users>

Reiniciamos el Tomcat, y tratamos de entrar nuevamente al Tomcat Manager utilizando el usuario admin con contraseña admin.

Fig. 5.21 ADMINISTRACION TOMCAT

Desde aquí podemos detener una aplicación en ejecución, reiniciarla, replegarla (desinstarla), y crear una nueva aplicación web. Incluso podemos cargar un nuevo .war.

Page 66: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 64

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.

Lighttpd es software libre y se distribuye bajo la licencia BSD. Funciona en GNU/Linux y UNIX de forma oficial. Para Microsoft Windows actualmente hay una distribución conocida como Lighttpd For Windows.

CARACTERISTICAS:

• Soporte para PHP, Ruby, Python y otros • Entorno chroot • Cifrado SSL • Autenticación (LDAP, htpasswd, otros) • 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 sistemas 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

CONFIGURACION E INSTALACION:

Descomprimimos la carpeta y la ubicamos donde mejor, más ordenado nos parezca. Como esto es un ejemplo la ubicare en la raíz de C mismamente:

C:LightTPD

Dentro de esta carpeta tenemos una subcarpeta (conf) con los distintos archivos de configuración del servidor.

Abrimos lighttpd-inc.conf con un editor de texto plano cualquiera (notepad, notepad++ o el que deseemos).

Page 67: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 65

Las líneas que empiezan por el carácter # (almoadilla) están comentadas, si deseamos descomentarlas solo hay que borrar ese carácter # inicial.

Al principio del archivo de configuración aparecen los distintos módulos que se van a cargar con el servidor (mod_acces, mod_alias…) pero muchos están comentados y no se van a cargar. De todos los comentados nos interesa descomentar las líneas correspondientes a:

# “mod_fastcgi”,

# “mod_rewrite”,

El módulo mod_fastcgi nos permitirá ejecutar PHP, Perl, .Net… y mod_rewrite traduce las URL para disponer de URLs amigables.

Si tenemos instalado otro Servidor Web en el mismo ordenador estara ocupando seguramente el puerto 80 o anque no este ocupado puede que debido al router u otro motivo no podamos usar el puerto que usan los servidores web por defecto (80).

Para cambiarlo descomentamos la linea que indica:

#server.port = 81

Y sustituimos el puerto 81 si no nos es válido por el que deseemos (8080, 8081…).

Guardamos los cambios y vamos a probar si está todo bien. Volvemos a la carpeta raíz donde se halla instalado el lightTPD (C:LightTPD) y ejecutamos el fichero TestMode.bat. Si no se ha abierto el navegador lo abrimos nosotros y escribimos como dirección URL:

http://localhost/

o bien si habíamos cambiado el puerto por ejemplo por el 81:

http://localhost:81/

Y ya tenemos instalado el servidor para hacer pruebas locales.

TIPOS DE SISTEMAS OPERATIVOS:

Los software anteriores son compatibles para diversas distribuciones de Linux y para las versiones de Windows server.

Page 68: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 66

CONCLUSION.

Para un desempeño óptimo del servidor deben tomarse muy en cuenta las consideraciones de hardware y software enunciadas ya que proporcionan un incremento en el rendimiento del sistema según las características de éste. Debe darse mucha importancia a la seguridad física del sistema ya que si no se analizan los factores físicos que puedan ocurrir todos los esfuerzos por asegurar un sistema con la tecnología más eficiente no van a servir de nada; se debe pensar más allá de las maneras elementales de sobrepasar los métodos de seguridad, no se debe poner énfasis en una sola manera en que el sistema puede ser atacado.

Page 69: Servidores Apache-ISS

SISTEMAS WEB UNIDAD 5 APACHE

MONTAUT OROPEZA DIEGO 67

FUENTES DE INFORMACION.

http://www.pydot.com/servidores/software

http://www.computing.es/infraestructuras/tendencias/1063034001801/tres-grandes-oportunidades-mercado-servidores-2015.1.html

http://es.wikipedia.org/wiki/Servidor

http://www.buenastareas.com/ensayos/Caracteristicas-De-Un-Servidor/649587.html

http://www.ecured.cu/index.php/Servidor_HTTP_Apache

Apache Server Project http://httpd.apache.org

Apache HTTP Server 2.0.49 Releasedhttp://www.apache.org/dist/httpd/Announcement2.html

Apache HTTP Server 1.3.31 Released http://www.apache.org/dist/httpd/Announcement.html

mod_ssl, The Apache Interface to OpenSSL http://www.modssl.org/

May 2004 Web Server Survey Finds 50 Million Sites http://news.netcraft.com/archives/2004/05/03/ may_2004_web_server_survey_finds_50_million_sites.html

http://es.wikipedia.org/wiki/Internet_Information_Services

http://mvpway.wordpress.com/2012/08/31/como-instalar-iis-8-en-windows-8/

http://norfipc.com/internet/instalar-usar-servidor-web-iis-windows.html