Vous êtes sur la page 1sur 66

LUIS MIGUEL GOMEZ JIMENEZ GRUPO: S22 PRACTICA 4 LINUX SERVIDOR WEB APACHE

PRCTICA 4. LINUX SERVIDOR WEB APACHE


1. Introduccin al protocolo HTTP ----- TEORIA_HTTP.PDF
Internet RFC HTTP: http://tools.ietf.org/html/rfc2616 MIME TYPES: http://www.webtaller.com/maletin/articulos/que-son-mime-types.php TIPOS MIMES: http://www.utoronto.ca/webdocs/HTMLdocs/Book/Book3ed/appb/mimetype.html LISTA DE CABECERAS HTTP 1.1: http://en.wikipedia.org/wiki/List_of_HTTP_header_fields CABECERA AGENTE DE USUARIO: http://es.wikipedia.org/wiki/Agente_de_usuario EJERCICIO 1. HTTP. 1) Visualiza la informacin de las cabeceras de los siguientes servidores webs identificando los parmetros que puedas, con wget -S: http://www.linux-magazine.es/

http://www.debian.org

http://www.linuxtotal.com.mx/index.php?cont=info_admon_017

2) Aportaciones sobre el tema.

2. Servidor web Apache2. http://httpd.apache.org/docs/2.2/es/


Apache es el servidor web ms utilizado en sistemas GNU/Linux y Unix. Los servidores web se usan para el alojamiento de pginas web solicitadas por el cliente a travs de internet desde los navegadores de web, actualmente el servidor apache se encuentra en la versin 2. Viene con las siguientes ventajas y beneficios proporcionados por el software de servidor apache: Estabilidad. Trabaja sobre una amplia gama de plataformas. Extremadamente flexible y modular. Varios sitios alojados en un solo servidor apache. El servidor web ms utilizado en www. DOCUMENTACIN OFICIAL DE APACHE. http://httpd.apache.org/docs/2.2/es/ LINK PARA UBUNTU 10.04: http://library.linode.com/webservers/apache/installation/ubuntu-10.04lucid Para poder instalar apache: # apt-get install apache2

El servicio de apache2 en linux se llama igual que el paquete, es decir, apache2. Al igual que todos los servicios en Debian, dispone de un script de arranque y parada en la carpeta /etc/init.d. Las opciones de ejecucin de que dispone son estas: # /etc/init.d/apache2 {start | stop | restart | reload | forcereload} // Arrancar el servidor Web # /etc/init.d/apache2 start // Rearrancar el servidor Web # /etc/init.d/apache2 restart // Parar el servidor Web # /etc/init.d/apache2 stop o service apache2 stop start Inicia el servicio de apache. stop: Detiene el servicio de apache. restart: Reinicia el servicio de apache. Equivale a un stop, seguido de un start. reload: Recarga los ltimos cambios registrados dentro del servicio de apache. forcereload: Fuerza a realizar una recarga de los ltimos cambios realizados dentro del servicio de apache. Tambin podemos utilizar la utilidad apache2ctl / apachectl: apache2ctl [-k start|restart|graceful|graceful-stop|stop] Con esta herramienta podemos obtener tambin ms informacin del servidor: apache2ctl -t : Comprueba la sintaxis del fichero de configuracin. apache2ctl -M : Lista los mdulos cargados apache2ctl -S : Lista los sitios virtuales. apache2ctl -V : Lista las opciones de compilacin Para comprobar si se ha instalado correctamente el servidor tenemos que arrancarlo, con el comando del apartado anterior, y abrir el navegador escribiendo la direccin: http://localhost. En el navegador debe aparecer una pgina web, que es la que instala por defecto. Por defecto, la carpeta raz del servidor web es la carpeta /var/www. Todos los documentos que se encuentren dentro de la carpeta raz del servidor web, sern accesibles va web. Para acceder va web a la pgina almacenada en la carpeta raz del servidor, desde un navegador debemos acceder directamente con la direccin IP a: http://ip-del-servidor o bien utilizando el nombre del mismo si tenemos el DNS funcionando: http://nombre-del-servidor. Si no tenemos el DNS funcionando, podemos aadir el nombre y la IP en /etc/hosts para resolver localmente. Carpeta raz del servidor web: /var/www Acceso a la web principal: http://ip-del-servidor http://nombre-del-servidor.

