74
Revista realizada para la materia de SISTEMAS WEB impartida por el profesor GALLARDO GODINEZ JOSE ANTONIO. Creada por la alumna: MARTÍNEZ VILLEDA DULCE MARIA LIC. INFORMATICA

REVISTA DIGITAL APACHE E I.I.S

Embed Size (px)

DESCRIPTION

SERVIDORES, APACHE E I.I.S

Citation preview

Page 1: REVISTA DIGITAL APACHE E I.I.S

Revista realizada para la materia de SISTEMAS WEB impartida por el profesor GALLARDO

GODINEZ JOSE ANTONIO.

Creada por la alumna: MARTÍNEZ VILLEDA DULCE MARIA

LIC. INFORMATICA

Page 2: REVISTA DIGITAL APACHE E I.I.S

Índice Introducción ............................................................................................................. 5

Objetivo general ...................................................................................................... 6

Objetivos específicos............................................................................................... 6

SERVIDOR .............................................................................................................. 7

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

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

Las principales características de un servidor son:........................................... 7

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

Tendencias:........................................................................................................ 10

Compatibilidad con S.O.: .................................................................................. 12

Clasificaciones. .................................................................................................. 13

APACHE................................................................................................................ 18

Historia de Apache ............................................................................................. 18

Definición ........................................................................................................... 19

Características de Apache ................................................................................. 19

Versiones ........................................................................................................... 20

Configuración e Instalación ................................................................................ 21

Administración.................................................................................................... 25

Servidor Web Apache en Ubuntu .......................................................................... 28

Apache en Ubuntu (consola) ................................................................................ 29

Instalación .......................................................................................................... 29

Uso ..................................................................................................................... 31

Configuración del servidor apache. .................................................................... 32

Compatibilidad ................................................................................................... 35

Ventajas ............................................................................................................. 35

Desventajas ....................................................................................................... 36

Seguridad ........................................................................................................... 37

INTERNET INFORMATION SERVER (I.I.S). ........................................................ 39

Historia. .............................................................................................................. 39

Definición. .......................................................................................................... 39

Page 3: REVISTA DIGITAL APACHE E I.I.S

Características. .................................................................................................. 40

Versiones. .......................................................................................................... 40

Compatibilidad con S.O. .................................................................................... 40

Instalación, Configuración y Administración. ...................................................... 41

Instalación. ...................................................................................................... 41

Administración. ............................................................................................... 43

Ventajas. ......................................................................................................... 44

Desventajas. ................................................................................................... 44

Instrucciones mas usadas en apache ................................................................... 45

Ficheros de configuración.# ............................................................................... 46

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

Configuración de VirtualHost .......................................................................... 49

Usuario Encargado del Deposito. ................................................................... 51

Logs del Sitio. ................................................................................................. 52

Fichero hosts. ................................................................................................. 52

Habilitando VirtualHost. .................................................................................. 53

Desactivando VirtualHost. ............................................................................... 53

Habilitar htaccess.# ............................................................................................ 54

Ejemplo de htaccess. ...................................................................................... 54

Módulos Activados. ......................................................................................... 55

Herramienta apache2ctl. .................................................................................... 56

SOFTWARE PARA SERVIDORES WEB. ............................................................. 57

Cherokee ........................................................................................................... 57

Características: ............................................................................................... 57

Configuración: ................................................................................................. 58

Instalación: ...................................................................................................... 62

Administración: ............................................................................................... 63

TOMCAT ............................................................................................................ 64

Características: ............................................................................................... 64

Configuración: ................................................................................................. 65

Instalación: ...................................................................................................... 66

Page 4: REVISTA DIGITAL APACHE E I.I.S

Administración: ............................................................................................... 69

LIGHTTPD ......................................................................................................... 70

Características: ............................................................................................... 70

Configuración e Instalación: ............................................................................ 71

Conclusiones ......................................................................................................... 73

Bibliografía: ........................................................................................................... 74

Page 5: REVISTA DIGITAL APACHE E I.I.S

Introducción

En el presente trabajo se desarrollaran temas de sumo interés para la materia de

sistemas web así como para el desarrollador de dicho trabajo, algunos de los

temas que se abordaran van desde lo que son los servidores hasta el análisis e

instalación de lo que es el servidor apache y el servidor I.I.S (Internet Information

Server).

Apache es posiblemente el servidor Web más utilizado en el mundo. Sus orígenes

