apache: instalación y configuración en ubuntu server y windows server

89
Apache Instalación y configuración en Ubuntu Server y Windows Server Jose Manuel Rozas Vilar

Upload: jose-manuel-rozas-vilar

Post on 13-Jun-2015

22.470 views

Category:

Technology


2 download

DESCRIPTION

Índice: Instalación de Apache 2.2 en Ubuntu Server Comprobación del funcionamiento del servidor Ubuntu en un cliente Windows Instalación de Apache 2.2 en Windows Server 2008 Comprobación del funcionamiento del servidor Windows en un cliente Windows Ficheros de configuración y directivas en Ubuntu Server Ficheros de configuración y directivas en Windows Server Configuración básica en Linux Configuración básica en Windows Módulos en Linux Módulos en Windows Control de acceso por IP y nombre de dominio Autenticación y autorización Basic y Diges Ficheros .htaccess Ficheros de registros (logs) Módulos mod_status y mod_info Webalizer

TRANSCRIPT

Page 1: Apache: instalación y configuración en Ubuntu Server y Windows Server

Apache Instalación y configuración en Ubuntu Server y Windows Server Jose Manuel Rozas Vilar

Page 2: Apache: instalación y configuración en Ubuntu Server y Windows Server

Índice

Instalación de Apache 2.2 en Ubuntu Server

Comprobación del funcionamiento del servidor Ubuntu en un cliente Windows

Instalación de Apache 2.2 en Windows Server 2008

Comprobación del funcionamiento del servidor Windows en un cliente Windows

Cuestiones

Ficheros de configuración y directivas en Ubuntu Server

Ficheros de configuración y directivas en Windows Server

Configuración básica en Linux

Configuración básica en Windows

Módulos en Linux

Módulos en Windows

Control de acceso por IP y nombre de dominio

Autenticación y autorización Basic y Diges

Ficheros .htaccess

Ficheros de registros (logs)

Módulos mod_status y mod_info

Webalizer

Conclusión

Webgrafía

Page 3: Apache: instalación y configuración en Ubuntu Server y Windows Server

Instalació n de Apache

Instalación de Apache 2.2 en Ubuntu server

Tenemos instalado una versión del Ubuntu Server en una máquina virtual.

Iniciamos el sistema.

Page 4: Apache: instalación y configuración en Ubuntu Server y Windows Server

Antes de proceder a la instalación actualizamos los paquetes

Instalamos apache

Page 5: Apache: instalación y configuración en Ubuntu Server y Windows Server

Comprobamos que el servidor está iniciado y escuchando en el puerto 80/TCP.

Comprobamos que se ha creado el directorio /var/www y que su propietario es el usuario root

Comprobamos el contenido del archivo /var/www/index.html

Antes de pasar al cliente comprobamos la IP de nuestro servidor Ubuntu

Page 6: Apache: instalación y configuración en Ubuntu Server y Windows Server

Comprobación del funcionamiento del servidor Ubuntu en un cliente Windows

Iniciamos el cliente en otra máquina virtual.

Y desde un navegador comprobamos el funcionamiento de Apache, empleando la misma IP que nuestro

servidor Ubuntu.

Page 7: Apache: instalación y configuración en Ubuntu Server y Windows Server

Instalación de Apache 2.2 en Windows Server 2008:

Iniciamos Windows server en una máquina virtual.

Bajamos el programa de Apache desde su página web.

Page 8: Apache: instalación y configuración en Ubuntu Server y Windows Server
Page 9: Apache: instalación y configuración en Ubuntu Server y Windows Server

Ejecutamos el archivo que nos acabamos de descargar.

Page 10: Apache: instalación y configuración en Ubuntu Server y Windows Server
Page 11: Apache: instalación y configuración en Ubuntu Server y Windows Server

Al terminar la instalación aparece el icono de Apache en la barra de tareas.

Comprobamos que el servidor está escuchando en el puerto 80.

Comprobamos el contenido del directorio \htdocs de la instalación de Apache 2.2

Page 12: Apache: instalación y configuración en Ubuntu Server y Windows Server