CONFIGURACIN DEL SERVIDOR APACHE El fichero de configuracin se encuentra en: /etc/apache2/, y tiene los parmetros bsicos de configuracin del servidor. El archivo contiene una serie de directivas que determina el comportamiento del servidor. Las directivas que no se especifiquen utilizan su valor por defecto. Dentro de este directorio encontraremos varios archivos y directorios: apache2.conf: Dentro de este archivo se encuentra la configuracin del servidor web apache. Incluyeincludes a los dems ficheros. conf.d: Directorio en donde se encuentran otros archivos de configuracin de apache. envvars: Este archivo de configuracin contiene la informacin del usuario, grupo Y PID del servicio de apache. httpd.conf: Este era el archivo de configuracin, ya no se usa, al menos en distribuciones basadas en Debian. Pero en cualquier caso, el fichero de configuracin principal apache2.conf, tiene un include a este fichero, por lo que podra usarse. ports.conf: Archivo de configuracin donde se especifican los puertos de escucha. Por defecto usar l 80 para http y el 443 para https, si est instalado. Para especificar que escuchar otros puertos en todas las interfaces basta con:
Listen 80 Listen 8000

O bien, para indicar que escucha un puerto por una interfaz y otro por otra:
Listen 192.0.2.1:80 Listen 192.0.2.5:8000

mods-available: Directorio donde se encuentran los mdulos que tenemos disponibles para instalar en el servidor apache. Tiene los ficheros .load que tienen todo lo necesario para cargar un mdulo y los .conf que tienen la configuracin bsica para inicializar el mdulo. mods-enabled: Este directorio contiene un enlace dbil a cada mdulo del directorio anterior que est activado en apache. De esta manera se sabe si un mdulo est activado en apache o no. Los enlaces que estn en este directorio sern los mdulos a cargar al iniciar Apache. sites-available: Directorio en donde se encuentran los archivos de configuracin de sitios virtuales.

Dentro de esta carpeta se encuentra un archivo plantilla para sitios web con http, y otro para sitios web con https. Aqu se crearn los archivos de configuracin de sitio necesarios. Por defecto est creado el fichero default con la configuracin del servidor virtual por defecto. sites-enabled: Este directorio contiene un enlace dbil a cada sitio del directorio anterior que est activado en apache. De esta manera se sabe si un sitio est activado en apache o no. ARCHIVO APACHE2.CONF El fichero se puede dividir en tres secciones, si bien, es una organizacin puramente organizativa, no una divisin estricta. - Seccion 1. Directivas globales, donde se definen aspectos de Apache, como el nmero mximo de clientes concurrentes, los timeouts, el directorio donde estn los ficheros de configuracin, etc. - Seccin 2. Directivas de funcionamiento del servidor principal y de todos los servidores virtuales. - Seccin 3. Directivas de configuracin de los servidores virtuales. EJERCICIO 2. INSTALACIN DE UN CLIENTE WEB CHROME EN TU LINUX DESKTOP. Para la instalacin del cliente chrome en Ubuntu desktop he seguido el siguiente enlace. http://proyectosbeta.net/2012/07/instalar-google-chrome-en-ubuntu-12-04/ Resultado:

EJERCICIO 3: INSTALACIN Y CONFIGURACIN APACHE 2 EN DEBIAN/UBUNTU 1) Instala el servidor web Apache e indica el FQDN para que al iniciar el servicio no nos de ningn problema.

2) Qu diferencia hay entre un restart y un reload? restart: Reinicia el servicio de apache. Equivale a un stop, seguido de un start. reload: Recarga los ltimos cambios registrados dentro del servicio de apache.

3) Qu es la opcin graceful?

Esta opcin hace que el proceso padre indique a sus hijos que terminen despus de servir la peticin que estn atendiendo en ese momento (o de inmediato si no estn sirviendo ninguna peticin). El proceso padre lee de nuevo sus ficheros de configuracin y vuelve a abrir sus ficheros log. Conforme cada hijo va terminando, el proceso padre lo va sustituyendo con un hijo de una nueva generacin con la nueva configuracin, que empeciezan a servir peticiones inmediatamente.

4) Comprueba la directiva donde indicamos el puerto de escucha del servidor Escuchar por el puerto 80 por defecto anose que se le instale algn modulo adicional.