se remontan a 1995. Por esa época NCSA (National Center for Super Computing

Applicationes) creó un servidor Web que se convirtió en el más usado. Cuando se

abandona el proyecto de NCSA, los propios usuarios del mismo crearon un foro

para poder compartir parches e información respecto al servidor. Surge el Apache

Group. El servidor Apache se crea, entonces, a partir del código fuente del

servidor de NCSA. La primera versión del servidor Apache surgió en Abril de 1995.

Apache es un servidor flexible y simple que se ejecuta en varias plataformas:

Linux, UNIX, Windows 95/98/NT/XP/2000.

Internet Information service (IIS) es un conjunto de servicios que hacen que un

ordenador, normalmente preparado para ello, se convierta en un servidor web,

para que una maquina pueda ser servidor en una red de internet o intranet debe

tener un sistema operativo que soporte todo lo necesario para ello en este caso

Windows 2003 server es una buena opción o alguna versión superior del mismo,

incluso Windows XP professional es capaz de tener instalada una version de IIS

algo mas reducida y limitada.

Page 6: REVISTA DIGITAL APACHE E I.I.S

Objetivo general

Desarrollar una revista que le permita al lector comprender que es un servidor y

como funciona, la historia, características, ventajas y desventajas así como la

instalación de los servidores Apache e I.I.S (Internet Information Server).

Objetivos específicos

Analizar a detalle las características de los servidores.

Analizar el servidor Apache.

Analizar el servidor I.I.S.

Determinar cuál es el servidor que más nos conviene utilizar.

Page 7: REVISTA DIGITAL APACHE E I.I.S

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.

Page 8: REVISTA DIGITAL APACHE E I.I.S

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.

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:

Usos más comunes en las organizaciones y su descripción:

- Servidor Firewall (Muro contrafuego): se trata de un complejo Software que permite controlar el flujo de información y paquetes dentro de una red local, así como definir sus restricciones entre distintas redes como el caso de una LAN e Internet, utilizando los puertos lógicos y físicos de la computadora. Así mismo permite el enmascarado de la red, lo cual significa que la dirección IP que presenta fuera de la red, es la del servidor y no la de los equipos internos. Uno de los más utilizados es IPTables, el cual no es una aplicación en sí, sino parte del mismo núcleo del sistema operativo Linux, por lo que es muy robusto y estable, mientras que en el sistema operativo Windows se cuenta con el servicio como Firewall de Windows.

- Servidor DHCP (Dinamic Host Control Protocol): se trata de una aplicación que permite la administración de las direcciones IP en las redes, que entre sus ventajas está permitir que en grandes organizaciones se asignen las IP´s de manera automática acorde a las configuraciones requeridas, con lo que se elimina la necesidad de llevar un control manual de las direcciones en las computadoras, con lo que se ahorra tiempo y esfuerzo. Los servidores basados en Microsoft® Windows Server, tienen la opción de habilitar el servicio de DHCP al igual que Linux con el servicio DHCPD.

Page 9: REVISTA DIGITAL APACHE E I.I.S

- Servidores de actualizaciones: por cuestiones de seguridad, la mayor parte

de las empresas no permiten que los equipos se encuentren con acceso a Internet, ya que ello puede generar fuga de información ó accesos no autorizados a la red. El problema que esto conlleva es que las actualizaciones que los sistemas operativos ponen a disposición requieren de acceso a Internet, por lo que un servidor de actualizaciones se encarga de descargar las actualizaciones y permitir que los equipos se conecten a él para descargarlas. El mas popular es WSUS (Windows Server Update Services) utilizado por Microsoft® Windows Server.

- Servidores de Dominio: permiten crear perfiles personalizados de usuarios, perfiles móviles, así como administrarlos y aplicar políticas de grupo. Lo anterior da como resultado aplicar restricciones en las sesiones de los usuarios, asignándoles los permisos de uso de la computadora que realmente necesitan y evitando el uso de otras funciones que puedan poner en riesgo la operación. Microsoft® Windows Server tiene la función opcional de habilitar la implementación de dominios.

- Servidor Web: permiten almacenar información basada en lenguajes de programación PHP, ASP, HTML, etc. y ser publicados en Internet ó la intranet, con lo que se puede visualizar y trabajar por medio de los exploradores de Internet como Microsoft® Internet Explorer, Mozilla Firefox ó Google® Chrome. Microsoft® Windows Server permite habilitar esta característica por medio de la aplicación IIS (Internet Information Services) y en Linux por medio del servicio de Apache.