Además vamos a agregar una excepción al firewall

Page 13: Apache: instalación y configuración en Ubuntu Server y Windows Server
Page 14: Apache: instalación y configuración en Ubuntu Server y Windows Server

También incluiremos en la variable Path de Windows la ruta a los archivos binarios de Apache.

En el Panel de Control>Variables de Entorno>Editar

Page 15: Apache: instalación y configuración en Ubuntu Server y Windows Server

Comprobación de funcionamiento del servidor de Windows

Desde el propio servidor, introduciendo la IP de localhost en un navegador:

Page 16: Apache: instalación y configuración en Ubuntu Server y Windows Server

En un cliente Windows introduciendo la IP del servidor en un navegador:

Page 17: Apache: instalación y configuración en Ubuntu Server y Windows Server

Cuestiones

Linux /etc/apache2/apache2.conf: Dentro de este archivo se encuentra el principal archivo de configuración del servidor web apache.

1

Page 18: Apache: instalación y configuración en Ubuntu Server y Windows Server

/etc/apache2/ports.conf: configuraciones de puertos. Podemos cambiar o añadir los puertos que escucha el servidor.

/etc/apache2/mods-available/: El directorio de los módulos disponibles.

Page 19: Apache: instalación y configuración en Ubuntu Server y Windows Server

/etc/apache2/mods-enabled/: directorio de los módulos que están habilitados.

/etc/apache2/sites-available/: los sitios web activos se encuentran listados en este directorio

Page 20: Apache: instalación y configuración en Ubuntu Server y Windows Server

Windows

C:\Archivos de Programa\Apache Software Foundation\Apache2.2\conf\httpd.conf

Es el archivo principal de configuración del servidor web Apache. Almacena información acerca de diversas funciones del servidor, que pueden añadirse o eliminarse agregando un "#" a comienzo de línea, las cuales determinan los valores para cada directiva con el fin de configurar Apache de acuerdo a nuestras necesidades. Está dividido en tres secciones: parámetros globales, directivas de funcionamento y host virtuales.

Page 21: Apache: instalación y configuración en Ubuntu Server y Windows Server

Carpeta C:\Archivos de Programa\Apache Software Foundation\Apache2.2\conf\extra

En esta carpeta se encuentran los archivos configuración extra de Apache: httpd-autoindex.conf: contiene directivas para controlar la generación automática de la lista de directorios

en directorios que no contenga un archivo index.html.

httpd-default.conf: contiene la configuración por defecto del servidor.

info.conf httpd: este archivo contiene la configuración para los módulos mod_info y mod_status.

httpd-languages.conf: este archivo contiene la configuración para el soporte multi-idioma de Apache.

httpd-manual.conf: manual de Apache en HTML.

httpd-mpm.conf: este archivo contiene la configuración común de varios módulos multiproceso.

httpd-multilang-errordoc.conf: documentación de errores multi-idioma, que hace que el servidor reporte

errores en el idioma del usuario definido por el navegador.

httpd-userdir.conf: mod_userdir permite a cada usuario en nuestro servidor tener su propio espacio web

personal, con URL del tipo de http://nombreservidor/~nombreusuario/

httpd-ssl.conf: para activar SSL (HTTPS) en el servidor es necesario cargar este archivo de configuración.

httpd-vhosts.conf: este archivo contiene un host virtual de ejemplo.

Page 22: Apache: instalación y configuración en Ubuntu Server y Windows Server

Archivós de cónfiguració n y directivas en Ubuntu Server

1. Ficheiros de configuración en /etc/apache2 Directorio /etc/apache2

Fichero /etc/apache2/apache2.conf

Page 23: Apache: instalación y configuración en Ubuntu Server y Windows Server

apache2.conf incluye, con la directica include, a otros ficheros y directorios.

Page 24: Apache: instalación y configuración en Ubuntu Server y Windows Server

2. Servidor virtual por defecto En el directorio /etc/apache2/sites-available está el archivo default, que contiene la configuración del servidor por defecto.

Contenido del archivo default.

Page 25: Apache: instalación y configuración en Ubuntu Server y Windows Server