5) Comprueba los mdulos cargados en el servidor: mirando en el directorio adecuado y utilizando la herramienta apache2ctl.

6) Comprueba los sitios webs activos en nuestro servidor: mirando en el directorio adecuado y utilizando la herramienta apache2ctl.

EJERCICIO 4. APACHE SIN VIRTUAL HOST El servidor web Apache2.2 se instala por defecto con un host virtual. La configuracin de este sitio la podemos encontrar en: /etc/apache2/sites-available/default

Y por defecto este sitio virtual est habilitado, por lo que podemos comprobar que existe un enlace simblico a este fichero en el directorio /etc/apache2/sites-enabled. Si no necesitamos utilizar la funcionalidad de vitual hosting debemos deshabilitar el sitio virtual: a2dissite default

y podemos coger parte del fichero de configuracin default y aadirlo a la configuracin del servidor web, por ejemplo podemos ponerlo dentro del fichero /etc/httpd.conf: DocumentRoot /var/www <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory>

Reiniciamos el servicio y comprueba que puedes acceder al servidor.

EJERCICIO 5: INTRODUCCIN AL VIRTUAL HOSTING CON APACHE 2.2 El objetivo de esta prctica es la puesta en marcha de dos sitios web utilizando el mismo servidor web apache. Hay que tener en cuenta lo siguiente:

Cada sitio web tendra nombres distintos, cada sitio web compartirn la misma direccin IP y el mismo puerto (80). Queremos construir en nuestro servidor web apache dos sitios web con las siguientes caractersticas: 1. El nombre de dominio del primero ser www.iespjm.com, su directorio base ser /var/www/iespjm y contendr una pgina llamada index.html, donde slo se ver una bienvenida. 2. En el segundo sitio vamos a crear una pgina donde se pondrn noticias por parte de los departamento, el nombre de este sitio ser www.sri.org, y su directorio base ser /var/www/sri. En este sitio slo tendremos una pgina inicial index.html, dando la bienvenida a la pgina del mdulo SRI. Para conseguir estos dos sitios virtuales debes seguir los siguientes pasos: 3) Los ficheros de configuracin de los sitios webs se encuentran en el directorio /etc/apache2/sitesavailable,por defecto hay dos ficheros, uno se llama default que es la configuracin del sitio web por defecto. Necesitamos tener dos ficheros para realizar la configuracin d elos dos sitios virtuales para ello vamos a copiar el fichero default : #cd/etc/apache2/sites-available #cp default iespjm #cp default sri

2)Modificamos el fichero iespjm, donde vamos a aadir la siguiente lnea: ServerName www.iespjm.org Y vamos a modificar dos lneas: DocumentRoot /var/www/iespjm/ <Directory /var/www/iespjm/>

Hago lo mismo para el archivo sri.


No es suficiente crear los ficheros de configuracin de cada sitio web es necesario crear un enlace simblico a estos ficheros dentro del directorio /etc/apache2/sites-enabled, para ello: # cd /etc/apache2/sites-enabled #a2ensite iespjm # a2ensite sri

Ahora creo las carpetas sri y iespjm con sus correspondientes index.html

En el cliente
Edito el archivo /etc/hosts

EJERCICIO 6. PUERTOS DE ESCUCHA 1) Configura apache2 para no usar virtual hosting, y cambia el puerto de escucha del servidor al 8081.

Se puede terner el servidor escuchando por dos puertos el 80 y el 8081? Si 2) Configura apache2 para que use los sitios virtuales del ejercicio 5 anterior, pero modifica la configuracin para que www.iespjm.com sea visible por el puerto 80, y www.sri.com sea visible desde el puero 8081. Archivo /etc/apache2/sites-available/iespjm

ESTRUCTURA DE LOS FICHEROS DE CONFIGURACIN http://httpd.apache.org/docs/2.2/configuring.html Los mdulos pueden ser as activados, o desactivados, segn nuestras necesidades. La gestin de mdulos se realiza as: Ver los mdulos que tenemos activados: # apache2ctl l Para activar un mdulo: # a2enmod modulo (apache 2 enable module) Para desactivar un mdulo: # a2dismod modulo (apache 2 disable module)