- Servidor de base de datos: permiten concentrar la información como su

nombre lo indica, las aplicaciones mas comunes son Microsoft® SQL Server ó el servicio MySQL tanto en Microsoft® Windows como Linux.

- Servidor PBX (Private Branch Exchange): se trata de una central telefónica que permite la interconexión con la red telefónica pública por medio de enlaces digitales (líneas troncales) que permiten en una sola conexión, hasta 30 líneas, con lo que se logra gestionar las llamadas entrantes, internas y salientes. Uno de los Software que tienen esta características es Asterisk en Linux y las plataformas de comunicación de marcación automática como Nuxiba e Inconcert para Microsoft® Windows.

- Servidores Storage: se trata de servidores que tienen como fin principal el almacenamiento de grandes cantidades de información, por lo que su característica principal es contar con una conexión de red de alta velocidad, así como de dispositivos de almacenamiento de muy alta capacidad y velocidad como discos duros SATA o discos duros SCSI.

- Servidor de correo: se encuentran configurados para permitir enviar y recibir correo electrónico por medio de los protocolos SMTP (Protocolo simple de transferencia de correo) y POP (Protocolo de oficina de correos). En la mayor parte de las empresas, este servicio se encuentra hospedado con un proveedor

Page 10: REVISTA DIGITAL APACHE E I.I.S

externo vía Web, pero hay lugares que por seguridad aún se instalan servidores de correo internos.

- Servidor DNS (Domain Name Service): es una aplicación que permite asociar los nombres de dominio de los sitios Web y nombres de los equipos de la red (Hosts) con sus direcciones IP, para que al momento de que se realice una solicitud de acceso a los equipos, se relaice la traducción y sea mas comprensible al ser humano, con lo que las personas en lugar de escribir la IP 173.252.110.27, escribimos http://www.facebook.com y se accede al sitio Web solicitado. De igual modo dentro de una red en lugar de aprendernos la IP de cierto servidor Web interno, como ejemplo la 192.168.107.3, se escribe http://servidorweb

- Servidores de aplicaciones: un ejemplo de servidores de aplicaciones, son los servidores que permiten concentrar varios programas como NOI, COI y SAE de la Suite Aspel. Se instala una aplicación cliente de manera local en los equipos que utilizarán para conectarse a la aplicación instalada en el servidor.

Para el caso de pequeñas redes en las que no se requiere ó no se puede invertir en servidores, se utilizan simplemente computadoras de escritorio, algunas veces modificadas en sus capacidades Hardware y Software, las cuáles son capaces de satisfacer estas necesidades de comunicación, aunque estrictamente no tengan las características de un servidor real.

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.

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

Page 11: REVISTA DIGITAL APACHE E I.I.S

"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ñísa deben innovar y responder rápidamente a los cambios en la demanda”.

Page 12: REVISTA DIGITAL APACHE E I.I.S

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)

Disponible en: Servidores Dedicados Servidores Cloud Servidores a Medida

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)

Disponible en: Servidores Dedicados Servidores Cloud Servidores a Medida

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)

Disponible en: Servidores Dedicados Servidores Cloud Servidores a Medida

Page 13: REVISTA DIGITAL APACHE E I.I.S

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)

Disponible en: Servidores Dedicados Servidores Cloud Servidores a Medida

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)

Disponible en: Servidores Dedicados Servidores a Medida

Clasificaciones.

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.

Page 14: REVISTA DIGITAL APACHE E I.I.S

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 15: REVISTA DIGITAL APACHE E I.I.S

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.

Page 16: REVISTA DIGITAL APACHE E I.I.S

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.

Page 17: REVISTA DIGITAL APACHE E I.I.S

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) disponibles para que se utilice con el fin de asegurarse de que la pérdida de un servidor principal no afecte a la red. Esta técnica también es denominada clustering.

Servidor de Seguridad:

Tiene software especializado para detener intrusiones

maliciosas, normalmente tienen antivirus, antispyware, antimalware, además de contar con cortafuegos

redundantes de diversos niveles y/o capas para evitar ataques, los servidores de seguridad varían dependiendo de su utilización e importancia.

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.

Page 18: REVISTA DIGITAL APACHE E I.I.S

APACHE

Historia de Apache

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.

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