En el directorio /etc/apache2/sites-enabled existe el archivo 000-default que es un enlace simbólico a default. Los archivos incluídos en /etc/apache2/sites-enabled se incluyen en /etc/apache2/apache2.conf en orden alfabético.

3. Directivas en el archivo /etc/apache2/apache2.conf

ServerRoot

Indica en dónde irá el directorio raíz donde se encuentra instalado nuestro servidor web.

User

Establece el identificador de usuario utilizado por el servidor para responder a las peticiones. Esta opción determina el acceso de servidor.

Group

Similar a User, la directiva Group establece el grupo sobre el que el servidor aceptará las peticiones.

TimeOut

El número de segundos que esperará el servidor antes de cerrar una petición.

KeepAlive

Si está activada como On permite conexiones persistentes (más de una petición en la misma conexión )

Page 26: Apache: instalación y configuración en Ubuntu Server y Windows Server

ErrorLog

En esta directiva se indica la localización del fichero de errores error.log

Contenido del archivo error.log

ports.conf

En el archivo apache2.conf también se incluye un include al archivo ports.conf, en dónde se indican en qué puertos estará escuchando el servidor.

Contenido de ports.conf

Vemos que está configurado para escuchar en el puerto 80. Si se habilitara el módulo mod_ssl escuchará también en el puerto 443.

Page 27: Apache: instalación y configuración en Ubuntu Server y Windows Server

default

En el fichero /etc/apache2/sites-available/default

Dentro de la directiva <VirtualHost> ... </VirtualHost> se define el comportamiento del servidor virtual por defecto. DocumentRoot Esta directiva especifica dónde debe buscar Apache los archivos que forman el sitio. El valor predeterminado es /var/www. La directiva contenedora <Directory> ... </Directory> indica a Apache cómo servir el contenido del directorio /var/www El valor de la directiva ErrorLog indica la localización del archivo error.log, por defecto /var/log/apache2.

Page 28: Apache: instalación y configuración en Ubuntu Server y Windows Server

Archivós de cónfiguració n y directivas en Windóws Server

1. Ficheros de configuración Iniciamos sesión con un usuario con privilegios de administrador.

Accedemos al directorio C\:Program Files\Apache Software Foundation\Apache2.2\conf

Page 29: Apache: instalación y configuración en Ubuntu Server y Windows Server

Abrimos el fichero httpd.conf

Page 30: Apache: instalación y configuración en Ubuntu Server y Windows Server

2. Directivas El valor de la directiva ServerRoot: el principio del árbol de directorios donde se guardarán los archivos de configuración, error y logs. C\:Program Files\Apache Software Foundation\Apache2.2

El puerto en el que escucha peticiones Apache es el puerto 80.

El valor de la directiva DocumentRoot: el directorio desde el que nuestro servidor servirá los documentos. C\:Program Files\Apache Software Foundation\Apache2.2\htdocs

Las directivas contenedoras <Directory> ... </Directory> determinan cómo Apache sirve los contenidos. Primero está configurada por defecto de forma restrictiva.

Luego se puede configurar el directorio de forma personalizada.

Page 31: Apache: instalación y configuración en Ubuntu Server y Windows Server

Directiva Errorlog: la localización del fichero de errores error.log.

Hay varias directivas include desactivadas mediante comentarios para poder incluir nuevas funcionalidades.

Page 32: Apache: instalación y configuración en Ubuntu Server y Windows Server

Fichero httpd-default para modificar directivas por defecto.

Page 33: Apache: instalación y configuración en Ubuntu Server y Windows Server

Fichero httpd-vhosts para añadir servidores virtuales.

Page 34: Apache: instalación y configuración en Ubuntu Server y Windows Server

Captura de pantalla con Windows Server 2008 funcionando (arriba) Y navegador del host accediendo a la página index.html en el directorio htdocs de Apache (círculo rojo).

Page 35: Apache: instalación y configuración en Ubuntu Server y Windows Server

Cónfiguració n ba sica en Linux

Archivos y directorios de prueba

Accedemos al directorio /var/www