EJERCICIO 7. DIRECTIVAS DEL FICHERO APACHE2.CONF Busca en el fichero de configuracin de Apache las siguientes directivas, determina que funcin tienen y el valor que poseen por defecto. Directivas de identificacin del servidor: ServerName Directiva establece el esquema de solicitud, nombre de host y puerto que el servidor utiliza para identificarse. Esto se utiliza al crear direcciones URL de redireccin. ServerAdmin Direccin de correo electrnico que el servidor incluye en los mensajes de error se enva al cliente Directivas de localizacin de ficheros DocumentRoot Directorio que forma la estructura del documento principal visible desde la web. ErrorLog Lugar donde el servidor registra los errores. CustomLog Establece nombre y el formato del archivo de registro. PidFile Presente en el servidor registra el ID de proceso del daemon. ServerRoot Base directorio para la instalacin del servidor. AccessFileName Nombre del fichero de configuracin distribuida Directivas de control de la conexin Timeout Cantidad de tiempo que el servidor esperar para ciertos eventos antes de fallar una solicitud. Sintaxis: TimeOut segundos KeepAlive Permite conexiones HTTP persistentes. MaxKeepAliveRequests Nmero de peticiones permitidas en una conexin persistentes. KeepAliveTimeout Cantidad de tiempo que el servidor esperar para las solicitudes posteriores en una conexin persistente. Otras directivas User Nombre de usuario con el que el servidor responder a las peticiones Group Grupo con el que el servidor atender las peticiones

DefaultType Tipo de contenido MIME por defecto que usar el servidor si no puede determinar el tipo MIME en concreto del documento a servir. LogLevel Controla el nivel de detalle del registro de errores. LogFormat Describe un formato para su uso en un archivo de registro.

EJERCICIO 8. Y ESTRUCTURA DE LOS FICHEROS DE CONFIGURACIN.

1) Las directivas de configuracin de apache2 se pueden aplicar si est definido un determinado parmetro. Para esto se utiliza la directiva <IfDefine>. Busca en algn fichero de configuracin esta directiva. No la he encontrado. 2) Para cargar dinmicamente los mdulos se utilza la directiva LoadModule, bscalos en los ficheros *.load dentro de /etc/apache2/mods-availables. Ms informacin: http://httpd.apache.org/docs/2.2/dso.html

3) Busca en la configuracin una variable de entorno y determina en que fichero estn definidas.

4) La directiva Include nos permite aadir ficheros de configuracin a la configuracin general de apache2. Comprueba qu ficheros son aadidos con esta directiva.

5) Podemos aplicar directivas a partes concretas de nuestro servidor web, para ello estudia las siguientes directivas (Para aprender ms lee Secciones de Configuracin): <Directory>

Se usa para englobar un grupo de directivas que se aplicarn solamente al directorio especificado y a sus subdirectorios. Puede incluir a cualquier directiva cuyo uso est permitido en un contexto <directory>. Directory-ruta puede ser tanto la ruta completa a un directorio, como una cadena de caracteres comodn que use las reglas de equivalencia de los shells de Unix.
<DirectoryMatch>

Se usa para englobar a un grupo de directivas que se aplicarn solamente al directorio (y los subdirectorios de ste) especificado, al igual que <Directory>. Sin embargo, en ese caso la directiva toma como argumento una expresin regular.
<VirtualHost>

Se usan para incluir un grupo de directivas que se aplicarn solo a un host virtual en particular. Cualquier directiva que est permitido usar en un contexto virtual host puede

usarse. Cuando el servidor recibe una peticin de un documento de un host virtual en concreto, usa las directivas de configuracin incluidas en la seccin <VirtualHost>.

Localiza algunas de ellas en los ficheros de configuracin. LOGS Y ERRORES. http://httpd.apache.org/docs/2.2/es/logs.html EJERCICIO 9. Logs.

1) Consulta el fichero /etc/apache2/sites-available/default e indica cul es fichero de logs de errores, qu directiva usa y cul es su nivel de prioridad. Muestra su contenido.

Directiva ErrorLog Nivel de prioridad warning

2)Indica cul es fichero de logs de accesos, qu directiva usa y cul es su formato. Muestra su contenido.

Ruta del fichero log: /var/log/apache2/Access.log Directiva: CustomLog Formato: Combined