Page 19: REVISTA DIGITAL APACHE E I.I.S

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 de Apache

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 20: REVISTA DIGITAL APACHE E I.I.S

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

Page 21: REVISTA DIGITAL APACHE E I.I.S

atacar algunos emuladores de Terminal en el momento que se visualiza el contenido de este archivo de registro de errores.

La tercera y última vulnerabilidad es una pérdida de memoria, explotable de forma remota, en el módulo mod_ssl. Esto puede ser utilizado para consumir toda la memoria del servidor, provocando un ataque de denegación de servicio.

Apache 1.3.31

En lo que se refiere a la versión "clásica" de Apache, las vulnerabilidades de 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 modulo 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.

Configuración e Instalación Configuración, instalación y administración de apache (windows)

Instalación y configuración con los parámetros básicos y elementales del servidor Apache que permiten su funcionamiento y posteriormente agregarle módulos y otras

Page 22: REVISTA DIGITAL APACHE E I.I.S

funcionalidades de acuerdo a las necesidades y propósitos de quien lo vaya a utilizar. Como acceder al servidor desde otras computadoras conectadas en una red local, como conectarse a internet a través de Apache, guardar las páginas web en cache y para finalizar servir tus páginas web en internet y permitir el acceso al servidor desde el exterior. ¿Qué es un servidor web?

Un servidor web como su nombre lo indica, es un software instalado en el equipo con todas las condiciones necesarias para servir o entregar páginas web que le sean solicitadas por un navegador, asegurando que se muestren y representen todos los elementos necesarios para su correcto funcionamiento y visualización. Existen varios tipos de servidores web, Apache es un software de código abierto, libre de uso y totalmente configurable, es en este momento el más utilizado en la red, ya sea en plataformas Linux o Windows. Al instalarlo en nuestra PC dispondremos de un servidor completo, con todos los requisitos para ejecutarlo de forma local.

Ventajas que nos aporta instalar el servidor Apache en el equipo Con la instalación de Apache es posible disponer en nuestra PC de un pequeño servidor que nos posibilitará entre otras tareas: 1- Probar y ver las páginas web como verdaderamente van a mostrarse desde internet antes de subirlas a un host o servidor en la red. Útil e indispensable si tienes o vas a crear tu sitio por modesto que este sea. 2- Crear mediante el modulo Virtual Host múltiples sitios web en nuestra PC, que podemos descargar con wget y acceder a ellos igual que en la red pero esta vez de forma local.

Page 23: REVISTA DIGITAL APACHE E I.I.S

3- Poder ver localmente páginas web hechas en lenguaje php. 4- Servir nuestras páginas o sitio web directamente a internet, a los que puede acceder y conectarse cualquier persona desde el exterior, en este caso lógicamente el funcionamiento del servidor estará limitado al tiempo que tengamos funcionando la PC y a las posibilidades de nuestra conexión. Puede constituir una experiencia muy alentadora para cualquier aficionado, esta posibilidad da la ventaja de que no es necesario depender de ninguna compañía ni servidor remoto para subir a la red el contenido que queremos mostrar. Es como montar una pequeña estación de radio y empezar a transmitir, (una similitud) pero en este caso el alcance es global. 5- Puede actuar como intermediario entre nuestra PC e internet lo que nos da varias ventajas en el ámbito de la seguridad. 6- A través de él podemos servir internet a varias PC conectadas en una red local. 7- Es posible activar un módulo que permite guardar en cache todas las páginas cargadas lo que mejorará el rendimiento de nuestra navegación. ¿Cómo instalar el Servidor Apache?

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.

Page 24: REVISTA DIGITAL APACHE E I.I.S

¿Cómo configurar el Servidor 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

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.

Page 25: REVISTA DIGITAL APACHE E I.I.S

Administración 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

</Directory>

Page 26: REVISTA DIGITAL APACHE E I.I.S

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áginas

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 Copia y pega las siguientes líneas de código al final del archivo:

Page 27: REVISTA DIGITAL APACHE E I.I.S

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

Page 28: REVISTA DIGITAL APACHE E I.I.S

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

Servidor Web Apache en Ubuntu

Servidor Páginas WEB

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:

Page 29: REVISTA DIGITAL APACHE E I.I.S

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

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

Apache en Ubuntu (consola)