y creamos los siguientes archivos y directorios:

/

Ficheros a servir por defecto ( DirectoryIndex)

var/www/despregamento.html

/

Page 36: Apache: instalación y configuración en Ubuntu Server y Windows Server

var/www/fp.html

/var/www/ciclos/listado.html

/var/www/ciclos/asir.html

Page 37: Apache: instalación y configuración en Ubuntu Server y Windows Server

/var/www/ciclos/daw.html

/var/www/ciclos/dam.html

Page 38: Apache: instalación y configuración en Ubuntu Server y Windows Server

Si conectamos directamente con el servidor, sale el index.html por defecto

Si renombramos index.html por indice.html

Volvemos a conectar

Ahora como no se ha encontrado el index.html nos muestra el contenido del directorio.

Page 39: Apache: instalación y configuración en Ubuntu Server y Windows Server

Vamos a editar el archivo /etc/apache2/sites/available/default para incluir en la directiva DirectoryIndex

a despregamento.html.

Reiniciamos el servidor

Ahora nos muestra por defecto el archivo despregamento.html

Page 40: Apache: instalación y configuración en Ubuntu Server y Windows Server

Opciones sobre directorios ( Directory y Options Indexes)

Editamos el archivo /etc/apache2/sites-available/default

En la directiva <Directory> ... </Directory>

se encuentran las directivas que determinan cómo Apache sirve el contenido de ese directorio.

Todos los directorios dentro de /var/www heredan su configuración.

Por esa herencia, si abrimos en el

navegador del cliente

http://192.168.0.109/ciclos, como

en /ciclos no existe el fichero índice

despregamento.html

( DirectoryIndex), nos muestra el

contenido.

Page 41: Apache: instalación y configuración en Ubuntu Server y Windows Server

Creamos una nueva directiva <Directory> ... </Directory> para /var/ciclos

No hemos definido la opción Indexes. Así no se mostrará el contenido si no encuentra alguno de los

ficheros definidos en DirectoryIndex, sinó que mostrará un mensaje de prohibición.

Reiniciamos el servidor.

Ahora, si conectamos a /ciclos, como no se permite el listado del directorio (Options Indexes) el servidor

nos retorna el código 403 Forbidden.

Verificamos que sí es posible acceder a /ciclos indicando un archivo, por ejemplo /ciclos/listado.html

Page 42: Apache: instalación y configuración en Ubuntu Server y Windows Server

Códigos de error ( Error Document) Cofiguraremos el servidor virtual por defecto para cuando retorne el código de error 404 (página no

encontrada) por un mensaje persinalizado.

Editamos el archivo /etc/apache2/sites-available/default

Luego volvemos a reiniciar el servidor y probamos a introducir una página que sepamos que no existe.

Page 43: Apache: instalación y configuración en Ubuntu Server y Windows Server

Ahora vamos a configurar el servidor virtual por defecto para que cuando retorne el código de error 404

envíe una página 404.html almacenada en el directorio raíz del servidor.

Creamos el fichero 404.html.

Page 44: Apache: instalación y configuración en Ubuntu Server y Windows Server

Reiniciamos el servidor

Ahora probamos a introducir una página que no exista:

Page 45: Apache: instalación y configuración en Ubuntu Server y Windows Server

Directorios virtuales ( Alias )

Creamos el directorio /home/jose/apuntes

Dentro del directorio creamos el fichero apuntes.html

2. Editamos el archivo /etc/apache2/sites-available/default. Utilizamos la directiva Alias para crear un

directorio virtual denominado /apuntes que referencie a /home/jose/apuntes.

Reiniciamos el servidor para que los cambios tengan efecto.

Ahora nos conectamos a /apuntes.

Page 46: Apache: instalación y configuración en Ubuntu Server y Windows Server

Redirecciones ( Redirect)

Editamos el archivo /etc/apache2/sites-available/default.

Utilizamos la directiva Redirect para crear una redirección de /fp hacia http://www.todofp.es

Reiniciamos el servidor.

Y ahora si conectamos a /fp

Nos redirige a www.todofp.es