3) Estando en el mismo fichero, configura el servidor para que cuando retorne el cdigo ErrorDocument de valor 404 envio el texto Pgina no encontrada en el servidor iespjm.com. Prubalo accediendo a una pgina html que no existe.

4) Modifica ahora el comportamiento anterior para que cuando ese caso se de, se muestre el contenido de no_esta.html creado por ti.

DIRECTORIOS VIRTUALES. Son directorios que estn fuera del directorio raiz DocumentRoot. Se pueden crear con la directiva Alias, y con un enlace simblico dentro del directorio raz (FollowSymLinks) apuntando al otro directorio. EJERCICIO 10. DIRECTORIOS VIRTUALES. 1)Crea un directorio en /home/alumno/redes. Accede con el usuario alumno. Crea un archivo dentro redes.html. Accede como administrador y edita el fichero default y utilizando la sentencia Alias crea un directorio virtual /redes y configralo con la directiva <Directory. Prubalo.

Desde el cliente

2)Crea un directorio en /home/alumno/servicios. Accede con el usuario alumno. Crea un archivo dentro servicios.html. Accede como administrador y crea utilizando un enlace simblico entre la carpeta /var/www/servicios y /home/alumno/servicios. Prubalo.

Ahora creamos en enlace simbolico.

Volvemos a editar nuestro sitio default.

La opcin FollowSymLinks sirve para seguir los enlaces simblicos alojados en el.

Desde el servidor

Desde el cliente.

CONFIGURACIN MODULAR EN APACHE Apache es un servidor modular y el ncleo tiene las funcionalidades bsicas que se pueden ampliar con mdulos adicionales. Cada mdulo se puede configurar con directivas. Existen mltiples mdulos que puedes consultar en http://httpd.apache.org/docs/2.2/mod y en http://modules.apache.org Existen mdulos estticos que se aaden cuando se compila Apache. Y mdulos dinmicos que se cargan dinmicamente cuando se inicia el servidor. Si el servidor se compila con la opcin DSO, entonces se podrn cargar mdulos dinmicos con la directiva LoadModule. La directiva <IfModule > permite especificar que se tendr en cuenta si el mdulo est cargado. EJERCICIO 11. APACHE MODULAR. o existe. 1) Consulta los mdulos estticos (apache2ctl) de la versin precompilada .deb que est instalada en tu Ubuntu y los mdulos dinmicos cargados por defecto.

2) Consulta los mdulos dinmicos en /etc/apache2/mods-enabled. qu tipo de ficheros encuentras?

3) Edita el fichero alias.load y observa cmo se utiliza la directiva LoadModule para cargar el mdulo Comprueba cul es la ruta donde est el cdigo del modulo (archivo .so)

4) Edita el fichero alias.conf, qu encuentras dentro de la directiva <IfModule.

Encontraremos la configuracin del modulo. 5) Muestra de la carpeta modules, los mdulos disponibles para cargar.

6) Con sudo apt-cache search libapache2-mod muestra los paquetes disponibles en los repositorios de Ubuntu que permiten instalar mdulos adicionales de Apache.

7) Comprueba que el mdulo userdir no est habilitado. Desabilitalo, y finalmente vuelve a habilitarlo.

8) Qu ficheros se han creado en el directorio mods-enabled? Reinicia el servidor.

9) Consulta userdir.conf y observa que se han habilitado el uso de directorios personales. cul es el nombre del subdirectorio que pueden crear los usuarios en su directorio home para poner sus pginas personales?

10) Inicia una sesin con el usuario alumno, y vete al subdirectorio creado antes y crea una pgina web personal.htm. Accede ahora a tu navegador con la URL http://10.33.1.2/~alumno/personal.htm

El carcter que hay antes de luis ( Alt Gr + )

11) Indica cmo podras cambiar el nombre del subdirectorio creado por defecto por otro.

12) Activa ahora los mdulos mod_info y mod_status que dan informacin acerca del servidor web y comprobar su funcionamiento.

13) Prueba Redirect.

14) El mdulo rewrite nos va a permitir acceder a una URL e internamente estar accediendo a otra, entre otros cometidos. Activa el mdulo mod_rewrite y emplalo para algn propsito.