El servidor apache es el servidor web más usado en el mundo por su seguridad, utilidad, versatilidad y también por ser software libre además de ser un software gratuito, por esa razón he creado este tutorial para su instalación y configuración básica en Ubuntu Linux en donde funciona muy bien ya que es precisamente GNU/Linux el sistema operativo en donde se monta este servidor para aplicaciones reales.

Instalación

La instalación del servidor apache en Ubuntu se puede hacer por medio de la terminal o por medio del centro de software de Ubuntu.

Page 30: REVISTA DIGITAL APACHE E I.I.S

Instalación por terminal. Tan solo tienes que oprimir esta combinación de teclas: CTRL + ALT + T y escribir la siguiente orden:

Luego de esto ingresa la clave de root o administrador, es decir la misma que creaste al momento de instalar el sistema. La orden se muestra en la imagen tiene la siguiente explicación: La primera palabra (sudo) es un comando usado para ejecutar procesos como root sin importar si el usuario en donde iniciados tiene o no permiso para ejecutar dicho proceso. El comando apt-get hace referencia al sistema de paquetes usado en Ubuntu (apt) que se encarga de todas las tareas relacionadas con el software instalado en el sistema El parámetro install nos indica que lo que queremos cambiar en el software del sistema es la instalación de un paquete, si quisieras desinstalar algo puedes usar el comando remove Por ultimo tenemos el nombre del paquete o los paquetes que queremos instalar. Instalación por el centro de software de Ubuntu.

Page 31: REVISTA DIGITAL APACHE E I.I.S

Este método es el más sencillo aunque no siempre se puede instalar de esta manera especialmente en entornos donde no hay siquiera un entorno gráfico, pero para las personas que están aprendiendo este sistema es perfecto para comenzar.

Para iniciar el proceso de instalación basta con abrir el centro de software, buscar el paquete apache2 y oprimir el botón instalar.

Uso

Para saber si nuestro servidor funciona correctamente tenemos que abrir el navegador web y escribir como url: 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.

Page 32: REVISTA DIGITAL APACHE E I.I.S

Finalmente veras algo como esto:

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 33: REVISTA DIGITAL APACHE E I.I.S

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:

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 34: REVISTA DIGITAL APACHE E I.I.S

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.

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 modulo usedir entrando a la carpeta mods-available y

Page 35: REVISTA DIGITAL APACHE E I.I.S

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

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.

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.

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

Page 36: REVISTA DIGITAL APACHE E I.I.S

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

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.

Page 37: REVISTA DIGITAL APACHE E I.I.S

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.

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.

Page 38: REVISTA DIGITAL APACHE E I.I.S

Cuadro Comparativo de Apache e I.I.S

Page 39: REVISTA DIGITAL APACHE E I.I.S

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 40: REVISTA DIGITAL APACHE E I.I.S

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 41: REVISTA DIGITAL APACHE E I.I.S

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

Seleccionamos Activar o desactivar las características de Windows.

Activaremos la característica Internet Information Services y pulsaremos Aceptar.

Page 42: REVISTA DIGITAL APACHE E I.I.S

Esperaremos a que se instale la característica y ¡listo! ya tenemos en nuestro

Windows 8 IIS instalado.

Page 43: REVISTA DIGITAL APACHE E I.I.S

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.

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)". 3- Escribe en el cuadro de Inicio o en la pantalla de inicio en Windows 8: inetmgr y presiona la tecla Enter.

Page 44: REVISTA DIGITAL APACHE E I.I.S

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

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.

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.

Page 45: REVISTA DIGITAL APACHE E I.I.S

Instrucciones mas usadas en apache

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.

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

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

Page 46: REVISTA DIGITAL APACHE E I.I.S

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.

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

suaves a los sitios.

Page 47: REVISTA DIGITAL APACHE E I.I.S

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 paginas web de cada sitio que tengamos registrados. Lo que haremos es crear una carpeta pub y le daremos permisos.

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 ]

Page 48: REVISTA DIGITAL APACHE E I.I.S

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

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 49: REVISTA DIGITAL APACHE E I.I.S

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 50: REVISTA DIGITAL APACHE E I.I.S

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 51: REVISTA DIGITAL APACHE E I.I.S

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# }}}

Tendremos que cambiar el usuario y grupo encargado del deposito.

Page 52: REVISTA DIGITAL APACHE E I.I.S

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 53: REVISTA DIGITAL APACHE E I.I.S

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 54: REVISTA DIGITAL APACHE E I.I.S

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 55: REVISTA DIGITAL APACHE E I.I.S

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 modulo 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 56: REVISTA DIGITAL APACHE E I.I.S

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.

