1
INSTITUTO TECNOLÓGICO DE TLALNEPANTLA
JOSE IGNACIO. ALUMNO:
ROMERO LORA RENE. VARGAS CERVANTES JORGE ALBERTO. RODRIGUEZ RIVERA JOSE MANUEL.
CARRERA: LIC. INFORMATICA
PROFESOR(a): JOSÉ ANTONIO GALLARDO GODÍNEZ TEMA: UNIDAD 5 “APACHE”
FECHA:
23 DE JULIO DEL 2013
2
INTRODUCCIÓN ........................................................................................................................................... 7 1.
APACHE ............................................................................................................................................... 8 2.1 HISTORIA ..................................................................................................................................................... 8 2.2 DEFINICIÓN .................................................................................................................................................. 9 2.3 CARACTERÍSTICAS .......................................................................................................................................... 9 2.4 TENDENCIAS ............................................................................................................................................... 10 Fig. 2.2 Tendencias Apache...................................................................................................................... 11 2.5 VERSIONES ................................................................................................................................................. 11 2.6 COMPATIBILIDAD CON SISTEMA OPERATIVO ...................................................................................................... 11 2.7 CONFIGURACIÓN ......................................................................................................................................... 12 2.7.1 Sistema operativo Windows XP ...................................................................................................... 12 2.7.2 Sistema operativo Windows 7 ........................................................................................................ 13 2.7.3 Distritos de Linux consola ............................................................................................................... 14 Fig. 2.3 Configuración Linux Consola I ..................................................................................................... 14 Fig. 2.4 Configuración Linux Consola II .................................................................................................... 15 Fig. 2.5 Configuración Linux Consola III ................................................................................................... 16 Fig. 2.6 Configuración Linux Consola IV ................................................................................................... 16 2.7.4 Distritos de Linux ventana............................................................................................................... 16
2.8 INSTALACIÓN ....................................................................................................................................... 17 2.8.1 Sistema operativo Windows XP ...................................................................................................... 17 Fig. 2.7 Instalación Apache 1 ................................................................................................................... 18 Fig. 2.8 Instalación Apache 2 ................................................................................................................... 18 Fig. 2.9 Instalación Apache 3 .............................................................................................................. 19 Fig. 2.10 Instalación Apache 4 ................................................................................................................. 19 Fig. 2.11 Instalación Apache 5 ................................................................................................................. 20 Fig. 2.12 Instalación Apache 6 ................................................................................................................. 20 Fig. 2.14 Instalación Apache 8 ................................................................................................................. 22 Fig. 2.15 Instalación Apache 9 ............................................................................................................ 22 Fig. 2.16 Instalación Apache 10 ............................................................................................................... 23 Fig. 2.17 Instalación Apache 11 ............................................................................................................... 23 Fig. 2.18 Instalación Apache 12 ......................................................................................................... 24 Fig. 2.19 Instalación Apache 13 ............................................................................................................... 24 Fig. 2.20 Instalación Apache 14 ............................................................................................................... 25 Fig. 2.21 Instalación Apache 15 ............................................................................................................... 26 2.8.2 SISTEMA OPERATIVO WINDOWS 7 ............................................................................................................... 26 Fig. 2.23 Instalación Apache “Windows 7” 1..................................................................................... 27 Fig. 2.24 Instalación Apache “Windows 7” 2 ........................................................................................... 27 Fig. 2.25 Instalación Apache “Windows 7” 3 ........................................................................................... 28 Fig. 2.26 Instalación Apache “Windows 7” 4 ........................................................................................... 28 Fig. 2.27 Instalación Apache “Windows 7” 5 ........................................................................................... 28 Fig. 2.28 Instalación Apache “Windows 7” 6 ........................................................................................... 29 Fig. 2.30 Instalación Apache “Windows 7” 8..................................................................................... 30 Fig. 2.31 Instalación Apache “Windows 7” 9 ........................................................................................... 30 Fig. 2.32 Instalación Apache “Windows 7” 10 .................................................................................. 31
3
Fig. 2.33 Instalación Apache “Windows 7” 11 ......................................................................................... 31 Fig. 2.34 Instalación Apache “Windows 7” 12 ......................................................................................... 32 Fig. 2.35 Instalación Apache “Windows 7” 13 ......................................................................................... 32 Fig. 2.36 Instalación Apache .................................................................................................................... 33 Fig. 2.37 Instalación Apache “Windows 7” 15 ......................................................................................... 33 Fig. 2.38 Instalación Apache “Windows 7” 16 ......................................................................................... 34 2.8.3 DISTRITOS DE LINUX CONSOLA .................................................................................................................... 34 2.8.4 DISTRITOS DE LINUX VENTANA .................................................................................................................... 35 Fig. 2.31 Instalación Apache “Linux ventana” 1 ...................................................................................... 36 Fig. 2.32 Instalación Apache “Linux ventana” 2 ...................................................................................... 36 Fig. 2.33 Instalación Apache “Linux ventana” 3 ...................................................................................... 37 Fig. 2.34 Instalación Apache “Linux ventana” 4 ...................................................................................... 37 Fig. 2.35 Instalación Apache “Linux ventana” 5 ...................................................................................... 38 Fig. 2.36 Instalación Apache “Linux ventana” 6 ...................................................................................... 39 2.9 ADMINISTRACIÓN ................................................................................................................................ 39 2.9.1 SISTEMA OPERATIVO WINDOWS XP ............................................................................................................. 39 2.9.2 SISTEMA OPERATIVO WINDOWS 7 ............................................................................................................... 40 2.9.3 DISTRITOS DE LINUX CONSOLA .................................................................................................................... 40 2.9.4 DISTRITOS DE LINUX VENTANA .................................................................................................................... 41 Fig. 2.37 Administración Apache “Linux ventana” 1 ................................................................................ 42 Fig. 2.38 Administración Apache “Linux ventana” 2 ................................................................................ 42 Fig. 2.39 Administración Apache “Linux ventana” 3 ................................................................................ 43 Fig. 2.40 Administración Apache “Linux ventana” 4 ................................................................................ 43 Fig. 2.41 Administración Apache “Linux ventana” 5 ................................................................................ 44 2.10 VENTAJAS........................................................................................................................................... 44 2.11 DESVENTAJAS .......................................................................................................................................... 45 2.12 ESTABILIDAD ............................................................................................................................................ 46 2.13 SEGURIDAD .............................................................................................................................................. 46 2.14 CUADRO COMPARATIVO ............................................................................................................................. 49 3 IIS (INTERNET INFORMATION SERVER) .................................................................................................... 50 3.1 HISTORIA ................................................................................................................................................... 50 3.2 DEFINICIÓN ................................................................................................................................................ 50 3.3 CARACTERÍSTICAS ........................................................................................................................................ 51 3.5 VERSIONES ................................................................................................................................................. 52 3.6 COMPATIBILIDAD CON SISTEMA OPERATIVO ...................................................................................................... 53 3.7 CONFIGURACIÓN ......................................................................................................................................... 54 3.7.1 Sistema operativo Windows XP ...................................................................................................... 54 Fig. 3.2 Configuración IIS “Windows XP”1 ............................................................................................... 55 Fig. 3.3 Configuración IIS “Windows XP” ................................................................................................. 55 Fig. 3.4 Configuración IIS “Windows XP”3 ............................................................................................... 56 Fig. 3.5 Configuración IIS “Windows XP”4 ............................................................................................... 57 Fig. 3.6 Configuración IIS “Windows XP”5 ............................................................................................... 58 3.7.2 Sistema operativo Windows 7 ........................................................................................................ 58
4
3.8.2 Sistema operativo Windows 7 ........................................................................................................ 60 3.9 ADMINISTRACIÓN ................................................................................................................................ 61 3.9.1 SISTEMA OPERATIVO WINDOWS XP ............................................................................................................. 61 3.9.2 SISTEMA OPERATIVO WINDOWS 7 ............................................................................................................... 62 Fig. 3.7 Administración IIS “Windows XP”1 ............................................................................................. 63 3.10 VENTAJAS........................................................................................................................................... 63 3.11 DESVENTAJAS..................................................................................................................................... 64 3.12 ESTABILIDAD ...................................................................................................................................... 64 3.13 SEGURIDAD ........................................................................................................................................ 66 3.14 CUADRO COMPARATIVO ENTRE APACHE E IIS (INTERNET INFORMATION SERVER) ................................................... 68 4 INSTRUCCIONES PARA LA ADMINISTRACIÓN, GESTIÓN Y ACTUALIZACIÓN DE PORTALES WEB, A TRAVÉS DE APACHE ................................................................................................................................................ 68 5 SOFTWARE PARA SERVIDORES WEB .......................................................................................... 71 CONCLUSIONES .......................................................................................................................................... 74 BIBLIOGRAFÍA ............................................................................................................................................ 75
5
OBJETIVOS Objetivo general El objetivo de este libro electrónico es dominar la gestión del servidor Internet Information service (IIS) y Apache, sabiendo instalar, configurar y administrar estos programas para adaptarlo a las necesidades del sitio web que gestione, además de identificar y comprender lo que es un servidor web.
Objetivos específicos
Entender la definición de servidor web.
Aprender a instalar y poner en marcha un servidor Apache.
Configurar un servidor Apache conociendo las principales directivas utilizadas.
Configurar un Hosting virtual basado en direcciones IP y nombres.
Establecer comunicaciones seguras: limitación de acceso y cifrado de la información.
Gestión de los módulos implementados: optimización de rendimiento y seguridad tanto para apache como para IIS.
Aprender a instalar y poner en marcha un servidor Internet Information service (IIS).
6
Introducción La World Wide Web se ha hecho muy extensa al largo del tiempo y con esto se han creado servidores de internet tanto con licencia libre como para propietarios, es por ello que en este libro electrónico, se va a hablar primero de un servidor, explicando cada una de sus características, así como su definición y la compatibilidad con los sistemas operativos, además de su clasificación. Referente a los servidores web se aborda dos de los cuales son Apache que es un servidor libre, e Internet Information Server, el cual pertenece a la familia de Microsoft.
Apache es un servidor del protocolo http, comúnmente llamado servidor web pues es la mayor utilidad para dicho protocolo. Cuando pensamos en un servidor web imaginamos un grupo de páginas web que determinan un sitio web. Un servidor como Apache puede alojar varios sitios, y pueden coexistir varios servidores Apache en un sólo equipo.
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 versión de IIS algo más reducida y limitada. Ambos son competencia y tienen diferentes plataformas, sus características, uso, licencia y el hardware que maneja cada uno de ellos. Ambas sirven para ser tanto dinámicas como estáticas las páginas web y manejar diferentes lenguajes de programación que ayuden al usuario hacer más fácil el manejo de estas. Además de explicar la importancia, las características, tendencias, etc., se abordaran temas como la instalación de cada uno de los servidores antes
7
mencionados en los sistemas operativos Windows XP, Windows 7, Linux por ventana y Linux por consola. Por último se aborda la administración, la configuración de los servidores antes mencionados, las Instrucciones para la administración, gestión y actualización de portales web, a través de apache e el Software para servidores web, sus características y se menciona los más importantes.
1. Apache 2.1 Historia La historia de Apache se remonta a febrero de 1995, donde empieza el proyecto del grupo Apache, el cual está basado en el servidor Apache httpd de la aplicación original de NCSA. El desarrollo de esta aplicación original se estancó por algún tiempo tras la marcha de Rob McCool por lo que varios webmaster siguieron creando sus parches para sus servidores web hasta que se contactaron vía email para seguir en conjunto el mantenimiento del servidor web, fue ahí cuando formaron el grupo Apache. Fueron Brian Behlendorf y Cliff Skolnick quienes a través de una lista de correo coordinaron el trabajo y lograron establecer un espacio compartido de libre acceso para los desarrolladores. Fue así como fue creciendo el grupo Apache, hasta lo que es hoy :) Aquella primera versión y sus sucesivas evoluciones y mejoras alcanzaron una gran implantación como software de servidor inicialmente solo para sistemas operativos UNIX y fruto de esa evolución es la versión para Windows. Apache es una muestra, al igual que el sistema operativo Linux (un Unix desarrollado inicialmente para PC), de que el trabajo voluntario y cooperativo dentro de Internet es capaz de producir aplicaciones de calidad profesional difíciles de igualar.
8
2.2 Definición Apache es una aplicación gratuita que convierte cualquier ordenador en un servidor web. Es decir que si tienes Apache en tu ordenador, puedes alojar tu sitio web en tu propio PC, sin tener que depender de hostings de terceros. Apache es un código abierto, lo que significa que muchas personas han contribuido a su desarrollo. Además se puede descargar desde el sitio del desarrollador y utilizarlo libre y gratuitamente sin pagar ninguna licencia. 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.
2.3 Características Entre sus características destacan: 1. Multiplataforma 2. Es un servidor de web conforme al protocolo HTTP/1.1 3. 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. 4. Basado en hebras en la versión 2.0 5. Incentiva la realimentación de los usuarios, obteniendo nuevas ideas, informes de fallos y parches para la solución de los mismos.
9
6. Se desarrolla de forma abierta. 7. Extensible: gracias a ser modular se han desarrollado diversas extensiones entre las que destaca PHP, un lenguaje de programación del lado del servidor.
2.4 Tendencias La compañía inglesa Netcraft, que entre otros servicios se encarga de estar analizando constantemente el estado de los sitios web de Internet, publica mensualmente un reporte sobre cómo se distribuye el uso de los distintos servidores web, y este mes agrega un análisis que deja en claro el dominio del servidor web Apache. Gracias a las estadísticas de Netcraft siempre se ha sabido que la mayoría de los sitios del mundo utilizan el servidor web de código abierto Apache, llegando a estar presente en un 46% de los sitios y seguido de cerca por Microsoft Internet Information Server (IIS) con un 26%. También se sabe que la tendencia de los últimos años es que el servidor de Microsoft ha ido ganando terreno a medida que Apache lo va perdiendo. Como cualquier estadística, los números por si solos no sirven de mucho a menos que se interpreten. También hay que tener en cuenta qué se está midiendo para entender cómo se llega a esos porcentajes. Considerando sólo el millón de sitios más usados, la elección de Apache sube a un 67%, mientras que Microsoft IIS baja a un escuálido 19%, tomando una distancia 48 puntos porcentuales de líder de código abierto. El siguiente en la lista corresponde a nginx con un lejano 3%, mucho menor que la categoría “otros” que corresponde a un 8%.
10
Fig. 2.2 Tendencias Apache
2.5 Versiones Apache 0.2 Apache 1.0 Apache 1.1 Apache 1.2 Apache 1.3. Apache 1.3.3 Apache 2.0.X Apache 2.2.X Apache 2.8
2.6 Compatibilidad con sistema operativo El Servidor HTTP Apache es un servidor web HTTP de c贸digo abierto para plataformas:
11
Unix (BSD, GNU/Linux, etc.) Microsoft Windows Macintosh Otras que implementa el protocolo HTTP/1.1
2.7 Configuración 2.7.1 Sistema operativo Windows XP
Si queremos trabajar con un entorno amigable, y de manera más cómoda cuando trabajamos con aplicaciones web, algo que encuentro bastante útil es configurar tu máquina como si estuviéramos trabajando en un dominio. De esta forma nos ahorramos tener que trabajar con URLs del tipo: http://127.0.0.1/miproyecto Y trabajamos directamente con algo como: http://miproyecto Para esto, solo tenemos que configurar un par de archivos. El primero se encuentra en esta ruta normalmente: c:/windows/system32/drivers/etc/hosts En este archivo debemos incluir la IP a la que queremos asociar dicho dominio. Debes saber que si sobrescribes un dominio real, como “www.google.com” cuando intentes acceder a esa dirección, se redirigirá a la IP que le hayas asignado. En nuestro caso, redireccionaremos el nombre que queramos hacia nuestra IP local, incluyendo esta línea al final del archivo: 127.0.0.1 miproyecto De esta forma, al introducir “http://miproyecto” en la barra de direcciones del navegador, cargará el root de nuestro servidor web local. Como normalmente trabajaremos con varias páginas y dominios simultáneamente y ademas nuestros proyectos estarán organizados en carpetas diferentes, debemos crear un Virtual Host en el archivo de configuracion de Apache, para que al cargar “http://miproyecto” nos redirija a la ruta correcta del proyecto en el servidor local.
12
Para ello editamos el archivo httpd-vhosts.conf que podremos encontrar normalmente en esta ruta: Ruta de instalación de apache\conf\extra\httpd-vhosts.conf Y siguiendo el esquema estrictamente que tiene este archivo, añadir al final del mismo algo como: <VirtualHost *:80> DocumentRoot “ruta de miproyecto” ServerName miproyecto </VirtualHost> Para terminar, reiniciamos Apache. Podemos añadir de la misma forma todos los proyectos que necesitemos siguiendo el mismo proceso, y no tendremos que utilizar más rutas complejas del tipo http://127.0.0.1/miproyecto. Además de esta forma solucionamos algunos problemas que pudieran surgir en la codificación al intentar utilizar dichas rutas locales, en vez de utilizar rutas dinámicas.
2.7.2 Sistema operativo Windows 7 Entrar a la ruta de instalación del apache, httpd.conf que se encuentra en el directorio conf “C:\Archivos de programa\apache\conf” haz doble clic en el archivo httpd.conf. Busca con (ctrl+F) 'loadmodule'. Después de la última línea de la sección LoadModule: LoadModule php5_module C:/Archivos de Programa/php/php5apache2_2.dll Después de que hayas encontrado <IfModule mime_module>, añade las siguientes líneas. AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps Antes de cerrar el enunciado </IfModule> para mime_module Después de que en la misma página encuentres <IfModule dir_module>, agrega DirectoryIndex indes.html index.php antes de </IfModule> si en realidad este no existe.
13
Agrega la siguiente línea “PHPIniDir “C:/Archivos de programa/php” al final del archivo. Después de que hayas terminado guarda el archivo y ciérralo.
2.7.3 Distritos de Linux consola Configurar la ruta de apache para que esté en un directorio particular. NOTA: si no quieres tener tus códigos en una carpeta alterna, dirígete al paso 3. Pero ¿qué pasa cuando ya estamos trabajando y tenemos nuestros códigos en /var/www y tenemos que reinstalar Linux? Se debe respaldar antes de instalar Linux de nuevo, y es un problema si no puedes arrancar tu sistema operativo o se te olvida. La mejor opción es tener una partición independiente donde tengamos nuestra información siempre a salvo durante las instalaciones, por lo que debemos hacer que apache apunte a nuestra carpeta y no a /var/www. Aquí difiere mucho en los tipos de distribuciones. En Arch y me parece recordar que en Slackware basta buscar DocumentRoot en el archivo de configuración /etc/http/apache.conf o http.conf En Mint la ruta es diferente. Se encuentra en /etc/apache2/sites-available/default, por lo que lo abrimos con algún editor y veremos algo parecido a lo siguiente:
Fig. 2.3 Configuración Linux Consola I
14
En este caso el comando fue: nano /etc/apache2/sites-available/default Puedes usar pico, vi, no recomiendo usar aplicación gráfica como gnome, o kwrite pues no podrán escribir en un archivo de sistema.
Si no encuentras el archivo de configuración en tu distribución de Linux, lo puedes encontrar con el siguiente comando (si se instaló apache en la carpeta apache2): # grep -R "/var/www" /etc/apache2 Si se instaló en la carpeta http: # grep -R "/var/www" /etc/http Cuando encuentres el archivo de configuración que contiene la entrada DocumentRoot, cambia todas las direcciones de "/var/www" a la carpeta donde quieres que se encuentren tus códigos.
Fig. 2.4 Configuración Linux Consola II
Una vez que has hecho los cambios y has guardado el archivo, debes reiniciar el servicio (recuerda que un poco más arriba están los comandos para iniciar, reiniciar y detener los servicios: Si no ocurrió un error entonces al entrar a http://127.0.0.1, debes ver el contenido de tu directorio.
15
Fig. 2.5 Configuración Linux Consola III
Como mencioné antes, aún no tenemos el soporte de código PHP, por lo que si ya tienes un archivo de ese lenguaje y tratas de visualizarlo, el servidor le indicará a tu navegador que se descargue.
Fig. 2.6 Configuración Linux Consola IV
2.7.4 Distritos de Linux ventana 1. Crea un usuario y grupo para la administración del servidor web Apache. No es una buena idea ejecutarlo como raíz. sudo groupadd www-apache sudo useradd c "Apache" -g www-apache -p Password1 www-apache 2. Descarga e instala los paquetes de Apache2. Puedes descargarlos directamente desde el sitio web de Apache o a través del gestor de paquetes de tu distribución. 3. Detén el servicio de Apache. sudo /etc/init.d/apache2 stop
16
4. Edita el archivo /etc/apache2/envvars. gedit /etc/apache2/envvars 5. Cambia las siguientes dos líneas para reflejar tu usuario de Apache: export APACHE_RUN_USER=www-apache
export
APACHE_RUN_GROUP=www-
apache 6. Crea un directorio en el que desees mantener tus sitios web. mkdir /public_html 7. Crea un archivo de configuración para tu sitio web en /etc/apache2/sitesavailable copiando el archivo de configuración por defecto. Para este ejemplo, el sitio
web
será
llamado
navaja.
cp
/etc/apache2/sites-available/default
/etc/apache2/sites-available/navaja 8. Edita el archivo de configuración navaja. gedit /etc/apache2/sites-availabe navaja 9. Cambia las siguientes líneas para reflejar la configuración: Bajo "": ServerAdmin user@lyouremail.com DocumentRoot /public_html La línea de arriba es la segunda sección "". 10. Desactiva el sitio predeterminado. sudo a2dissite default 11. Habilita el nuevo sitio sudo a2ensite navaja 12. Reinicia Apache. sudo /etc/init.d/apache2 restart 13. Crea un archivo index.html en el directorio /public_html/ 14. Prueba la configuración. Abre un navegador web y escribe http://localhost en la barra de direcciones.
2.8 Instalación 2.8.1 Sistema operativo Windows XP 1. La versión del servidor http de Apache para el Sistema operativo Windows XP se
encuentra
disponible
en
el
sitio
oficial
de
la
Fundación
Apache
http://httpd.apache.org. Cuando abrimos en nuestro navegador el sitio web del servidor http Apache, se encuentra a la izquierda la sección de Download!, damos un click en from a mirror.
17
Fig. 2.7 Instalación Apache 1
2. Después se escoge la versión del servidor http de Apache que buscamos. En este se casó se descarga la versión 2.2.17 (released 2010-10-19).
Fig. 2.8 Instalación Apache 2
18
3. Luego veremos
diferentes versiones para el sistema operativo Windows XP, escogemos la versi贸nWin32 Binary without crypto (no mod_ssl) (MSI Installer): httpd-2.2.17win32-x86-no_ssl.msi. 4. Click en el link y click en Guardar.
Fig. 2.9 Instalaci贸n Apache 3
5. Guardaremos el instalador como aparece en la imagen en el escritorio de Windows XP para encontrarlo facilmente. Click en Guardar.
Fig. 2.10 Instalaci贸n Apache 4
19
6. Una vez completada la descarga damos un doble click en el instalador y click en Ejecutar.
Fig. 2.11 Instalaci贸n Apache 5
7. Dar click en siguiente (NEXT).
8.La primera ventana que nos aparece es la de "Welcome to the Installation Wizard for Apache HTTP Server 2.2.17", click Next.
Fig. 2.12 Instalaci贸n Apache 6
20
9. Una vez en los Términos y Condiciones de uso, leemos la licencia, y damos un click en I accept the terms in the license agreement para poder continuar y luego click en Next.
Fig. 2.13 Instalación Apache 7
10. En este paso recomiendo leer bien la información proporcionada por el instalador de Apache, ya que ésta es de importancia para el buen uso del servidor HTTP de Apache, la cual incluye la ubicación de la documentación como en http://httpd.apache.org/docs/2.2. Luego de leer, click en Next. 11. Ahora en este paso de la instalación ingresamos la información del servidor Apache. Como usaremos el servidor Apache en un entorno local para nuestras pruebas escribimos lo siguiente:
21
Network Domain: localhost Server Name: localhost Administrator's Email: cualquier@email.com Estos datos los podemos cambiar luego aunque no lo mostraremos en este tutorial. Luego recomiendo escoger la opción for All Users, on port 80, as a Service -- Recommended. Esta opción dejará nuestro servidor Apache corriendo como un servicio más de windows 7 cada vez que iniciemos nuestro pc. Click en Next
Fig. 2.14 Instalación Apache 8
12. En este paso de la instalación Typical es suficiente para desarollar con PHP y MySQL localmente en un entorno de pruebas en nuestro pc. Click en Next para continuar.
Fig. 2.15 Instalación Apache 9
22
13. En este paso el instalador de Apache nos suguiere la ubicación en donde se instalará el servidor HTTP de Apache. Recomiendo cambiar la ubicación a C:\apache ya que ésto nos permitirá trabajar con Apache facilmente y tendremos los archivos fuera de nuestra carpeta de sistema. Click en Change.. Fig. 2.16 Instalación Apache 10
14. En Folder name escribimos C:\apache y damos click en OK.
Fig. 2.17 Instalación Apache 11
23
15. Una vez tenemos la nueva ubicación c:\apache en donde se instalará el servidor http de Apache continuamos dando un click Next.
Fig. 2.18 Instalación Apache 12
16. En este paso ya tenemos toda la configuración lista. Un click en Install y todo será instalado en nuestro pc.
Fig. 2.19 Instalación Apache 13
24
Esperamos un par de minutos a que termine la instalación del servidor http de Apache.
17. En este paso una vez terminada la instalación del servidor http de Apache sin ningún error cerramos la ventana dando un click en Finish Fig. 2.20 Instalación Apache 14
Ahora lo más importante. Una vez finalizado el proceso de instalación abrimos nuestro navegador web y verificamos si está en funcionamiento el servidor web de Apache escribiendo en la barra de direcciones http://localhost y si todo salió durante la instalación veremos este sencillo mensaje It works! .Con esto queda instalado el servidor http de Apache.
25
Fig. 2.21 Instalación Apache 15
18. Como últimanota se muestra la,ubicación en donde se puede colocar tus páginas web. El folder se llama htdocs. Puedes crear un acceso directo y copiarlo al escritorio para tener acceso de manera rápida al directorio raíz.
Fig. 2.22 Instalación Apache 16
2.8.2 Sistema operativo Windows 7 1. Descargar apache HTTPD Web Server de la página de Apache. Asegurarse de descargar
el
instalador
MSI
apache_2.2.16-win32-x86-no_ssl
(http://httpd.apache.org/download.cgi)
26
de
aquí:
Fig. 2.23 Instalación Apache “Windows 7” 1
2. Guarda el archivo en tu escritorio de Windows.
Fig. 2.24 Instalación Apache “Windows 7” 2
3. Dar doble clic en el archivo mensaje guardado en tu escritorio de Windows. Verás una ventana como esta:
27
Fig. 2.25 Instalación Apache “Windows 7” 3
4. Haz click en "Next>".
Fig. 2.26 Instalación Apache “Windows 7” 4
5. Dar click en el botón "I accept the terms in the license agreement"
Fig. 2.27 Instalación Apache “Windows 7” 5
28
6. Dar click en "Next>".
Fig. 2.28 Instalación Apache “Windows 7” 6
8. A continuación, rellena las cajas de texto con la siguiente información: *"Network Domain": localhost *"Server Name": localhost *Administrator's Email Address": tu dirección email
29
Fig. 2.30 Instalación Apache “Windows 7” 8
9. Asegúrate de que el botón "for all users, on port 80, as a service recommended" está seleccionado.
Fig. 2.31 Instalación Apache “Windows 7” 9
10. Dar click en "Next>".
30
Fig. 2.32 Instalación Apache “Windows 7” 10
11 En la siguiente ventana, haz click en el botón "Custom", y luego haz click en "Next>".
Fig. 2.33 Instalación Apache “Windows 7” 11
12. En la siguiente ventana, marca "Apache HTTP Server" y haz click en el botón "change".
31
Fig. 2.34 Instalación Apache “Windows 7” 12
13. Vamos a instalar todos los paquetes y scripts en la carpeta C:\Server\Apache2\ (suponiendo que C: es tu unidad principal). En la caja de texto "Folder name:" escribe "C:\Server\Apache2\". La barra inversa del final es importante.
Fig. 2.35 Instalación Apache “Windows 7” 13
15. Cuando hayas escrito la ruta, haz click en "OK" y luego haz click en "Next>". En este punto, deberías ver una ventana que tiene este aspecto:
32
Fig. 2.36 Instalación Apache
“Windows 7” 14
16. Haz click en "Install" para empezar la instalación
Fig. 2.37 Instalación Apache “Windows 7” 15
33
17. Una vez el software de instalación de Apache haya terminado de instalar todas los archivos en tu ordenador, verás una ventana final diciéndote que la instalación se completó con éxito. Haz click en el botón "Finish".
Fig. 2.38 Instalación Apache “Windows 7” 16
2.8.3 Distritos de Linux consola Para instalar Apache 2, ejecuta en el terminal de tu consola:
sudo apt-get install apache2 Para comprobar que funciona perfectamente ejecuta:
sudo /etc/init.d/apache2 restart Ubuntu a veces no define el nombre del servidor para Apache así que es bueno que lo hagamos. Edita apache2.conf:
sudo gedit /etc/apache2/apache2.conf Añadir esta línea:
ServerName "your-server-name" Que debería ir cerca a esta línea:
34
ServerRoot "/etc/apache2" En realidad no necesitaremos este nombre del servidor pero vale la pena para evitar que Apache escupa advertencias en cada reinicio.
Para comprobar que todo está en orden entra desde un navegador a:
http://localhost ¿QUE OPERACIONES SE PUEDEN REALIZAR CON EL SERVIDOR WEB? Iniciar el servidor web: En consola, escribiendo el comando. /httpd start. Desde la pantalla de servicios, Sistema >> Configurar su computadora >> Sistema >> Servicios, pulsando en el botón Iniciar. Parar el servidor web.
En consola, escribiendo el comando ./httpd stop.
desde la pantalla de servicios, pulsando en el botón Parar.
Reiniciar, si se han hecho cambios en la configuración, se deberá parar el servidor y volver a arrancarlo. En consola, escribiendo el comando ./httpd restart.
2.8.4 Distritos de Linux ventana
La instalación se realizará desde la cuenta root o desde cualquier otra cuenta con derechos de administrador. Para lanzar la instalación, pulsando en el menú Sistema >> Configuración >> Empaquetado >> Instalar Software se nos muestra la siguiente pantalla, pulsando sobre la flecha que está a la izquierda de Servidor (1º), se despliega una lista con los servidores que se pueden instalar o que ya están instalados. En esta distribución se instalan a la vez un Servidor Web
35
y un Servidor FTP (aunque este último no lo vamos a activar en este artículo sino en otro posterior). Primero comprobaremos si ya está instalado. Si la casilla a la derecha de Web/FTP (2º) está marcada entonces ya estaba instalado y no hará falta instalarlo. Si no estaba marcada, se marcará y después se pulsa Instalar:
Fig. 2.31 Instalación Apache “Linux ventana” 1 Ahora nos pedirá los CD1 y CD2 de instalación del sistema operativo(los CDs de instalación del Mandrake en nuestro caso):
Fig. 2.32 Instalación Apache “Linux ventana” 2
Cuando termine de instalar el sistema avisa que ya se han instalado los paquetes:
36
Fig. 2.33 Instalación Apache “Linux ventana” 3
Para comprobar si funciona correctamente el servidor web, será suficiente poner cualquiera de las siguientes URL en una pantalla del navegador (Internet >> Navegadores Web >> Konqueror): http://localhost/ ó http://127.0.0.1/ A lo cual el navegador, si todo ha ido bien, mostrará la siguiente pantalla: Fig. 2.34 Instalación Apache “Linux ventana” 4
¿DESDE DONDE PODEMOS MANEJAR EL SERVIDOR WEB? Se puede manejar desde dos sitios: desde la pantalla de servicios o bien desde una consola de terminal.
37
Para ver los servicios se pulsa en el menú Sistema >> Configurar su computadora >> Sistema >> Servicios y aparece la siguiente pantalla: Fig. 2.35 Instalación Apache “Linux ventana” 5
En esta pantalla aparece la siguiente información por este orden:
Nombre del servicio.
Si está parado o ejecutándose (parado, corriendo).
Información general del servicio (Info).
Si se ejecuta al iniciar el sistema operativo (Al iniciar).
Botón para iniciar el servicio (Iniciar).
Botón para detener el servicio (Parar).
El servicio asociado al Servidor Web es httpd. Si el servicio está parado, habrá que arrancarlo pulsando en el botón Iniciar. Para gestionar el Servidor Web desde una pantalla de consola, se pulsa en el menú Sistema >> Terminales >> Konsole. Para poder arrancar el servicio hay que ir al directorio /etc/init.d y allí escribir el siguiente comando./httpd start, como se hace en la siguiente pantalla:
38
Fig. 2.36 Instalación Apache “Linux ventana” 6
2.9 Administración 2.9.1 Sistema operativo Windows XP En el bloc de notas podemos usar la combinación de teclas ctrl+b para abrir el diálogo de búsqueda para ir directamente al texto que hay que modificar. Buscamos el texto DocumentRoot y en la línea no comentada comprobamos que hay el texto: DocumentRoot "c:\www\apache\htdocs" Ahora buscamos el texto <Directory " y comprobamos que aparece la misma ruta que en Document Root (en nuestro caso c:\www\apache\htdocs) Nota: Es posible que aparezca el símbolo / (barra) en vez de \ (contrabarra) en la ruta, sin embargo no supone ningún problema ya que Apache reconoce ambos modos. Ahora ya podemos guardar archivos en la ruta c:\www\apache\htdocs que se verán en la dirección web http://localhost/ Si deseamos usar el archivo .htaccess para configurar propiedades del sistema, debemos buscar la línea con el texto AllowOverride None y poner AllowOverride
39
All. Esta instrucción aparece varias veces. Sólo hay que modificar la que está dentro del directorio c:\www\apache\htdocs
2.9.2 Sistema operativo Windows 7 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 linea: 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. 30
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.
2.9.3 Distritos de Linux consola minal y editar el archivo sources.list que se encuentra en /etc/apt para ellos escribimos:
40
sudo vi /etc/apt/sources.list
deb
http://download.webmin.com/download/repository
sarge
contrib
deb
http://webmin.mirror.somersettechsolutions.co.uk/repository sarge contrib
llave GPG en la terminal los siguientes comandos.
wget http://www.webmin.com/jcameron-key.asc sudo apt-key add jcameronkey.asc
sudo apt-get update Finalmente, instalá webmin: sudo apt-get install webmin
ingresar la siguiente dirección: http://serverip:10000/
2.9.4 Distritos de Linux ventana Es muy recomendable que la IP del equipo que será servidor web con GNU Linux Debian 5 sea fija (estática) y no dinámica, pues si cambia la IP del servidor deberemos cambiar también el correspondiente mapeo o redirección en el router o cortafuegos, lo cual puede hacer que nuestro servidor web quede inaccesible desde fuera de nuestra red hasta que realicemos el cambio. Por ello es muy importante que la IP local del equipo servidor no varíe.
En GNU Linux Debian 5, para establecer una IP local estática accederemos a "Sistema" - "Administración" - "Red", nos solicitará la contraseña administrativa, introduciremos la contraseña del usuario actual y pulsaremos "Aceptar":
41
Fig. 2.37 Administración Apache “Linux ventana” 1
Seleccionamos la conexión actual de red en la pestaña "Conexiones" y pulsamos "Propiedades": Introduciremos los siguientes datos:
Linux, en nuestro caso 192.168.1.200. la IP, podremos indicar la que queramos, en nuestro caso 255.255.255.0.
(gateway) o dispositivo que nos proporcione la conexión a Internet. En nuestro caso 192.168.1.1.
Fig. 2.38 Administración Apache “Linux ventana” 2
42
Pulsaremos "Aceptar":
Fig. 2.39 Administración Apache “Linux ventana” 3
El sistema realizará una desconexión temporal de la red para realizar y aplicar los cambios establecidos anteriormente:
Fig. 2.40 Administración Apache “Linux ventana” 4
Será conveniente añadir algunos servidores de DNS externos para que la navegación de nuestro equipo funcione correctamente. Para ello accederemos a la
43
pestaña "DNS" y pulsaremos "Añadir", introduciremos la IP del servidor DNS. Añadiremos los que queramos y pulsaremos "Cerrar":
Fig. 2.41 Administración Apache “Linux ventana” 5
2.10 Ventajas
il de conseguir ayudas y soportes.
-plataforma
44
l conseguir ayuda/soporte)
cualquier persona en el mundo.
incluso después de la instalación. Esto representa un gran beneficio para los que mantienen paquetes, ya que les permite crear el paquete del núcleo de Apache y adicionalmente paquetes que contengan extensiones como PHP, mod_perl, mod_fastcgi, ... pache porque con DSO y apxs se puede trabajar fuera del árbol fuente de Apache y necesitar un único comando apxs -i seguido de un apachectl restart para cargar una nueva versión del módulo desarrollado en el servidor Apache que esté funcionando actualmente.
2.11 Desventajas
todos los sistemas operativos soportan carga dinámica del código en el espacio de direcciones de un programa.
sobrecarga que la resolución representa para el cargador (loader).
45
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.
2.12 Estabilidad
Los servidores virtuales han sido desde siempre, una de las características más interesantes en Apache, además de ser uno de los primeros servidores web que soportaban esta característica. Un host virtual desde un punto de vista práctico es la agrupación de uno o muchos sitios web en una misma dirección IP o nombre de dominio, es por este motivo que cada servidor virtual puede (y debe) contener algunas
de
las
directivas
anteriormente
descritas
para
personalizar
el
comportamiento de dicho host. Como su nombre lo indica, da la sensación al usuario que está accediendo a un servidor web diferente, sin embargo en realidad está accediendo a la misma instancia del servidor web, esto supone un ahorro en términos de direcciones IP e incluso máquinas en el caso de que se desee publicar varios servidores con características diferentes. Ahora bien, es posible definir dos tipos de servidores virtuales, por dirección IP o por Nombre.
2.13 Seguridad
La instalación sobre ficheros de configuración de Apache 2.x:apache2.conf, envvars, httpd.conf, ports.conf, vhos, sirven para tener una configuración más segura. Listen: está directiva permite indicarle a un servidor Apache porque dirección IP y puerto escucha. Es importante que el servidor Apache no escuche aquellas redes
46
a las que no das servicios. La directiva Listen, debe especificar la dirección IP del interfaz de red local. Cuadro comparativo de apache y IIS (Internet Information Server). ServerName: no debería usar un nombre de la red interna. Hay que dar la menos información posible. Userdir: si utilizas el mod_usedir y la directiva FollowSymLinks, está activada, un usuario podría crear un enlace a cualquier parte de sistema de ficheros y servirla como su directorio raíz de Web. Si quieres evitar posibles fallos de seguridad, la puedes utilizar especificando los usuarios, que puede pueden tener su propia web.
La seguridad en apache se puede llevar de tres maneras las cuales puede proteger este servidor, como son: por el cual se verifica la identidad de una persona. De una forma simple, este proceso se puede llevar a cabo mediante un nombre de usuario y una contraseña, pero se pueden llegar a utilizar otros métodos para validar la identidad de una persona, como mediante el uso de certificados, tarjetas etc… En apache la autentificación puede estar gestionada por distintos módulos, dependiendo de la forma de implementación. Si decide llevarla a cabo gestionando ficheros con listas de usuarios y contraseñas (encriptadas), deberá utilizar el módulo mod_auth. Sin embargo, si decide llevarla a cabo mediante base de datos, deberá utilizar los módulos mod_auth_dbm.
identidad conocida, tiene acceso al recurso solicitado. Para llevar a cabo esta acción, se suelen utilizar listas de permisos en las cuales se enumeran cada una de las acciones que puede realizar un usuario, o las que no puede hacer. Normalmente, para simplificar la gestión de estos ficheros, los usuarios se suelen unir en grupos proporcionando los permisos al grupo.
47
En apache la autorización a recursos es gestionada o bien mediante la directiva <directory> en el fichero principal de configuración, o bien mediante la configuración de la carpeta a través de ficheros .htaccess.
que se ha hecho la petición, tiene acceso al recurso. Los controles de acceso se utilizan para limitar y controlar las máquinas que tienen acceso a un recurso independientemente del usuario que accede, ya que estos controles se llevan a cabo antes de que se realice el proceso de autentificación. En apache, el control de acceso se puede llevar a cabo mediante las directivas <directory><files>y <location>, o a través del fichero de configuración .htaccess para controlar una carpeta especifica.
48
2.14 Cuadro comparativo
49
3 IIS (Internet Information Server) 3.1 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 e IIS 3.0 introdujo las Páginas activas de servidor, esta tecnología es una plataforma 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 actual de IIS es la 6.0 para Windows Server 2003 e IIS 5.1 para Windows XP Professional. IIS 5.1 para Windows XP es una versión compacta del IIS que soporta solo 10 conexiones simultaneas y solo 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 la usabilidad y el rendimiento en escenarios punto-apunto (peer-to-peer).
3.2 Definición Los Servicios de Internet Information Server (IIS), son los servicios de software que admiten la creación, configuración y administración de sitios Web, además de otras funciones de internet. Los servicios de Microsoft Internet Information Server incluyen el protocolo de transferencia de noticias a través de la red (NNTP), el protocolo de transferencia de archivos (FTP) y el protocolo simple de transferencia de correo (SMTP). Es un servidor web de "Microsoft" que viene
50
con varias versiones de Windows. IIS es fácil. Fig. 3.1 Servidor IIS
3.3 Características
Las características principales del servido IIS son: Autenticación de texto implícita avanzada: la autenticación de texto implícita avanzada es compacta, permite una autenticación segura y eficaz de los usuarios a través de servidores proxy y servidores de seguridad, no requiere software cliente adicional y evita pasar el nombre de usuario y la contraseña en texto sin cifrar a través de Internet.
Comunicaciones seguras: Secure Sockets Layer (SSL) 3.0 y Seguridad de capa de transporte (TLS) proporcionan una forma segura para intercambiar información entre clientes y servidores. Además, SSL 3.0 y TLS proporcionan al servidor la forma de comprobar quién es el cliente antes de que el usuario inicie una sesión en el servidor. Cifrado canalizado por servidor (SGC): es una extensión de SSL que permite a instituciones financieras con versiones de exportación de IIS utilizar un cifrado de alto nivel de 128 bits. Asistentes para seguridad: los asistentes para seguridad simplifican las tareas de administración del servidor. Restricciones de dominio de Internet e IP: se puede conceder o denegar accesos Web a equipos individuales, grupos de equipos o dominios enteros. Almacenamiento de certificados: proporciona un único punto de entrada que le permite almacenar, realizar copias de seguridad y configurar certificados de servidor.
51
Fortezza: el estándar de seguridad del gobierno de EE.UU., habitualmente llamado Fortezza, es compatible con IIS 5.1. Este estándar satisface la arquitectura de seguridad Defense Message System con un mecanismo criptográfico
que
proporciona
confidencialidad
de
mensajes,
integridad,
autenticación y control de acceso. 3.4 Tendencias En Noviembre de 2005, Apache tenía el 70% de cuota de mercado en servidores web, desde entonces, el Internet Information Server (IIS) ha recortado distancias hasta situarse en un 34.2% y dejar Apache en un 48.4%. Datos de principios de este mes de Agosto, según Netcraft tras analizar 127,961,479 sitios web. La tendencia de Apache es claramente a la baja, mientras que la de IIS es al alza y de seguir así, alcanzará a su rival durante 2008. Más datos en Netcraft. No estoy en condiciones de discutir las razones técnicas de por qué IIS está recortando mercado a Apache. Recuerdo a algún administrador de sistemas jurando en arameo contra IIS 5, pero parece que esos tiempos han quedado atrás hace mucho. Microsoft con Internet Information Server está remontando en un mercado en el que impone el sistema operativo en el servidor (Windows 2003 Server), compite contra un software libre de coste de adquisición cero líderes en su sector y en un ámbito en el que la seguridad es un factor clave.
3.5 Versiones A continuación se muestran las versiones y la compatibilidad que tiene con los sistemas operativos, correspondiente con cada versión: 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
52
IIS 6.0, Windows Server 2003 y Windows XP Profesional x64 Edition IIS 7.0, Windows Vista (Solo Bussines y Ultimate) y Windows Server 2008 IIS 7.5, Windows 7 y Windows Server 2008 R2
3.6 Compatibilidad con sistema operativo
IIS 1.0, Windows NT 3.51 Services pack 3: Publicado el 30 de mayo de 1995. Fue proporcionada la opción de la arquitectura cliente servidor para Windows 95.
IIS 2.0, Windows NT 4.0: Lanzado en 1996 es un sistema Windows de 32 bit. Mayor estabilidad que Windows 95. Las ediciones para servidores de Windows NT 4.0 además incorporan un Servidor Web, IIS 2.0. Soporta plugins extensiones de Microsoft frontpage. Otras aplicaciones añadidas son Microsoft transaction para aplicaciones de red y Microsoft message que Server para mejorar las comunicaciones.
IIS 3.0, Windows NT 4.0 Services pack 3: Aproximadamente unos 10 meses después se lanzó en nuevo iis 3.0. Se introdujeron páginas de active Server (ASP) y se mejoró la velocidad así trajo la posibilidad de conectar con bases de datos de Microsoft a través de actives data objet y ODBC. Jscript y visua lbasic script junto con la tecnología ODBC se utilizaron para crear páginas basadas en ASP. Microsoft Visual InterDev también se incluyó en IIS 3. Microsoft Transaction Server (MTS) sirvió para distribuir aplicaciones Web.
IIS 4.0, Windows NT 4.0 Option pack 3: Se añadió Internet Explorer 4.01 Se introdujo la segunda versión de Microsoft Transaction Server. También Index Server en su segunda versión. Site Server Express 2 para gestionar el contenido Web. Mejora la fiabilidad y la eficacia de la transferencia http
53
con el standard http 1.1 Aparece el primer Microsoft Management console (mmc)
IIS 5.0, Windows 2000: Vino el cambio de nombre de Internet Information Server de Servicios de Internet Information Server Posibilidad de definir cuotas de tiempo. Mayor velocidad para http Mejora la trasferencia de archivos habilitando la reanudación de una descarga si ha sido interrumpida.
Posibilidad
de
reiniciar
IIS
sin
reiniciar
el
equipo
Administración remota del IIS y de otros servicios de Windows
IIS 6.0, Windows Server 2003 y Windows XP Profesional x64 Edition: Integrado en elsistema operativo Windows 2003 server. Es capaz de manejar un número superior de peticiones http. Permite a los administradores las copias de configuración entre maquinas a través de secuencias de comandos. Utilización de autenticación en passport, servidores Proxy y firewalls. Puede utilizar la característica de grupo de Active Directory para garantizar IIS.
3.7 Configuración 3.7.1 Sistema operativo Windows XP IS se puede encontrar en el propio CD de instalación de Windows XP Profesional. Hay que acceder a la opción de "Instalar componentes opcionales de Windows" para poder cargarlo en nuestro sistema. Para ello tenemos dos opciones: 1) Insertar el CD de instalación de Windows y en la ventana de autoarranque que se muestra, seleccionar la opción que pone "Instalar componentes opcionales de Windows", lo puedes ver en esta imagen:
54
Fig. 3.2 Configuración IIS “Windows XP”1
2) En el Panel de control, seleccionar la opción de "Agregar o quitar programas" y en la ventana que sale, pulsar sobre el icono de la izquierda marcado como "Seleccionar o quitar componentes de Windows". Explicado en esta imagen
Fig. 3.3 Configuración IIS “Windows XP”2
55
3) Ahora nos muestra la ventana para seleccionar los componentes adicionales de Windows que hay disponibles. En la lista, marcamos la opción "Servicios de Internet Information Server (IIS)".
Fig. 3.4 Configuración IIS “Windows XP”3
Por defecto se seleccionan unos cuantos componentes, dentro de los que ofrece la instalación de IIS. Nosotros podemos elegir qué componentes deseamos instalar apretando el botón marcado como "Detalles". Entre los componentes posibles se encuentran las extensiones de Frontpage, documentación, servicios adicionales de IIS, un servidor de FTP (para la transferencia de ficheros con el servidor por FTP), incluso uno de SMTP (para el envío de correos electrónicos).
56
Si no sabemos qué componentes instalar podemos dejar las opciones como aparecen en un principio, pues para la mayoría de los casos serán válidas. Damos clic en Aceptar en la ventana de los Servicios de IIS y luego en Siguiente, en la ventana Asistente de Componentes de Windows. Comienza la instalación de IIS, esto tardara algunos minutos. Si todo ha salido bien (Estamos trabajando en Windows, así que esta observación, no está por demás) nos saldrá una ventana como esta:
Fig. 3.5 Configuración IIS “Windows XP”4 Damos clic en el botón Finalizar, y retiramos nuestro CD de la unidad. Ahora abrimos nuestro navegador web favorito, y tecleamos en la barra de dirección: http://localhost/ o la dirección IP http://127.0.0.1.
57
Fig. 3.6 Configuración IIS “Windows XP”5
3.7.2 Sistema operativo Windows 7
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 maneras. 1- Creando un acceso directo a la aplicación que se encuentra en la siguiente 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 inetmgr y oprime la tecla Enter. 3.8 Instalación 3.8.1 Sistema operativo Windows XP Paso 1. Ir a Inicio / Panel de control/ Agregar o quitar programas. Allí activar la opción Agregar o quitar componentes de Windows y marcar la entrada Servicios de Internet Information Server (US) Paso 2. Realizar la instalación, por defecto, para la cual necesitaremos insertar el CD de Windows XP Professional.
58
Paso 3. Finalizada la instalación, comprobar que el servidor está bien instalado. Desde un navegador web teclear: http://localhost/ ó http://127.0.0.1. ¿Qué página de prueba aparece? Paso 4. Para comprobar la configuración del servidor, ir a: Æ Inicio/Panel de control/Herramientas administrativas/Servicios de Internet Infor. Server/ sitios web/sitio web predeterminado ó Æ Mi PC/Administrar/servicios y aplicaciones/ servicios de IIS/sitios web/sitio web predeterminado21 Paso 5. ¿Cómo sabemos si el servicio está activo? Paso 6. Desactivar el servidor IIS y llamar desde un navegador a http://localhost. ¿Qué ocurre? Paso 7. Indica en que directorio local ofrece servicio el servidor IIS. Paso 8. Indica la lista de prioridades de ficheros que servirá primero en caso de que no se le especifique ningún fichero en la URL de llamada. Paso 9. Modificar el nombre del fichero iisstart.asp por iisstart.html. Activar el servidor y realizar la llamada http://localhost desde un navegador ¿qué ocurre? NOTA: En las comprobaciones desde el navegador, en algunas situaciones, se debe refrescar el avegador hasta que cargue correctamente la página web o borrar la cache del mismo.22 Paso 10. Crear un fichero html, llamado default.htm de manera que indique “HOLA MUNDO”. Realizar la llamada http://localhost desde un navegador ¿qué ocurre? <html> <head></head> <body> <h1>HOLA MUNDO</h1> </body>
59
</html> Paso 11. Crear en C:\inetpub\wwwroot\ el directorio práctica. Dentro de él, crear un
fichero
index.html
muy
simple.
Desde
el
navegador
ejecutar:
http://localhost/practica. ¿Se visualiza el fichero? Paso 12. ¿Qué se debería hacer para visualizar tal fichero?23 Creación de un directorio virtual Dentro de las Propiedades de Sitio Web Predeterminado, se encuentra así mismo la opción de Nuevo /Directorio Virtual. Con ella se puede añadir cualquier directorio del sistema al servidor web sin tener que copiarlo en un directorio concreto. Bastará con indicar cuál es el directorio original al que apunta el virtual que se ha creado. Así se logra que cualquier página web esté rápidamente accesible sin tener que estar en el directorio por defecto, C:\inetpub\wwwroot\ Paso 13. Crear un directorio virtual de alias “pepe”, que apunte al directorio físico c:\pepedirectorio.
Crear
aquí
un
fichero
index.html
sencillo.
Llamar
a
http://localhost/pepe y ver qué ocurre
3.8.2 Sistema operativo Windows 7 Los pasos para instalar IIS en Windows 7 son los siguientes: 1. INICIO > CONTROL PANEL > Programs and Features 2. Dentro del cuadro de dialogo de Programs and Features, en la esquina superior izquierda, aparece Turn Windows features on or off. 3. Click en Turn Windows features on or off, se abrirá otro cuadro de dialogo, dentro de este, aparecerá un listado de servicios.
60
4. Selecciona (checkbox) Internet Information Services, y preciona OK. 5. Se instalará el IIS. Para verificar si se ha instalado de forma correcta: 1. Dentro de CONTROL PANEL, entramos a Administrative Tools. 2. Aparecerá un cuadro de dialogo con los servicios del Win7, dentro de este se debe encontrar IIS Manager, si esta, pasamos al siguiente paso. 3. Teclea en tu navegador (http://localhost/), si esta se abre, es la página por default de que está corriendo de manera correcta el IIS. OJO: Si se tiene instalado el servidor APACHE, se debe de desactivar, si no es así, el IIS fallará en su inicio.
3.9 Administración 3.9.1 Sistema operativo Windows XP Para administrar el servidor Internet Information Server en Windows XP, disponemos de un panel de control llamado "Servicios de Internet Information Server" al que podemos acceder de varias maneras. 1) Pulsando con el botón derecho en MI PC y seleccionando la opción que pone "Administrar". Esto nos abre "Microsoft Management Console" o, dicho en castellano, la "Administración de equipos". En la lista de la izquierda, en la parte de abajo aparece "Servicios y aplicaciones" entre los que encontraremos una opción buscada: "Servicios de Internet Information Server" 2) Podemos acceder desde el panel de control. Si tenemos configurada la vista clásica encontraremos un icono que pone "Herramientas administrativas" y haciendo doble clic, encontraremos el icono para administrarIIS. Si teníamos configurada la vista por categorías del panel de control (la que aparece por defecto en Windows XP) la búsqueda de la opción es un poco más compleja:
61
Seleccionamos "Rendimiento y mantenimiento" y dentro ya encontraremos el icono de "Herramientas administrativas", al que teníamos que hacer doble clic para encontrar, entre otros, el icono para acceder a "Servicios de Internet Information Server". 3) Otra manera de acceder es usando la opción Ejecutar en nuestra barra de incio. Con el archivo "inetmgr.exe" Una vez hemos accedido al panel "Servicios de Internet Information Server" tenemos ante nosotros la posibilidad de configurar nuestro servidor web en muchos aspectos, por ejemplo podemos, definir el documento por defecto, crear directorios virtuales, modificar las opciones de seguridad, y muchas opciones.
3.9.2 Sistema operativo Windows 7 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. El panel de administración de IIS es similar a la siguiente imagen :
62
Fig. 3.7 Administración IIS “Windows XP”1
3.10 Ventajas La gran ventaja del servidor IIS es su facilidad de instalación, configuración y uso, lo que lo hace ideal para el usuario común sin ningún conocimiento avanzado. Es confiable, seguro y administrable en internet. Proporciona capacidades de servidor web integrado. Al momento de la instalación permite elegir sobre que servidor web va a acorrer. Desarrolla y es compatible con las aplicaciones beneficiándose con un único entorno de alojamiento de aplicaciones integrado con compatibilidad total. Soporta ASP, ASP.NET, PHP, CGI y Perl. Es muy robusto y estable, por muchos dominios y usuarios simultáneos que se conecten. Funciona bajo Windows server aunque XP y Vista traen una versión reducida para pruebas y diseño.
63
ASP preparado en la instalación por defecto. Soporte ODBC integrado. Configuración gráfica y en línea de comandos
3.11 Desventajas La licencia no es gratuita. Multitud de nuevos fallos de seguridad. No es una plataforma, solo funciona bajo Windows. La mayoría de funcionalidad extra debe ser comprada por separado. Posee limitaciones en las versiones que no pertenecen a la familia SERVER. No autentica clientes individualmente. Si IIS no controla la contraseña, la cuenta debe tener la capacidad de un inicio de sesión local.
3.12 Estabilidad
Parches acumulativos para IIS 4.0, 5.0 y 5.1Microsoft pública actualizaciones acumulativas para Internet Information Server en sus versiones 4.0, 5.0 y 5.1, que entre otras funciones soporta los servidores webs de Microsoft para plataformas Windows NT 4.0, Windows 2000 y Windows XP. Además de incluir los parches anteriores, la actualización viene a corregir nuevos problemas de seguridad.
64
En el caso de IIS 4.0 el parche cubre toda las actualizaciones de seguridad aparecidas posteriormente al Service Pack 6a para Windows NT 4.0, mientras que cubre todos los parches de seguridad aparecidos hasta la fecha para IIS 5.0 y 5.1. Las nuevas vulnerabilidades corregidas con esta actualización son: Vulnerabilidad de elevación de privilegios (IIS 4.0, 5.0 y 5.1): Implicaciones: La explotación de esta vulnerabilidad permitiría a un atacante, que tuviera la opción de cargar y ejecutar aplicaciones en el servidor web, conseguir privilegios de sistema y el control total de la máquina.
Por defecto IIS 5.0 y 5.1 ejecutan las aplicaciones web en procesos separados y aislados al propio proceso IIS, para ganar en estabilidad y seguridad. En estos casos las aplicaciones ISAPI se ejecutan bajo el contexto de seguridad de la cuenta IWAM_nombremáquina con privilegios restringidos sobre el sistema para evitar que pueda llevar a cabo acciones potencialmente peligrosas. Un fallo en la implementación de Microsoft permite a las aplicaciones conseguir privilegios de Sistema Local con los que pueden obtener el control total sobre la máquina.
En el caso de IIS 4.0 esta vulnerabilidad es prácticamente una funcionalidad por defecto, ya que las aplicaciones web comparten recursos y se ejecutan en el mismo espacio de memoria que el proceso IIS. La única ventaja de este esquema es el ahorro de recursos y una mejora en el rendimiento, por contra si falla una aplicación afectará a la estabilidad del servidor web y, además, puede aprovechar la posición privilegiada dentro del proceso IIS para llevar a cabo acciones bajo el contexto de Sistema Local con derechos ilimitados sobre el sistema.
65
Aunque en IIS 4.0 es posible impersonalizar el cliente antes de lanzar aplicaciones CGI y extensiones ISAPI, existen varias estrategias para ejecutar código en el contexto de la cuenta de Sistema Local. Por ejemplo, se puede invocar ReverToSelt en la función HttpExtensionProc en una extensión ISAPI para finalizar la sesión de personalización y situarse en el contexto de seguridad de la cuenta Sistema Local, consiguiendo de nuevo acceso total a la máquina
3.13 Seguridad Cuando Microsoft sacó Windows Server 2003 con IIS 6.0 se dio un gran paso adelante en cuanto al paradigma secure by default. A diferencia de anteriores versiones, IIS 6.0 se instalaba con muchas de sus funcionalidades deshabilitadas por defecto (p. ej. extensiones ISAPI y componentes CGI), de forma que cada administrador debía habilitar explícitamente las funcionalidades que realmente fuera a utilizar. En una instalación por defecto de IIS 6.0 sólo se sirve contenido estático. Con Windows Server 2008 e IIS 7.0 se ha dado un paso más en esta dirección, pero este tema ya lo trataré en un post separado. En todo caso, aunque la instalación por defecto de IIS 6.0 ya nos proporciona un buen punto de partida en cuanto a seguridad, podemos tomar una serie de precauciones para hacer nuestro servidor menos susceptible a ser atacados, y en el peor de los casos, mitigar las consecuencias de un eventual ataque exitoso. Estas son algunas de las recomendaciones que damos a nuestros clientes (no están ordenadas por importancia):
Reducir la superficie de ataque del servidor usando la herramienta Security Configuration Wizard for Windows Server 2003.
66
Utilizar esta herramienta es una buena práctica para establecer un buen punto de partida del bastionado de los servidores IIS. Esta herramienta nos ayuda a determinar la funcionalidad mínimarequerida para el rol o roles de nuestro servidor y nos permite: Deshabilitar servicios no requeridos.
Bloquear puertos que nos están en uso. Aplicar restricciones a los puertos que dejamos abiertos. Deshabilitar las Web Extensions de IIS que no vayamos a necesitar. Establecer políticas de auditoría eficaces. Utilizar Host Headers para los sitios web en IIS.
El uso de Host Headers previene que un sitio web responda a cualquier otra URL que las que están configuradas como Host Headers. De esta forma podemos evitar ataques de escaneo de IPs. La mayoría de los gusanos se extienden mediante escaneo de IPs, por lo que podemos minimizar la susceptibilidad de nuestro servidor a estos ataques simplemente utilizando host headers.
Esto nos permitirá protegernos de ataques del tipo directory traversal o backtracking en los que el hacker intenta acceder a ficheros de sistema mediante rutas relativas para obtener el control de la máquina. Restringir al máximo los permisos NTFS del contenido del sitio web es igualmente muy importante.
67
3.14 Cuadro comparativo entre Apache e IIS (internet Information Server) APACHE Corre sobre Windows y Linux.
IIS Corre sobre Windows.
Permite utilizar PHP. Permite correr aplicaciones web de .NET (.aspx o .asp) instalando el módulo Mono (no de Microsoft)
Permite utilizar PHP. Permite correr aplicaciones web de .NET de forma nativa.
Utilizado por la gran mayoría de hostings comerciales bajo un sistema operativo Linux.
No tantos proveedores de hosting lo soportan por necesitar un sistema operativo Windows
Es software libre.
Necesitas una licencia de Windows.
Difícil configuración.
Fácil configuración.
Permite configuraciones avanzadas.
Limitación en configuraciones avanzadas.
4 Instrucciones para la administración, gestión y actualización de portales web, a través de apache Existen varios comandos más que se usan muy poco en la administración de usuarios, que sin embargo permiten administrar aún más a detalle a tus usuarios de Linux. Algunos de estos comandos permiten hacer lo mismo que los comandos
68
previamente vistos, solo que de otra manera, y otros como ‘chpasswd’ y ‘newusers’ resultan muy útiles y prácticos cuando de dar de alta a múltiples usuarios se trata. A continuación se presenta un resumen de los comandos y archivos.
Comandos de administración y control de usuarios
chage
Permite cambiar o establecer parámetros de las fechas de control de la contraseña.
chpasswd
Actualiza o establece contraseñas en modo batch, múltiples usuarios a la vez. (se usa junto con newusers)
id
Muestra la identidad del usuario (UID) y los grupos a los que pertence.
gpasswd
Administra las /etc/gshadow).
groupadd
Añade grupos al sistema (/etc/group).
groupdel .
Elimina grupos del sistema.
groupmod
Modifica grupos del sistema.
groups
Muestra los grupos a los que pertence el usuario.
newusers
Actualiza o crea usuarios en modo batch, múltiples usuarios a la vez. (se usa junto chpasswd)
pwconv
Establece la protección shadow (/etc/shadow) al archivo /etc/passwd.
pwunconv
Elimina
la
contraseñas
protección
69
de
shadow
grupos
(/etc/group
(/etc/shadow)
al
y
archivo
/etc/passwd. useradd userdel
Añade usuarios al sistema (/etc/passwd). Elimina usuarios del sistema.
Comandos de administración y control de usuarios
.bash_logout
Se ejecuta cuando el usuario abandona la sesión.
.bash_profile
Se ejecuta cuando el usuario inicia la sesión.
.bashrc
Se ejecuta cuando el usuario inicia la sesión.
/etc/group
Usuarios y sus grupos.
/etc/gshadow
Contraseñas encriptadas de los grupos.
/etc/login.defs
Variables que controlan los aspectos de la creación de usuarios.
/etc/passwd
Usuarios del sistema.
/etc/shadow
Contraseñas encriptadas y control de fechas de usuarios del sistema.
70
5 Software para servidores web Ubuntu Server Edition Ubuntu Server Edition es una distribución especial del famoso Linux, el cual viene con todos los paquetes preinstalados que son necesarios para montar un servidor, incluye el conjunto LAMP (linux+Apache+MySQL+PHP) para montar sitios poderosos y robustos. Es completamente gratis y lo puedes descargar desde su página oficial. http://www.ubuntu.com/products/whatisub ... veredition AppServ AppServ es una suite de herramientas imprescindibles para comenzar a utilizar gestores de contenidos como PHP-Nuke, Joomla o WordPress. AppServ instalará en tu ordenador en tan sólo unos segundos Apache, PHP, MySQL y phpMyAdmin, dejando las aplicaciones configuradas para su funcionamiento inmediato. Una vez instalado AppServ, dispondremos de un servidor web y otro de base de datos propio, configurado de manera local, y que nos permitirá realizar todas las pruebas necesarias en nuestra web antes de lanzarla a la red. Se puede descargar gratuitamente desde la página oficial http://www.appservnetwork.com/ XAMPP * Apache
71
* MySQL * PHP 5.1.6 & PHP * phpMyAdmin * FileZilla FTP Server * OpenSSL Se puede descargar totalmente gratis desde aqui: http://www.apachefriends.org/es/xampp-windows.html
BEA WebLogic Express Permite desarrollar de manera muy rápida sitios Web dinámicos y aplicaciones Web en un ambiente confiable y con alto desempeño. Ideal para proyectos que usen Servlets, Java Server Pages (JSPs) y aplicaciones que empleen clases Java, así como invocación de métodos remotos (RMI) y conectividad a bases de datos (JDBC). Sun ONE Web Server Enterprise Edition La virtualización de los dominios y las funciones de seguridad permiten a los proveedores de servicio y a las empresas ofrecer una mejor calidad a sus clientes. Asegura que las empresas gestionen el volumen demandado por los sitios Web más visitados y mejorar la gestión de sus operaciones, disminuyendo el costo de su infraestructura
IBM WebSphere Application Server Express Version 6.1
72
Es una soluciรณn rรกpida y asequible que ayuda a desarrollar, ejecutar, integrar y gestionar aplicaciones dinรกmicas basadas en Web. http://www.portalprogramas.com/descargar/servidores-web En la siguiente tabla, se puede observar los sistemas operativos para las estaciones de trabajo y el costo aproximado de cada uno.
En la siguiente tabla observamos los sistemas operativos que podemos utilizar como servidor.
73
Conclusiones Hay distintas actividades que se pueden desarrollar con un servidor, son muy variadas y es una gran lista, además de saber los requerimientos para poder utilizar uno. El servidor es esencial hoy en día, un claro ejemplo son los servidores que hacen posible la existencia del internet y muchas tareas dentro de una empresa. Como se pudo observar en este trabajo se explica la definición de apache, sus características, la forma de instalarlo en diversos sistemas operativos, que en punto de vista es más fácil instalarlo sobre la plataforma Windows. El servidor apache cuenta con muchas ventajas una de las principales es que es un software libre, otra ventaja es que tenemos con este servidor es que es muy fácil conseguir ayuda o soporte, lo conseguimos en la página de apache software foundation. Trabajar directamente con IIS como servidor web de desarrollo permite trabajar en un entorno más cercano que con un servidor web de producción de IIS. Esto ayuda a resolver los problemas de configuración antes de que el proyecto se active. Si utiliza IIS Express o el servidor de desarrollo integrado de Visual Studio,
74
la transición a un servidor web de producción de IIS puede requerir realizar tareas de configuración adicionales debido a los contextos de seguridad diferentes entre los servidores de prueba y de producción.
Bibliografía
(s.f.). Obtenido de http://www.ehowenespanol.com/ventajas-apache-web-serverlista_109947/ (s.f.). Obtenido de http://sopa.dis.ulpgc.es/ii aso/portal_aso/leclinux/administracion/apache/apache_t.pdf (s.f.). Obtenido de http://www.webtaller.com/maletin/articulos/seguridad-apache2.php (s.f.).Obtenido de http://www.juntadeandalucia.es/empleo/recursos/material_didactico/especialidades /materialdidactico_administrador_servidores/Content/3-servicios_web/5ApacheWebServer.pdf (s.f.). Obtenido de http://httpd.apache.org/ (s.f.). Obtenido http://www.informatica.us.es/~ramon/articulos/AdminLinuxUbuntuFedora.pdf
de
(s.f.). Obtenido de http://www.slideshare.net/lilavaldez/revista-servidores-web (s.f.). Obtenido de www.linuxtotal.com.mx Brochard, J. (2006). Internet Information Services 6: instalación y emigración, administración y optimización, 4 ejercicios prácticos : includas las novedades de la actualización del SP1 de Windows Server 2003. Ediciones ENI. Caballero, J. M. (s.f.). Implantacion de Aplicaciones informáticas de Gestión. Madrid, España: Visión Net. Ortega, M. A. (2010). Manual practico, Servicios de Red de area local. España: Visión libros.
75
Piquero, J. V. (2009). Prรกcticas de servicios de servicios en red y aplicaciones web.
76