RewriteEngine On Para activar el motor del mdulo para este servidor. RewriteOptions Inherit Para aplicar este mdulo al host virtual y no al servidor principal RewriteRule Esta directiva especifica la regla que deseamos configurar.

Al intentar acceder a http://10.33.1.2/index.html me redirecciona automaticamente a:

EJERCICIO 12. CONTROL DE ACCESO POR IP UTILIZANDO LAS DIRECTIVAS ORDER, ALLOW Y DENY 1) Inicia una sesin como administrador y crea un directorio privado en www y dentro crea una pgina privada.html. Edita el fichero de configuracin /etc/sites-available/default y niega el acceso a todos los equipos excepto al ubuntucliente.

Si intento acceder desde localhost:

Si intento acceder desde el cliente Ubuntu desktop como dice la prctica:

2) Comprueba el control de acceso del directorio DocumentRoot en el host virtual default.

Es muy permisivo, permite todas las conexiones.

3) Comprueba el control de acceso del directorio doc en el host virtual default.

EJERCICIO 13. AUTENTIFICACIN BSICA, HTTP BASIC El servidor web Apache puede acompaarse de distintos mdulos para proporcionar diferentes modelos de autenticacin. La primera forma que veremos es la ms simple. Usamos para ello el mdulo de autenticacin bsica que viene instalada de serie con cualquier Apache: mod auth_basic. Consulta la documentacin relativa a AuthName,AurthType y AuthUserFile y Requiere en

http://httpd.apache.org/docs/2.2/mod/quickreference.html 1) Comprueba que el mdulo auth_basic est habilitado mirando el directorio mods-enabled

2) Crea usuarios donde guardars el nombre y clave de los usuarios con el comando: sudo htpasswd c /etc/apache2/passwd alumno1 sudo htpasswd /etc/apache2/passwd alumno2 Una vez creados los usuarios alumno1 y alumno2 les asigno una nueva contrasea:

3) Edita el fichero /etc/sites-available/default y sobre el directorio privado y aade: AuthName Acceso privado AuthType Basic AuthUserFile /etc/apache2/passwd Require user alumno sri alumno

4) Ahora accede a www.iespjm.com/privado para probarlo.

5) Repite el ejemplo para un host virtual tuyo, para una carpeta llamada segura y crea dos usuarios Crea un grupo de usuarios grupoalaumnos que tendr a los usuarios Marta y Jaime. A esta carpeta slo tendr acceso el grupoalumnos y no por ejemplo a marisa.

Para eliminar un usuario borraremos la lnea del usuario que queramos. En mi caso he borrado el usuario Marta y no podr autentificarse en segura.html

EJERCICIO 14. CONFIGURACIN DE .HTACCESS 1) Habilita en /etc/apache2/sites-available/default el uso de este tipo de ficheros permitiendo sobreescribir todas las directivas en el directorio /home/alumno/redes. Reinicia el servidor. Inicia sesin como alumno y crea el fichero .htaccess dentro de la carpeta y aade directivas para permitir el acceso desde todos los equipos que estn en la red 10.33.1.0/24 con allow from. Ojo!, no hace falta poner la directiva <Directory. Sin reiniciar, accede a http://localhost/redes y verifica que es posible acceder.

Al intentar acceder a redes desde localhost y no ser el rango permitido en la imagen de arriba, nos denegar el acceso.

Si intento acceder desde mi cliente Ubuntu desktop con ip 10.33.1.55 me dejar entrar sin ningn problema.

2) Habilita la opcin de listar los ficheros en ese directorio y haz que la pgina entrada.html se visualice por defecto.

3) Hecer que los ficheros txt no sean accesibles.

Edito el nombre del directorio index para que no encuentre entradaaa.html y nos muestre el ndice.

Para hacer que no sea el fichero prueba.txt no sea accesible, abro de nuevo .htaccess y aado las siguientes directivas.

Aqu Vemos como ha dejado de aparecer el fichero prueba.txt

4) Redireccionar a una pgina, por ejemplo cuando entremos en este directorio salte a www.google.es

5) Crear una lista de IPs prohibidas


Modificamos .htaccess para permitir todas las direcciones y luego denegar alguna especifica que queramos.

La ip 10.33.1.55 corresponde a mi Ubuntu desktop cliente el cual tiene denegado el acceso al directorio redes.

6) Crear una pgina personalizada para un tipo de error