Page 47: Apache: instalación y configuración en Ubuntu Server y Windows Server

Cónfiguració n ba sica en Windóws

Ficheros y directorios de prueba Accedemos al directorio C:\Program Files\Apache Software Foundation\Apache2.2\htdocs

y creamos los siguientes ficheros:

..\htdocs\despregamento.html

..\htdocs\fp.html

..\htdocs\ciclos\lista.html

..\htdocs\ciclos\asir.html

..\htdocs\ciclos\daw.html

..\htdocs\ciclos\dam.html

Page 48: Apache: instalación y configuración en Ubuntu Server y Windows Server

Conexión con el directorio raíz htdocs en servidor Windows Server 2008.

Page 49: Apache: instalación y configuración en Ubuntu Server y Windows Server

/despregamento.html

/ciclos

/ciclos/lista.html

Page 50: Apache: instalación y configuración en Ubuntu Server y Windows Server

Configuración

Editamos el archivo C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf

Page 51: Apache: instalación y configuración en Ubuntu Server y Windows Server

Creamos las directivas:

DirectoryIndex

Directory

Page 52: Apache: instalación y configuración en Ubuntu Server y Windows Server

Alias y Redirection

Reiniciamos Apache

Page 53: Apache: instalación y configuración en Ubuntu Server y Windows Server

Probamos en el cliente.

Raíz /

/ciclos

/apuntes

/ciclos/lista.html

Page 54: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.7. Mó dulós de Apache

Vamos a consultar los módulos (estáticos y dinámicos) que se cargan por defecto en nuestra versión de Apache. Después investigaremos la funcionalidad del módulo userdir, lo habilitaremos y probaremos su funcionalidad.

1. Módulos 1.1. Iniciamos nuestro servidor como administrador.

1.2. Comprobamos los módulos estáticos al compilar el servidor con apache2ctl -l

Son: core.c mod_log_config.c mod_logio.c prefork.c http_core.c mod-so.c

Page 55: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.3. Comprobamos los módulos que se han cargado dinámicamente al arrancar el servidor consultando el directorio /etc/apache2/mods-enabled.

Los archivos que aparecen en el directorio /etc/apache2/mods-enabled son enlaces simbólicos a archivos de /etc/apache2/mods-available.

Page 56: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.4. Editamos uno de los archivos .load (por ejemplo dir.load)

con nano

y vemos que se utiliza la directiva LoadModule para cargar el módulo dir_module. La ruta del módulo es un archivo de extensión .so en /usr/lib/apache2/modules. 1.5. Editamos el archivo dir.conf. Se añaden las directivas dentro de una declaración <IfModule mod_dir.c> </IfModule> que se ejecutará si se carga el módulo.

1.6. En el directorio /usr/lib/apache2/modules/ vemos los módulos disponibles para cargar.

Page 57: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.7.

Ejecutamos sudo apt-cache search libapache2-mod para ver los paquetes disponibles en los

repositorios de Ubuntu que permiten instalar módulos adicionales de Apache.

Page 58: Apache: instalación y configuración en Ubuntu Server y Windows Server

2. Módulo userdir 2.1. Comprobamos que el módulo userdir no está habilitado.

2.2. Habilitamos el módulo userdir ejecutando sudo a2enmod userdir

2.3. Comprobamos que dentro del directorio /etc/apache2/mods-enabled se han creado enlaces simbólicos del módulo userdir ( archivos .conf y .load)

hacia /etc/apache2/mod-availables

2.4. Reiniciamos el servidor para que los cambios tengan efecto.

Page 59: Apache: instalación y configuración en Ubuntu Server y Windows Server

2.5. En el archivo /etc/apache2/mods-enabled/userdir.conf vemos que está habilitado el uso de directorios personales para todos los usuarios excepto para el usuario root y que public_html es el nombre del subdirectorio que pueden crear los usuarios en su directorio home para poner sus páginas personales.

2.6. Creamos el directorio /home/jose/public_html

Dentro de este directorio creamos un archivo personalizado, por ejemplo personal.html.