configtest

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

Logs Apache.

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

error.

access.log

error.log

Page 57: REVISTA DIGITAL APACHE E I.I.S

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

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.

Características:

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 58: REVISTA DIGITAL APACHE E I.I.S

Configuración:

En el administrador web poniendo en la terminal lo siguiente.

cherokee-admin –b

El cual nos dará los datos de login necesarios como son el User el Password y la

Url para entrar en el administrador web.

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”

Page 59: REVISTA DIGITAL APACHE E I.I.S

Ahora creamos un comportamiento nuevo, seleccionamos “lenguajes” “php” y

“añadir” nos aparece una ventana de información y presionamos el botón “crear”.

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 60: REVISTA DIGITAL APACHE E I.I.S

Solo queda “guardar” que se encuentra en la parte superior derecha, nos

aparecerá una ventana informativa y presionaremos en “reinicio suave”

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 61: REVISTA DIGITAL APACHE E I.I.S

Para comprobar que todo funciona creamos un archivo info.php con nuestro editor

preferido, vim por ejemplo “vim /var/www/info.php” y le añadimos la siguiente linea

“<?php phpinfo(); ?>” guardamos y probamos que funciona en nuestro navegador

web con la dirección ip de nuestro servidor, por ejemplo

http://192.168.0.20/info.php

Page 62: REVISTA DIGITAL APACHE E I.I.S

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

aptitude install php5-mysql

Instalación:

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

Page 63: REVISTA DIGITAL APACHE E I.I.S

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.

Administración:

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:

Con estos datos accederemos desde una navegador a localhost:9090, con lo que

nos aparecerá una ventanita de acceso:

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,

Page 64: REVISTA DIGITAL APACHE E I.I.S

aunque tenemos la opción de realizar modificaciones en el fichero

/etc/cherokee/cherokee.conf.:

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

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.

Características:

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

Page 65: REVISTA DIGITAL APACHE E I.I.S

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

Configuración:

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

Page 66: REVISTA DIGITAL APACHE E I.I.S

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.

Instalación:

Acceder al directorio donde se a descomprimido. Ejemplo:

$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

Page 67: REVISTA DIGITAL APACHE E I.I.S

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

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

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 68: REVISTA DIGITAL APACHE E I.I.S

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

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

Ejemplo:

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.

Page 69: REVISTA DIGITAL APACHE E I.I.S

Administración:

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.

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.

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>

Page 70: REVISTA DIGITAL APACHE E I.I.S

Reiniciamos el Tomcat, y tratamos de entrar nuevamente al Tomcat Manager

utilizando el usuario admin con contraseña admin.

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

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.

Características:

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()

Page 71: REVISTA DIGITAL APACHE E I.I.S

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

Configuración e Instalación:

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

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

Page 72: REVISTA DIGITAL APACHE E I.I.S

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.

Page 73: REVISTA DIGITAL APACHE E I.I.S

Conclusiones

Apache es en la actualidad el principal servidor de web. Es el más rápido, eficiente y el que evoluciona a mayor velocidad. Y Apache, por su naturaleza de software abierto, es ideal para instalar en máquinas GNU/Linux, que aseguran un S.O. con unas comunicaciones excelentes. Apache y GNU/Linux es una combinación que se está utilizando en el mundo empresarial, Apache ha ayudado a que el campo de GNU/Linux se amplíe de forma muy sólida en el mundo Internet, creando una Internet-box que difícilmente puede ser superada por otra plataforma en los sistemas actuales, tanto en coste como en potencia.

Ahora que ya conoces ambos servidores para página web de acuerdo a sus características sabrás cual es que te conviene para tus acceso y de acuerdo al sistema operativo con el que manejes actualmente en tu computadora ambos son servidores que soportan cualquier sistema operativo y son de acceso libre y de propietario regido bajo diferentes familias. Aunque apache es el más popular y más utilizado.

Page 74: REVISTA DIGITAL APACHE E I.I.S

Bibliografía:

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

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

http://httpd.apache.org

Releasedhttp://www.apache.org/dist/httpd/Announcement2.html

http://www.apache.org/dist/httpd/Announcement.html

http://www.modssl.org/

http://news.netcraft.com/archives/2004/05/03/

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