EJERCICIO 15. AUTENTIFICACIN TIPO DIGEST La autentificacin tipo digest soluciona el problema de la transferencia de contraseas en claro sin necesidad de usar SSL. El procedimiento, como veris, es muy similar al tipo bsico pero cambiando algunas de las directivas y usando la utilidad htdigest en lugar de htpasswd para crear el fichero de contraseas. El mdulo de autenticacin necesario suele venir con Apache pero no habilitado por defecto. Para activarlo usamos la utilidad a2enmod y, a continuacin reiniciamos el servidor Apache: 1) Crea dos subdirectorios en el host virtual default que se llamen grupo1 y grupo2. Crea los usuarios mencionados arriba con la utilidad htdigest, asignando a cada uno un dominio distinto (domgrupo1 y domgrupo2). Configura los directorios para que al primero grupo1 slo puedan acceder el usuario del dominio domgrupo1, y el directorio grupo2 solo accedan el usuario del dominio domgrupo2. Habilitamos el modulo auth_digest

Creacin de subdirectorios:

Creacin de usuarios con htdigest

Directivas:

EJERCICIO 16. AUTENTICACIN CON USUARIOS DEL SISTEMA

EJERCICIO 17. AUTENTIFICACIN CON MYSQL Siguiendo la explicacin de clase e Internet, configura al menos un sitio web de tu servidor para que su acceso sea mediante autenticacin MySql. Nota: las contraseas de los usuarios se deben guardadas encriptadas. http://www.guia-ubuntu.org/index.php?title=MySQL http://blog.unlugarenelmundo.es/2010/03/18/autenticacion-en-apache-y-ii-digest-y-conmysql/

Seguimos con la instalacin del servidor y el cliente de MySQL Empezamos a instalar mysql client y server y phpmyadmin
sudo apt-get install mysql-server mysql-client -y

Pedir clave para el usuario root y luego la confirmacin de la misma. Ahora podemos instalar todos estos mdulos, mejor que sobre y no que falte.
sudo apt-get install php5-mysql php5-curl php5-gd php5-idn php-pear php5imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl -y

Entre ellos va el soporte para MySQL, cURL, etc. Ahora otro reinicio del servidor web:
sudo /etc/init.d/apache2 restart

Y ahora instalamos la interfaz web para manejar el MySQL y sus bases de datos, phpMyAdmin:
sudo apt-get install phpmyadmin y

Creo la base de datos apache y tabla usuarios.

Creamos dos usuarios para probar:

EJERCICIO 18. HTTPS. - Habilita el mdulo mod_ssl y el puerto de escucha 443.

- Abre y observa el sitio web default_ssl.

a2enmod ssl

- Crea y habilita un sitio web seguro para el dominio seguro.iespjm.com

crea certificados autofirmados, a) aptitude install ssl-cert make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/seguro.crt

b) openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/seguro.pem -keyout /etc/ apache2/ssl/segurokey.key

chmod 600 /etc/ apache2/ssl/seguro*

- Crea un directorio /var/www/seguro donde se sirve el fichero index.html si no se dice nada y no se mostrar ningn fichero si no se solicita. Y podrn acceder todos los usuarios.

- El log de errores ser /var/log/apache2/seguro_error.log y el de sucesos /var/log/apache2/access_seguro.log con formato combined

Agregamos el certificado al sitio seguro.iespjm

POR ULTIMO COMPROBAMOS QUE HEMOS CONFIGURADO TODO PERFECTAMENTE.

EJERCICIO 19. CONFIGURACIN DE ESTADSTICAS CON AWSTATS INDEPENDIENTES PARA TUS DOS SITIOS WEBS DE TU SERVIDOR http://www.lostscene.com/manuales/awstats.php

Editamos el siguiente archivo para decir cual ser nuestro archivo log.

**AQU ME QUEDADO EN ESTE EJERCICIO.


EJERCICIO 20. PROXY WEB PARA TU SERVIDOR APACHE Instala y configura un proxy transparente en tu Linux NAT que gestione tu servidor web. Especifica manual detallado para su instalacin, configuracin y puesta en marcha.

En el archivo /etc/apache2/httpd.conf aadimos las siguientes lneas.

Y este es el resultado:

Vous aimerez peut-être aussi