Page 60: Apache: instalación y configuración en Ubuntu Server y Windows Server

2.7. Desde un cliente accedemos al servidor en el directorio que acabamos de crear.

2.8. Deshabilitamos el módulo ejecutando sudo a2dismod userdir y reiniciamos el servidor.

Page 61: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.8. Mó dulós en Windows

Comprobaremos los módulos estáticos y los módulos dinámicos cargados por defecto en nuestro Apache, y habilitaremos y comprobaremos el módulo userdir.

1. Módulos

1.1 Iniciamos el servidor con un usuario con privilegios de administrador.

1.2. Comprobamos los módulos estáticos que se han cargado al compilar el servidor ejecutando el comando httpd -l

Page 62: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.3. Consultamos el archivo httpd.conf en el directorio C:\Archivos de programa\Apache Software Foundation\Apache2.2\conf para ver los módulos que se han cargado dinámicamente al arrancar el servidor.

Page 63: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.4. En el directorio C:\Archivos de Programa\Apache Software Foundation\Apache2.2\modules vemos todos los módulos disponibles para cargar.

Page 64: Apache: instalación y configuración en Ubuntu Server y Windows Server

2. Módulo userdir 2.1. Editamos el archivo httpd.conf en el directorio C:\Archivos de programa\Apache Software Foundation\Apache2.2\conf

y habilitamos el módulo userdir eliminando sus símbolos # de comentario delante de las directivas LoadModule e Include.

2.2 Editamos el archivo httpd-userdir.conf en C:\Archivos de programa\Apache Software Foundation\Apache2.2\conf\extra

Page 65: Apache: instalación y configuración en Ubuntu Server y Windows Server

Está habilitado el uso de directorios personales para todos los usuarios y My Documents/My Website es el nombre del subdirectorio que pueden crear los usuarios para poner sus páginas personales. 2.3. Reiniciamos el servidor. 2.4. Creamos un archivo .html en el directorio C:\Usuarios\Administrador\My Documents\My Website, por ejemplo personal.html.

Page 66: Apache: instalación y configuración en Ubuntu Server y Windows Server

2.5. Accedemos desde un cliente al servidor por ~administrador

2.6. Editamos el archivo httpd.conf en el directorio C:\Archivos de programa\Apache Software Foundation\Apache2.2\conf y deshabilitamos el módulo userdir comentando con # en las directivas LoadModule e Include.

Y reiniciamos el servidor para que los cambios tengan efecto.

Page 67: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.9. Control de acceso por IP y nombre de dominio

En nuestro servidor Ubuntu crearemos el directorio /var/www/profesor y configuraremos Apache para que

sólo se pueda acceder desde el equipo local y desde un cliente dentro de la propia red local.

1.

Iniciamos el servidor Ubuntu con un usuario con permisos de administrador.

2.

Creamos el directorio /var/www/profesor

Dentro de este directorio creamos un archivo .html, por ejemplo profesor.html.

3.

Editamos el fichero de configuración /etc/apache2/sites-available/default y utilizamos la directiva

<Directory> junto con las directivas Order, Allow y Deny para denegar el acceso al directorio a todos los

equipos excepto al cliente windows de IP 10.0.3.190

Page 68: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.

Reiniciamos el Apache

5.

Comprobamos que se puede acceder a http://10.0.3.191/profesor/ desde e lcliente Windows pero no

desde la máquina real de Ubuntu.

Page 69: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.10. Autenticació n y autórizació n Basic y Digest

En la máquina Ubuntu Server configuraremos la autentificación HTTP Basic sobre el directorio

/var/www/profesor para que solo puedan acceder los usuarios profesor1 y profesor2.

Configuraremos la autenticación HTTP Digest sobre el directorio /var/www/departamento para que solo

puedan acceder los usuarios admin1 y admin2.

1. Autenticación HTTP Basic

1.1.

iniciamos el servidor Ubuntu Server con un usuario con privilegios de administración.

1.2.

Comprobamos, consultando el directorio /etc/apache2/mods-enabled, que el módulo auth_basic está

habilitado.

Page 70: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.3.

Para usar la autenticación basic hay que crear un fichero accesible por Apache en el que se guardarán los

usuarios y sus contraseñas.

Para crear este fichero se utilizará el comando htpaswd.

Creamos el fichero y añadimos el usuario profesor1

La opción -c es para crear el fichero.

htpasswd -c /etc/apache2/passwd profesor1

Añadimos el usuario profesor2. No se usa la opción -c porque el fichero passwd ya existe.

1.4.

Editamos el fichero de configuración /etc/apache2/sites-available/default y permitimos el acceso al

directorio /var/www/profesor a los usuarios profesor1 y profesor2.

1.5.

Reiniciamos Apache.

Page 71: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.6.

Desde el cliente de Windows accedemos a http://IPservidorUbuntu/profesor

No será posible entrar con otro usuario que no sea profesor1 o profesor2

Page 72: Apache: instalación y configuración en Ubuntu Server y Windows Server

2. Autenticación HTTP Digest Creamos el directorio /var/www/departamento.

Dentro del directorio creamos un fichero denominado departamento.html.

2.2.

Habilitamos el módulo auth_digest.

2.3.

Reiniciamos Apache

2.4.

Para usar la autenticación digest hay que crear un fichero accesible por Apache en el que se guardarán los

usuarios y sus contraseñas asociados a un dominio (realm).

Para crear este fichero se utilizará el comando htdigest.

Creamos el fichero y añadimos el usuario admin1 al dominio informatica.

La opción -c es para crear el fichero.

Añadimos el usuario admin2. No se usa la opción -c porque el fichero ya existe.

Page 73: Apache: instalación y configuración en Ubuntu Server y Windows Server

2.5.

Editamos el fichero de configuración /etc/apache2/sites-available/default y permitimos el acceso al

directorio /var/www/departamento a los usuarios admin1 y admin2.

2.6.

Sólo podemos acceder desde el cliente Windows a http://IPservidorUbuntu/departamento con

los usuarios admin1 o admin2.

Page 74: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.11. Ficherós .htaccess

En la máquina Ubuntu Server

o habilitaremos en Apache el uso de ficheros de configuración personalizada de directorios

(.htaccess ) en el directorio /home/profesor/blog para que sea el propio usuario profesor el que pueda controlar cómo sirve Apache los contenidos de ese directorio.

o Configuraremos el alias /blog que permita acceder al directorio /home/profesor/blog

o Como usuario profesor haremos uso del fichero .htaccess y configuraremos sobre el directorio /home/profesor/blog

que sólo se pueda acceder desde nuestro cliente Windows Autenticación HTTP Digest para que sólo pueda acceder el

usuario blog

1.

Iniciamos una sesión en el servidor Ubuntu con un usuario con privilegios de administrador.

2.

Creamos el usuario profesor

Page 75: Apache: instalación y configuración en Ubuntu Server y Windows Server

3.

Editamos el fichero de configuración /etc/apache2/sites-available/default.

Creamos el alias y habilitamos el uso de ficheros .htaccess permitiendo sobreescribir todas las directivas en

el directorio /home/profesor/blog.

Eliminamos las directivas anteriores y añadimos la directiva AllowOverrideAll.

4.

Reiniciamos Apache para que los cambios tengan efecto.

5.

Iniciamos una sesión en el servidor Ubuntu como usuario profesor.

6.

Creamos el directorio /home/profesor/blog/

Creamos el fichero blog.html

7.

Creamos el fichero /home/profesor/.htdigest y añadimos el usuario blog

Page 76: Apache: instalación y configuración en Ubuntu Server y Windows Server

8.

Creamos el fichero /home/profesor/blog/.htaccess y añadimos las directivas para realizar la configuración

pedida (no es necesario incluir la directiva <Directory> porque el fichero ya está en el directorio en el que

se aplicará su configuración )

9.

Desde el cliente Windows accedemos a http://IPservidorUbuntu/blog

Page 77: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.12. Ficherós de registrós (lógs)

Sobre la máquina servidor Linux consultaremos los archivos de configuración de Apache y

observaremos las directivas para definir la configuración de los archivos de registros (logs).

1.

Iniciamos una sesión en el servidor Linux con privilegios de administrador.

2.

Consultamos el archivo /etc/apache2/sites-acailable/default.

3.

El fichero de logs de errores (directiva ErrorLog) es error.log y su nivel de prioridad (LogLevel)

es warn.

4.

El fichero de logs de accesos (directiva CustomLog) es access.log y como no especifica ningún

formato con LogFormat se usa el definido para el servidor principal.

Page 78: Apache: instalación y configuración en Ubuntu Server y Windows Server

5.

Consultamos el log de errores /var/log/apache2/error.log

Page 79: Apache: instalación y configuración en Ubuntu Server y Windows Server

6.

Consultamos el log de accesos /var/log/apache2/access.log

Page 80: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.13. Mó dulós mód_status y mód_infó

Sobre el servidor Linux probaremos la funcionalidad de los módulos mod_status y mod_info.

1. mod_status

Módulo que permite monitorizar el rendimiento del servidor Apache. Genera un documento en

HTML con información sobre el estado actual del servidor.

1.1. Iniciamos una sesión en el servidor Linux con un usuario con privilegios de administración.

1.2. Habilitamos el módulo si no está habilitado.

sudo a2enmod status

1.3. Editamos el fichero de configuración del módulo

/etc/apache2/mods-enabled/status.conf

y habilitamos el acceso a /server-status desde el cliente windows

Page 81: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.4.

Reiniciamos el servidor para aplicar los cambios.

1.5.

Desde el cliente nos conectamos al servidor /server-status

Page 82: Apache: instalación y configuración en Ubuntu Server y Windows Server

1.6.

También es posible consultar la información desde un terminal ejecutando el siguiente comando:

sudo apache2ctl status

Page 83: Apache: instalación y configuración en Ubuntu Server y Windows Server

2. mod_info

Módulo que proporciona una vista resumida de la configuración del servidor.

2.1.

Abrimos un terminal y habilitamos el módulo

sudo a2enmod info

2.2.

Editamos el fichero de configuración del módulo /etc/apache2/mods-enabled/info.conf y

habilitamos el acceso a /server-info desde el cliente windows.

2.3.

Reiniciamos el servidor para aplicar los cambios.

Page 84: Apache: instalación y configuración en Ubuntu Server y Windows Server

2.4.

Desde el cliente windows nos conectamos al servidor Linux /server-info

Page 85: Apache: instalación y configuración en Ubuntu Server y Windows Server

4.14. Webalizer

Sobre la máquina servidor Linux instalaremos y probaremos la funcionalidad de Webalizer.

1.

Iniciamos una sesión en el servidor Linux con un usuario con privilegios de adminstración.

2.

Abrimos un terminal e instalamos el software.

Page 86: Apache: instalación y configuración en Ubuntu Server y Windows Server

3.

Consultamos el fichero de configuración /etc/webalizer/webalizer.conf y observamos que se

analizará el fichero de logs de accesos del servidor virtual por defecto

Quitamos la extensión .1

4.

Observamos que se ha creado el directorio /var/www/webalizer

Page 87: Apache: instalación y configuración en Ubuntu Server y Windows Server

5.

Lanzamos el programa para que lea el fichero de log y genere el documento html con las

estadísticas.

6.

Desde el cliente windows nos conectamos al servidor /webalizer/index.html

Page 88: Apache: instalación y configuración en Ubuntu Server y Windows Server
Page 89: Apache: instalación y configuración en Ubuntu Server y Windows Server

Conclusión Instalar Apache en Ubuntu Server es más fácil, rápido y sencillo que en Windows Server, Incluso sin poseer una interfaz gráfica. Además en Ubuntu Server no es necesario un servidor DNS, en Windows Server sí.

Webgrafía http://my.safaribooksonline.com/book/operating-systems-and-server-administration/apache/0596529279 http://httpd.apache.org/docs/2.4/ http://en.wikipedia.org/wiki/Apache_HTTP_Server http://en.wikipedia.org/wiki/List_of_Apache_modules