You are on page 1of 120

Instalacin y configuracin de servidores Web

Agustn Jimnez Guerra

Servicio web
El ms usado en Internet Cliente = Navegador web Servidor = Donde se alojan las pginas web Se especifica el nombre dns del equipo que tiene instalado el servidor web + ruta + nombre de la pgina web solicitada El servidor lee el archivo solicitado donde est alojado y se lo enva al cliente

Servicio web

Servicio web
Pgina web
Archivo escrito en lenguaje de marcas, que contiene texto, hipervnculos, imgenes Hipervnculos = Hiperenlaces Enlazan la pgina con otras partes de la pgina o con otras pginas que estn en el mismo equipo o en otros equipos de la red

Sitio web
Conjunto de pginas webs y archivos complementarios que se distribuyen en Internet o en una Intranet bajo un mismo nombre DNS
www.mec.es Conjunto de pginas webs y ficheros complementarios a los que se accede con ese nombre

Servidor web
Equipo con caractersticas apropiadas para dar servicio a los clientes
Tipo de contenidos Nmero de sitios webs Cantidad de clientes que acceden simultneamente

Elegir:
Cantidad de memora Tipo y cantidad de discos Procesador Ancho de Banda Caractersticas hardware y software

Software web
Apache Web Server Microsoft IIS Sun Java Web System Server,
Libre o propietario Recursos que consumen Posibilidad de administrar varios sitios Control de acceso a los usuarios Seguridad en las transmisiones Integracin de mdulos de servidor: PHP, ASP, Perl,

Estructura WWW
World Wide Web Red global mundial
Creada en el CERN en 1989 por Tim Berners Lee y Robert Caillou Sistema global de documentos enlazados entre s por hiperenlaces

Funcionamiento
Red de documentos enlazados a travs de hipervnculos o hiperenlaces
Cada documento es un nodo de la red

Red de servidores encargados de alojar y distribuir los documentos Programas clientes (navegadores) que muestran los documentos, con los hiperenlaces (clic abre pgina web enlazada)
Google Chrome, Mozilla Firefox, Internet Explorer, Opera, Safari,

Documentos web escritos en lenguajes de marcas (html)


Se le han aadido otros elementos: imgenes, sonidos, animaciones, (hipermedios)

URL
Uniform Resources Locator Localizador uniforme de recursos
Se utiliza para localizar un recurso en Internet o en otra red http://www.ieselrincon.org/index.html
Protocolo://usuario:contrasea@mquina:puerto/ruta_recurso

Elementos de una URL


Elemento URL Protocolo:// Usuario:contrasea@ Descripcin
Protocolo mediante el cual se accede al recurso http (pginas web), ftp (transferencia de ficheros), https (http secure) Opcional. No se suele utilizar Se puede utilizar cuando el servidor controla los accesos al recurso con un nombre de usuario y contrasea Desaconsejado por inseguro (hay otras formas de controlar el acceso Nombre DNS o direccin IP de la mquina donde se encuentra el recurso a localizar Mnimo: http://www.ieselrincon.org Mnimo: protocolo://maquina Puerto del servidor con el que hay que conectar Opcional: No se especifica puerto por defecto del protocolo usado (80, http; 21, ftp) Ruta donde tiene que localizar el recurso el servidor y el nombre del recurso Si no se especifica nombre de recurso por defecto (index.html, index.php, default.html, ) Despus de la ruta Para enviar datos al servidor para que los procese Bsqueda en google, datos de un formulario,

Mquina :puerto /ruta_recurso Otros

http://www.ieselrincon.org/matematicas/ejercicios/segundogrado.html

HTTP
HyperText Transfer Protocol Protocolo de transferencia de hipertexto
Normas para el intercambio de informacin contenida en las pginas web Cliente, servidor Desarrollado desde 1990 por W3C (WWW Consortium) y IETF (versiones 0.9, 1.0, 1.1)

Caractersticas HTTP
Servidor HTTP utiliza el puerto 80 por defecto (puede usar otros puertos) Para establecer una comunicacin HTTP entre cliente y servidor necesita crear previamente una conexin TCP Comunicacin entre cliente y servidor mediante mensajes de peticin y de respuesta codificados en ASCII Cada elemento de una pgina web (documento, imgenes, videos, etc.) se transfiere independientemente con su mensaje de peticin y su mensaje de respuesta

HTTP
El contenido de una pgina web que se transfiere entre un servidor y un cliente est codificado en un lenguaje de marcas que describe como se visualiza la pgina web Lenguaje de marcas Descripcin de la visualizacin de la pgina
HTML: El ms usado Navegador web: Cliente http que interpreta el contenido de una pgina web escrita en HTML o en otro lenguaje para crear una representacin de la pgina para ser visualizada por el usuario

HTTP
Cuando en un navegador se escribe la URL de una pgina web
1. Se solicita al servidor DNS que resuelva el nombre de equipo servidor web o HTTP usado en la URL 2. Obtenida la IP del servidor HTTP, se establece una conexin TCP entre cliente y servidor HTTP 3. Se hace la peticin del documento web al servidor y ste devuelve su contenido en un mensaje de respuesta 4. Si el documento web incluye elementos adicionales como imgenes, sonidos, , hay un proceso de envo peticin/respuesta por cada elemento

Mensajes HTTP
Desde que un cliente HTTP (navegador web) establece una conexin con un servidor HTTP, para descargar una pgina web hasta que la descarga completamente, se desarrolla una sesin HTTP
Normalmente varias transacciones de mensaje peticin/respuesta entre cliente y servidor Cada recurso adicional (imagen, audio, video, etc) que contiene una pgina web un mensaje de peticin/respuesta (recurso solicitado o mensaje de que no se ha podido obtener)

Mensajes HTTP

Mensajes HTTP
Mensaje: Texto en ASCII de 4 campos
Lnea de peticin o respuesta (request-response)
Informacin sobre la peticin o respuesta

Encabezados
Informacin adicional sobre opciones relativas al mensaje Una lnea de encabezado por cada opcin que se especifique

Una lnea vaca


Generada con ENTER Separador entre las lneas de encabezado y el cuerpo del mensaje

Un cuerpo del mensaje


Opcional Mensaje de respuesta Contenido del recurso solicitado

Mensajes HTTP

Mensajes de peticin
Enviado al servidor HTTP desde el cliente La lnea de peticin contiene 3 datos separados por espacio
Mtodo de peticin
Indica la accin que se pretende realizar sobre el recurso indicado en la peticin Mtodos ms utilizados GET y POST URI Uniform Resource Identifier (Identificador Uniforme de Recursos) Identifica un recurso (servicio, pgina, documento, direccin de correo, ) URI puede ser URL (Localizador) es un tipo de URI, URN (Nombre) o ambos Ms completo que URL: permite incluir en la direccin una subdireccin Ruta del recurso dentro del directorio raz del sitio web
/image/escudo.gif recurso escudo.gif que se encuentra en el directorio image, bajo el directorio raz del sitio

Direccin URI del recurso

Versin de HTTP

Encabezados
Las lneas de encabezado indican varias opciones relativas a la peticin Cada encabezado se representa con una lnea de texto con el nombre de la opcin o del encabezado + ; + valor asignado a la opcin

Lnea vaca (separador) Cuerpo de la peticin


Peticin GET Cuerpo vaco Peticin POST Informacin que se enva al servidor

Mensajes de peticin

Mensajes de peticin
Se puede instalar una extensin para que el navegador permita ver el contenido de los mensajes de peticin y respuesta HTTP de las conexiones que se establezcan
Mozilla Firefox Live Http Header Internet Explorer IEWatch Google Chrome Herramientas para desarrolladores / Network

Mtodos y encabezados de los mensajes de peticin


El mtodo de una peticin HTTP indica la accin que se quiere realizar sobre el recurso objeto de la peticin Mtodos en la versin 1.0 de HTTP
GET
El cliente solicita que el servidor le enve una representacin del recurso indicado en la peticin Representacin = Contenido del archivo correspondiente al recurso Clic en un enlace web o escribir una URL en el navegador Se enva al menos un mensaje de peticin con el mtodo GET

POST
El cliente enva informacin al recurso indicado del servidor para que sea procesada por una aplicacin Normalmente, al rellenar un formulario y Enviar En el cuerpo del mensaje se enva la informacin a procesar

HEAD
Se solicita al servidor que enve solamente los encabezados correspondientes a la peticin del recurso Similar a GET pero enviando slo los encabezados y no el contenido Utilizado por los navegadores, p.e., para saber si una pgina web que tienen almacenada en cach ha sido actualizada en el servidor

Mtodos y encabezados de los mensajes de peticin


Mtodos en la versin 1.1 de HTTP (los 3 de la 1.0) + 5 nuevos

Mtodos y encabezados de los mensajes de peticin

Mtodos y encabezados de los mensajes de peticin


Los encabezados de una peticin permiten indicar opciones relativas a la peticin
Encabezado Host User-Agent Accept Accept-Language Significado
Equipo al que se enva la peticin Nombre y versin del cliente (navegador) y del Sistema Operativo Tipo de contenido que acepta el navegador Idiomas que espera el navegador en las pginas recibidas

Accept-Enconding Sistema de codificacin que espera el navegador para el recurso a recibir Accept-Charset Referer Cookie
Conjunto de caracteres que espera recibir el navegador URL desde donde se origin la peticin (URL de la pgina que contena el enlace) Contenido de la cookie almacenada en el equipo cliente y relativa al sitio web al que se hace la peticin

Mensajes de respuesta
Enviados por el servidor HTTP a clientes HTTP en respuesta a una peticin La lnea de peticin contiene 3 datos separados por espacio
Versin de HTTP Cdigo de respuesta o cdigo de estado
Valor numrico que representa como ha sido recibida y procesada la peticin a la que se est respondiendo

Descripcin de respuesta o descripcin de estado


Frase corta que describe lo que se est indicando con el cdigo de respuesta Cada cdigo tiene una descripcin

Encabezados
Las lneas de encabezado indican varias opciones relativas a la respuesta Cada encabezado se representa con una lnea de texto con el nombre de la opcin o del encabezado + ; + valor asignado a la opcin

Lnea vaca (separador) Cuerpo del mensaje


El servidor enva el contenido del recurso que se le ha solicitado (p.e.: cdigo HTML de una pgina web)

Mensajes de respuesta

Encabezados de respuesta HTTP


Encabezado Date Server Content-Lenght Content-Language Content-Encoding Connection Significado Fecha y hora en que ha comenzado el envo del recurso solicitado Nombre del software servidor Tamao en bytes del cuerpo del mensaje Cdigo del idioma en que est escrito el recurso que se enva en el cuerpo del mensaje Sistema de codificacin que se utiliza en la representacin del recurso dentro del cuerpo del mensaje Indica si el servidor mantiene la conexin TCP para las siguientes transacciones desde el cliente Keep-alive Mantiene la conexin Close Cierra la conexin (si el cliente tiene que enviar una nueva peticin HTTP tendr que solicitar previamente una nueva conexin TCP)

Cdigos de respuesta
Un cdigo de respuesta o cdigo de estado
N de 3 cifras que se incluye en la lnea de respuesta de un mensaje de respuesta HTTP Sirve para indicar si una peticin se ha recibido y atendido correctamente o si se ha producido un problema que haya alterado una normal recepcin y atencin de la peticin 1 dgito Representa un grupo de respuestas
De forma general, el tipo de respuesta

2 y 3 dgito Especificar la respuesta concreta dentro del grupo 200 Para una peticin GET indica que se est respondiendo con una respuesta que incluye el recurso solicitado 201 Indica que se ha creado en el servidor el recurso solicitado

Cdigos de respuesta
Grupos de Descripcin cdigos 1xx
Respuesta informativa Indica al cliente que ha recibido la peticin y se esta continuando Respuesta provisional, hay que realizar una nueva transaccin HTTP (respuesta no definitiva) No se aconseja que los servidores enven estas respuestas Peticin correcta Peticin recibida, aceptada y procesada correctamente en el servidor Redireccin Se le indica al cliente HTTP que tiene que realizar alguna accin adicional para que se pueda resolver completamente la peticin que ha realizado Errores del cliente Se recibi una peticin con una sintaxis errnea o no se ha podido procesar la peticin

2xx 3xx 4xx

5xx

Error de servidor Se ha producido un error en el servidor que le ha impedido atender y procesar la peticin

http://es.wikipedia.org/wiki/Anexo:C%C3%B3digos_de_estado_HTTP

Tipos MIME
El protocolo HTTP transmite la informacin en cdigo ASCII (fotos, videos, ?) MIME (Multipurpose Internet Mail Extensions)
Extensiones multipropsito de Correos de Internet Establece un conjunto de especificaciones para que se puedan enviar varios tipos de archivo mediante correo electrnico En principio, orientado a ser usado en email Se usa tambin con el protocolo HTTP

Se pueden transmitir multitud de tipos de archivos siempre que servidor y cliente soporten MIME MIME establece una serie de encabezados que se pueden aadir a los ya existentes para HTTP, y que se pueden usar en las lneas de encabezado de los mensajes HTTP
Mime-version: Versin de MIME (actual 1.0) Content-type: Tipo de MIME para un archivo enviado
jpg tipo MIME image/jpeg

Si un servidor HTTP enva un archivo sin especificar el tipo MIME asociado, puede ocurrir que el navegador web no abra el archivo correctamente porque desconozca la aplicacin que tiene que abrirlo

Servidores Web
Servidor Apache Descripcin
Es el ms usado en Internet Es software libre, gratuito y multiplataforma (Unix, Linux, Windows, Netware, )

Microsoft IIS
Sun Java System Web Server Tomcat

Software propietario (slo en Windows)


Usado principalmente en sistemas Sun Actualmente: software libre, gratuito y multiplataforma Es software libre, gratuito y multiplataforma Desarrollado por Apache Software Foundation, pero usa una tecnologa distinta a la de Apache Permite trabajar con algunas pginas dinmicas con las que no puede trabajar Apache Puede trabajar como un servidor de aplicaciones

Ngnix
Lighthttp Cherokee

Software libre y gratuito para sistemas Unix, Linux, Windows Consume muy pocos recursos
Consume muy pocos recursos Fcil de configurar (herramienta grfica) Software libre, gratuito y multiplataforma Rpido y muy funcional Software libre, gratuito y multiplataforma

Servidor Apache
Instalacin
apt-get install apache2 Desde el gestor de paquetes Synaptic (paquete apache2) Paquete de ayuda: apt-get install apache2-doc

Probar servidor
http://localhost http://127.0.0.1 Carpeta de raz del sitio: /var/www Fichero por defecto (pgina de inicio del sitio): index.html Desde otro equipo
http://192.168.3.100 http://www.ieselrincon.org

Comprobar que est funcionando


/etc/init.d/apache2 status

Arranque y parada de Apache


Accin Comprobar el estado del servicio Detener el servicio Iniciar el servicio Reiniciar el servicio Accin Comprobar el estado del servicio Comando /etc/init.d/apache2 status /etc/init.d/apache2 stop /etc/init.d/apache2 start /etc/init.d/apache2 restart Comando service apache2 status

Detener el servicio
Iniciar el servicio Reiniciar el servicio Accin Windows Comando

service apache2 stop


service apache2 start service apache2 restart

Se instala programa monitor que permite iniciar y parar el servicio

Arranque automtico al inicia sistema


El servidor apache arrancar al iniciar el sistema?
Nivel de ejecucin actual
runlevel

runlevel 2
ls /etc/rc2.d | grep apache Servicios que arrancan o no de forma automtica en el runlevel 2 que se llamen apache

Configuracin inicial Apache


Archivos de configuracin
Directorio: /etc/apache2 /etc/apache2/apache2.conf
Fichero de configuracin principal Directivas que establecen como debe configurarse el servidor Las directivas include indican que se incluyan en apache2.conf el contenido del archivo indicado en la directiva include /etc/apache2/httpd.conf //Directivas editadas administrador include /etc/apache2/ports.conf //Puerto por el que atiende servidor

/etc/apache2/httpd.conf
Despus de la instalacin est vaco Es aconsejable que se edite este archivo para aadir, modificar o eliminar directivas generales del servidor, en lugar de editar apache2.conf Se sabe cuales son las directivas editadas por el administrador

Carpeta sites-available
Archivos de configuracin para servidores virtuales

Carpeta mods-available y mods-enabled


Aadir mdulos al servicio HTTP

Configuracin inicial Apache

Servidor Apache: Directorio raz del sitio


Al instalar se crea la estructura inicial de un sitio web
/var/www Todas las pginas web y los recursos incluidos en las pginas web deben estar ah El documento ndice o documento por defecto del sitio web index.html
http://www.ieselrincon.org index.html http://localhost index html de la carpeta raz del sitio http://localhost/carpeta index.html de la carpeta que cuelga de la raz del sitio = /var/www/carpeta http://local/carpeta/prueba.html se carga el documento prueba.html que est en la carpeta y cuelga de la raz

Configuracin bsica Apache


Editar el fichero de configuracin principal
/etc/apache2/apache2.conf

Editar alguno de los ficheros que incluye el principal Directivas de configuracin bsica
http://httpd.apache.org/docs/2.0/es/mod/directi ves.html

Configuracin bsica Apache


Directiva
ServerName

Descripcin
Nombre de equipo y puerto que usa el servidor para identificarse ante los clientes

Ejemplo de uso
ServerName www.aulasri.com:80

ServerRoot
Listen Timeout KeepAlive DocumentRoot DirectoryIndex

Carpeta en la que se ha instalado el servidor No es la carpeta da archivos de configuracin


Puertos del servidor en los que escucha a los clientes Opcional: IP de los adaptadores de red que utiliza Mximo tiempo en segundos que el servidor espera un nuevo mensaje de un cliente para no cerrar la conexn Indicar que se mantenga (on) o no (off) una conexin con un cliente para varias transacciones Carpeta raz que contiene todos los archivos del sitio web Nombres de las pginas web ndice que puede entregar el servidor por defecto cuando en la peticin HTTP la URL contiene un nombre de carpeta Direcciones IP y puerto en los que el servidor recibir peticiones para sitios web virtuales basados en nombre Si se usa esta directiva Definir los sitios virtuales dentro de una directiva <VirtualHost> </VirtualHost>

ServerRoot /usr/local/apache
Listen 80 Listen 192.168.3.100:8080 Timeout 300 KeepAlive on KeepAlive off DocumenRoot /var/web/ DirectoryIndex index.html home.html index.php default.html NameVirtualHost *:80

NameVirtualHost

Integracin del sitio web en la zona DNS


Para acceder al servidor desde cualquier cliente mediante un nombre DNS
Tener servidor DNS configurado (nombre del equipo servidor web) Si no acceso al servidor por IP http://192.168.3.100 www.aulasri.com. IN A 192.168.3.100 pc1.aulasri.com. IN A 192.168.3.100 www.aulasri.com. IN CNAME pc1.aulasri.com.

Integracin del sitio web en la zona DNS

Integracin del sitio web en la zona DNS


Si muchos clientes acceden a la vez a un servidor web
Aumento de la carga de trabajo del servidor tiempo Poner varios servidores web para el mismo sitio y repartir la carga entre los servidores
Se puede repartir la carga mediante registros SRV en la zona DNS del sitio s1.aulasri.com. IN A 192.168.3.100 s2.aulasri.com. IN A 192.168.3.101 _http._tcp_.www.aulasri.com. IN SRV 0 60 80 s1.aulasri.com. _http._tcp_.www.aulasri.com. IN SRV 0 40 80 s2.aulasri.com.
Dos servidores web s1 y s2, con sus IP, que usan el puerto 80 de escucha 60% de la carga para s1, 40% de la carga para s2

Navegadores web
Navegador web Cliente http o cliente del servicio web
Programa cliente web que interpreta los documentos recibidos (generalmente, HTML), como pginas web y los presenta en pantalla mostrando enlaces (usuario interacta para acceder a otros documentos web) Navegador presenta en pantalla: marcos, vietas, colores de fondo, imgenes,

Navegadores web
Navegador Interner Explorer Win Lin SI Comentario
Facilita y acelera la interaccin con otros servicios

NO Muy utilizado al estar integrado en los sistemas Windows

Mozilla Firefox
Google Chrome Opera

SI
SI SI

SI
SI SI

Dispone de una gran cantidad de complementos y extensiones que se pueden instalar para realizar tareas adicionales
Ms reciente aparicin Muy funcional y fcil de usar Muy innovador Incluye una funcin de navegacin turbo Acelerar el acceso a algunas pginas web Apariencia esttica muy cuidada

Apple Safari Konqueror Ephipany

SI NO NO

NO Incluido en los SO apple SI SI


Interfaz muy simple Navegacin muy rpida Adaptado para el escritorio GNOME

Parmetros de apariencia
Sirven para cambiar la interfaz de usuario del navegador
Mozilla Firefox en Ubuntu Men Ver
Mostra o no barra de herramientas Aadir o quitar elementos en las barras de herramientas Mostrar o no un panel lateral en el navegador

Men Editar/Preferencias (Windows: Men Herramientas/Opciones


Ficha General
Mostrar o no una pgina inicial y cul Configurar como se desarrollarn las descargas

Ficha Pestaas
Si las ventanas nuevas se abren en nuevas pestaas Si se advierte cuando se van a cerrar varias pestaas, etc.

Ficha Contenido
El tipo, tamao y color de la letra predeterminada y de los enlaces Idioma preferido para ver las pginas web

Parmetros de apariencia

Parmetros de uso
Configurar las acciones que se realizan cuando el navegador est navegando Los sistemas de seguridad y privacidad que se aplican Los complementos que se aaden al navegador Men Editar/Preferencias (Windows: Men Herramientas/Opciones)
Ficha Aplicaciones
Establecer lo que se realiza con cada contenido incluido en una pgina web P.e.: Que se hace por defecto con un archivo de audio (.mp3) Guardarlo, abrirlo con un determinado reproductor de audio, abrirlo con un complemento de Firefox, preguntar que se desea realizar

Ficha Privacidad
Establecer si Firefox debe o no recordar un historial de navegacin Hacer una configuracin personalizada del historial

Ficha Seguridad
Establecer bloqueos sobre sitios considerados peligrosos Advertir cuando un sitio intenta instalar complementos en nuestro equipo Poltica de uso de contraseas para acceso a sitios que la requieran

Ficha Avanzado
Establecer si Firefox se conecta a la red mediante un Proxy o no Si se buscan actualizaciones de Firefox y la operacin que se en realiza en su caso Que tcnicas de cifrado y certificados se usan para acceder a sitios seguros

Complementos
Son software que tratan de ampliar o modificar la funcionalidad de un navegador Firefox permite agregar de forma sencilla una gran variedad de complementos Men Herramientas / Complementos
Extensiones
Sirven para que a travs del navegador se realicen nuevas funciones Live http headers Permite que se puedan capturar las cabeceras de todos los mensajes http

Apariencia
Instalar nuevos temas que modifican la apariencia general de firefox

Pluggins
Para que se puedan abrir correctamente determinados tipos de archivos

Herramientas grficas de configuracin


Facilitan la configuracin y administracin de Apache
Herramienta
rApache netLoony ApacheMon Apache Admin System-config-httpd Yast2

S.0.
L L/W W W L

Comentario
Herramienta especfica para configuracin de Apache Herramienta especfica desarrollada en Java para configuracin de Apache Herramienta especfica para controlar y monitorizar Apache Herramienta especfica para configuracin de Apache Herramienta especfica para configuracin y control de Apache En distribuciones Red Hat y Fedora

Suse Paquete de herramientas que puede incluir el mdulo de configuracin de Apache En distribuciones Suse Linux W Herramienta administrativa para configurar y controlar el servidor web IIS Integrada dentro de S.O. Windows

Herramientas Adm. IIS

Lighthttpd

L/W

Herramienta de configuracin del servidor web lighthttpd

Webmin
Instalar apache / Entrar en webmin / Refresh modules
https://localhost:10000 (root, qwerty)

Aparece el mdulo de administracin y control del servidor web Apache


Servidores / Servidor web Apache

Webmin

Configuracin del mdulo Configurar aspecto interfaz de trabajo y configuracin del


sistema Apache (rutas y nombres delos archivos de configuracin de Apache, comandos de control del servicio, ) Buscar documentos Ayuda sobre Apache web server Start Server, Stop Server, Aplicar cambios Iniciar, detener y reiniciar el servicio con los cambios realizados

Webmin: Module Config


Module Config

Webmin
En la ventana principal 3 fichas
Global configuration
Configurar parmetros globales de funcionamiento del servicio

Existing Virtual Host


Lista de todos los sitios web que administra el servidor Inicialmente dos elementos
Servidor por defecto: Configuracin para el nico sitio web cuando no se permiten sitios virtuales Configurar sitio web principal si hay sitios virtuales

Cuando se aadan ms sitios web o sitios virtuales aparecern

Create Virtual Host


Crear un nuevo sitio web virtual Para que el servidor web pueda administrar otros sitios web

Webmin

Configuracin del mdulo Configurar aspecto interfaz de trabajo y configuracin del


servicio Apache desde webmin Buscar documentos Ayuda sobre Apache web server Start Server, Stop Server, Aplicar cambios Iniciar, detener y reiniciar el servicio con los cambios realizados

Webmin: Configuracin Global Apache

Webmin: Configuracin Global Apache


Lmites y procesos
Permite establecer limitaciones sobre el tamao de los mensajes HTTP de peticin N de procesos que puede mantener en ejecucin simultneamente en el servidor Direcciones IP y puertos por los que escucha el servidor Puede establecerse para todos los sitios o particularizarse para cada sitio virtual Mostrar, editar o aadir tipos MIME con los que trabaja el servidor Seleccionar el usuario que ejecuta por defecto el servicio y el grupo al que pertenece Configura parmetros (p.e.: informacin que enva el servidor en los mensajes de respuesta HTTP Configuracin CGI (contenidos dinmicos) Crear archivos .htaccess en carpetas de un sitio web (establecer opciones sobre esas carpetas Listado de mdulos disponibles para Apache, indicando si estn o no activados actualmente Permite activarlos y desactivarlos Escribir parmetros que se le pasan al servicio cuando este es iniciado (se guardan en los archivos de configuracin Mostrar o modificar el contenido de los archivos de configuracin Despus de hacer una configuracin con webmin Interesante mirar contenido de archivos de configuracin

Redes y direcciones Tipos MIME Usuarios y grupos Varios Programas CGI Archivos de opciones de Por-directorio Configurar mdulos de Apache Editar parmetros definidos Editar archivos de configuracin

Webmin: Configuracin servidor principal


Establecer parmetros de configuracin para el sitio web principal
Servidor Apache / Existing Virtual Host / Servidor por defecto

Servidor principal
El que atiende las peticiones de los clientes web cuando no se han configurados servidores virtuales por nombre Cuando se instala Apache se configuran los servidores virtuales por nombre
Las opciones que se configuran aqu no tendrn ningn efecto, salvo que se desactiven los servidores virtuales por nombre

Webmin: Configuracin servidor principal

Webmin: Configuracin servidor principal


Redes y direcciones
Nombre de mquina del servidor (ServerName), nombre DNS con el que se accede al sitio Direccin de correo del administrador del servidor (ServerAdmin)

Alias y redireccionamiento
Redirigir las peticiones de un cliente HTTP sobre un archivo o carpeta haca otro archivo o carpeta (incluso puede encontrarse fuera del sitio web)

Archivos de bitcora
Especificar archivo que registra los errores del servicio

Opciones de documento
Especificar la carpeta raz donde se almacena el sitio web principal Por defecto /var/www (DocumentRoot) Establecer el nombre de los archivos de configuracin de directorios o carpetas (.htaccess)

Indizado de directorio
Declara los archivos ndice del sitio, pginas por defecto (DirectoryIndex) Establecer opciones relativas a estos archivos

Mostrar directivas
Las que corresponden a las opciones de configuracin del servidor por defecto

Webmin: Opciones de servidor virtual


Servidor Apache / Existing Virtual Hosts / Servidor Virtual
Por defecto al instalar Apache se configura servidores virtuales por nombre Se establece una configuracin para un primer servidor virtual por nombre
En principio, atiende todas las peticiones web realizadas por clientes al servidor Apache

La configuracin que se establezca configura un sitio web en el servidor al que se accede desde un cliente mediante:
http://nombre_DNS_Servidor http://direccin_IP_Servidor Nombre_DNS: cualquiera de los nombres DNS que estn registrados para el servidor en la zona DNS a la que pertenezca

Al crear servidores virtuales por nombre nuevos


Cada servidor virtual gestionar un sitio virtual, al que se acceder por uno solo de los nombres DNS del equipo

Webmin: Opciones de servidor virtual

Webmin: Opciones de servidor virtual


Ventana Opciones de servidor virtual
Prcticamente lo mismo que la ventana de Opciones de configuracin para servidor por defecto Parte inferior ventana:

Webmin: Opciones de servidor virtual


Direccin y puerto
Direccin IP y puerto en los que el servidor escucha las peticiones de los clientes Por defecto: Escucha en todas las direcciones IP (todos sus adaptadores de red)

Raz de documentos
Carpeta raz del sitio web Debe existir previamente

Nombre del servidor


Nombre con el que el servidor se identifica ante sus clientes

Todos los cambios realizados en servidor virtual modifican el archivo de configuracin de servidor virtual
/etc/apache2/sites-available/default //este fichero por defecto

Webmin: Opciones de servidor virtual


Probar
Poner una carpeta distinta como carpeta raz del sitio Poner dos pginas webs sencillas Conectarse:
http://IP http://nombre_DNS_servidor http://nombre_DNS_servidor/fichero.html http://nombre_DNS_servidor/subcarpeta/fichero.html

Mdulos de Apache
Activacin y configuracin de mdulos adicionales para proporcionar nuevas funcionalidades
Acceso a espacio web (carpetas) personal de usuarios (userdir) donde podrn guardar sus archivos Establecer sistemas de control de acceso al sitio Enlazar con programas que interpretan pginas webs dinmicas (PHP, ASP, )

El software servidor web apache est construido mediante mdulos


Algunos de estos mdulos son el ncleo del servidor (lo dota del funcionamiento bsico) (core) Otros vienen incluidos en la distribucin de Apache Se pueden aadir otros mdulos no incorporados

Los mdulos de Apache deben estar compilados para el SO que corresponda a la instalacin del servidor web Apache Debian/Ubuntu Mdulos instalados en: /usr/lib/apache2/modules/
Extensin .so Los mdulos adicionales son cargados dinmicamente cada ver que se inicia el servidor Deben estar activados y configurados correctamente

Mdulos de Apache
ls -al /usr/lib/apache2/modules http://httpd.apache.org/docs/2.0/es/mod/

Instalacin y activacin mdulos


Mdulos disponibles: Los instalados Mdulos activados: Los que carga Apache Instalacin del mdulo
apt-get install paquete_del_mdulo

Administracin del mdulo


/etc/apache2/mods-available
Carpeta con los mdulos disponibles Incluye archivo de carga .load para cada mdulo disponible Algunos mdulos Archivo de configuracin del mdulo .conf
Directivas para una configuracin bsica del mdulo

/etc/apache2/mods-enabled
Enlaces simblicos a los archivos de la carpeta mods-available Contiene enlace slo a los archivos de los mdulos que estn activados

Instalacin y activacin mdulos


Mdulos disponibles ls -al /etc/apache2/mods-available Mdulos activados ls -al /etc/apache2/mods-enabled

Instalacin y activacin mdulos


En el archivo principal de configuracin /etc/apache2/apache2.conf
Hay dos directivas para que se incluyan los contenidos de los archivos de carga y de configuracin de todos los mdulos activados Include mods-enabled/*.load Include mods-enabled/*.conf Cada archivo de carga contiene una directiva load (para que se cargue el mdulo cuando se inicia el servidor)
LoadModule userdir_module /usr/lib/apache2/modules/mod_userdir.so

Directiva load para cargar el archivo userdir.load para el mdulo userdir

Mdulo: /usr/lib/apache2/modules/mod_userdir.so Archivo de carga: /etc/apache2/mods-available/userdir.load


Contenido: LoadModule userdir_module /usr/lib/apache2/modules/mod_userdir.so

Instalacin y activacin mdulos


Activar mdulo
a2enmod userdir //userdir = nombre del mdulo

Desactivar mdulo
a2dismod userdir

Los mdulos deben estar disponibles y el archivo de carga debe existir en la carpeta mods-available Al activar se crean los enlaces necesarios en la carpeta /etc/apache2/mods-enabled Tras activar el mdulo Reiniciar el servidor

Configuracin mdulos
Editar fichero de configuracin del mdulo
/etc/apache2/mods-available/modulo.conf

userdir.conf <IfModule mod_userdir.c> UserDir public_html UserDir disabled root

//Cada usuario del sistema puede tener dentro de su carpeta personal de usuario /home/usuario, una carpeta llamada //public_html donde puede guardar documentos web para su espacio web personal dentro del dominio //El usuario root no puede disponer de este espacio adicional

<Directory /home/*/public_html>

//Esta directiva establece un conjunto de directivas aplicables a todos las carpetas de nombre //public_html, dentro de cualquier carpeta personal de usuario /home/*

AllowOverride FileInfo AuthConfig Limit Indexes Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS> Order allow,deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny,allow Deny from all </LimitExcept> </Directory> </IfModule> Estas son las directivas a tener en cuenta para configurar el servidor si el mdulo est instalado Cada usuario puede guardar en su carpeta public_html documentos html, archivos de imagen, de video, para las pginas web de su espacio personal

Uso mdulos
Da nueva funcionalidad al servidor userdir
Permite que cada usuario de un sistema Linux pueda crear en su carpeta personal del sistema /home/usuario, una carpeta public_html, que ser carpeta raz para su espacio web personal en el sitio web En esa carpeta puede organizar todos los archivos de su espacio web Acceso: http://www.aulasri.com/~usuario/pagina.html ~ Simboliza la ruta /home Se puede crear un alias al usuario
En /etc/apache2/sites-available/default Alias /usuario/ /home/usuario/public_html Reiniciar el servidor http://www.aulasri.com/usuario/pagina.html

Webmin: Configuracin mdulos


Servidor web apache / Global Configuratioin Icono Configure Apache Modules
Vemos toda la lista de mdulos disponibles y cuales estn activados Seleccionar mdulo a activar / Botn Enabled Selected Modules P.e.: userdir Configurar un alias
agustin en lugar de ~agustin Configuracin del servidor virtual
Opciones de Servidor Virtual / Alias y redireccionamientos De: /agustin/ Para:/home/agustin/public_html/ en alias de directorio de documento Cuidado: De: /agustin Para:/home/agustin/public_html/

Crear en /home/usuario/public_html Escribir una pgina: prueba.html o index.html Entrar: http://www.aulasri.com/~agustin/prueba.html Entrar: http://www.aulasri.com/~agustin Entrar: http://www.aulasri.com/agustin/prueba.html Entrar: http://www.aulasri.com/agustin

Webmin: Configuracin mdulos

Webmin: Configuracin mdulos

Webmin: Configuracin mdulos

Servidores virtuales
Permite que un mismo servidor web pueda trabajar como servidor para varios sitios web Un servidor apache administre los sitios
www.ieselrincon.org www.laspalmas.com www.clubinformatico.es

Las empresas de hosting usan los servidores virtuales para alojar varios sitios web

Servidores virtuales
Tipos
Basado en direcciones IP
Por cada direccin IP del equipo servidor se tendrn un servidor virtual Se necesitan varios adaptadores de red (NIC) O crear varias interfaces virtuales de red sobre un mismo adaptador
Dar una IP a cada una de las interfaces virtuales

Basado en puertos
El servidor web utilizar un puerto de escucha por cada servidor virtual Uno escucha por el puerto 80, otro por el 8080, otro 8081, otro por el 443 (servidor web seguro https),

Basado en nombres
El servidor web puede alojar varios sitios web pertenecientes a distintos dominios Utiliza para todos ellos la misma direccin y el mismo puerto

Servidores virtuales
Basados en puerto (configurando ficheros a mano)
Asegurarse que los puertos estn libres
netstat ano

Ejemplo de host virtual


Listen 40080 <VirtualHost 192.168.1.100:8080> ServerAdmin agustinjg@gmail.com DocumentRoot /sitio1puerto ServerName www.sitio1.com ErrorLog logs/www.sitio1.com-error_log CustomLog logs/www.sitio1.com-access_log common </VirtualHost>

Se puede copiar el fichero /etc/apache2/sites-available/default para cada nuevo host virtual y modificarlo para adaptarlo
cd /etc/apache2/sites-available cp default sitio1puerto

Habilitar el host virtual enlace simblico correspondiente en /etc/apache2/sites-enable


ln -s /etc/apache2/sites-available/sitio1puerto /etc/apache2/sites-enable/sitio1puerto

Comprobar funcionamiento
http://192.168.1.100:8080 http://192.168.1.100:8081 http://192.168.1.100:8082 /usr/sbin/apache2ctl -S

Comprobar configuracin de los host virtuales con la opcin -S del demonio de apache

Servidores virtuales
Basados en nombre
Por defecto, al instalar apache queda configurado para que se puedan utilizar S.V. basados en nombre /etc/apache2/ports
NameVirtualHost *:80 Se pueden crear servidores virtuales basados en nombre, escuchando a los clientes en cualquiera de las direcciones IP del equipo servidor Apache y en el puerto 80 NameVirtualHost 192.168.3.100:80

Webmin: Creacin de un servidor virtual


Webmin / Servidor Apache / Create Virtual Host
Especificar nombre carpeta raz del sitio
/var/www/sitio1

Nombre del servidor virtual (nombre del sitio)


www.aulasri.com

Aparece un icono para ese servidor virtual (Existing Virtual Host) Clic en el icono Configuracin del servidor virtual Reiniciar servidor Apache

El nombre del servidor virtual debe ser resuelto por algn servidor DNS
Debe resolver la zona correspondiente Debe resolver el nombre del equipo con la IP correspondiente

Crear los archivos html del sitio


Comprobar funcionamiento

Webmin: Creacin de un servidor virtual

Webmin: Creacin de un servidor virtual

Webmin: Creacin de un servidor virtual

Webmin: Creacin de un servidor virtual


Al crear el servidor virtual
/etc/apache2/sites-available
Se crea un enlace simblico al archivo de configuracin del servidor virtual Archivo de configuracin para el servidor virtual
www.aulasri.com.conf

Webmin: Creacin de un servidor virtual


<VirtualHost *:80> DocumentRoot /var/www/maspalomas ServerName www.maspalomas.org <Directory "/var/www/maspalomas"> allow from all Options +Indexes </Directory> </VirtualHost>

Configuracin de un servidor virtual


Webmin o editando archivo de configuracin SV Webmin
Existing Virtual Host / Nombre SV /
Aparece una ventana de configuracin igual que la de Opciones de servidor virtual

/etc/apache2/sites-available/www.aulasri.con.conf

Configuracin de un servidor virtual


/etc/apache2/sites-available/www.aulasri.con.conf
<VirtualHost *:80> // El servidor virtual escucha las peticiones de los clientes en el puerto 80 de todos los adaptadores de red DocumentRoot "/var/www/aulasri //Aloja los archivos del sitio en esta carpeta ServerName www.aulasri.com //Servidor virtual para el sitio www.aulasri.com <Directory "/var/www/aulasri"> //Dentro directiva directory se configura el comportamiento de la carpeta
correspondiente

allow from all Options +Indexes </Directory> </VirtualHost>

En este archivo podemos modificar, aadir o eliminar directivas Si ser cambia Reiniciar apache

Configuracin de un servidor virtual


NameVirtualHost *:80 <VirtualHost *:80> ServerName www.domain.tld ServerAlias domain.tld *.domain.tld DocumentRoot /www/domain </VirtualHost> <VirtualHost *:80> ServerName www.otherdomain.tld DocumentRoot /www/otherdomain </VirtualHost>

Utilizacin de un servidor virtual


Despus de configurado SV para un sitio web
Aadir archivos (contenidos) a la carpeta raz del sitio Carpetas para imgenes, videos, estilos,

Cuando se aaden contenidos al sitio no hay que reiniciar el servidor Probar funcionamiento:
http://www.aulasri.com/pagina.html El servidor DNS debe resolver el nombre
aulasri.com Esa zona debe tener registrado el nombre del servidor con su IP

Autentificacin y control de acceso


Sistema de autentificacin
Verifica la identidad de un usuario para dejarle acceder o no a un servicio Identificacin del usuario para acceder a algunos contenidos del sitio web
Nombre y contrasea Si son vlidos se enva al navegador la pgina web solicitada Si no Respuesta HTTP de error por fallo autentificacin Tambin se pueden usar certificados en lugar de nombre y contrasea

Autentificacin y control de acceso


Control de acceso
Comprueba la identidad del ordenador cliente que solicita un recurso, y establece limitaciones sobre el acceso al recurso
En funcin de la identificacin del ordenador Sobre un mismo recurso se puede establecer:
Sistema de control de acceso y Sistema de autentificacin

Control de acceso Contrala la mquina cliente Autentificacin Controla al usuario cliente Apache
1. Control de acceso 2. Autentificacin

Sistemas de autenticacin
Bsica
El usuario introduce nombre y contrasea en el cliente (navegador) Se transmiten sin cifrar o encriptar al servidor

Digest
El usuario introduce nombre y contrasea en el cliente (navegador) Se transmiten cifrados o encriptados al servidor

Por certificado
El cliente dispone de un certificado digital que enva al servidor al conectarse

Autentificacin bsica
Autentificacin para SV www.aulasri.org
/var/www/sitio1/privada Activar el mdulo aut_basic
Webmin / Apache / Global Configuration / Configura Apache Modules / Activar

Establecer carpetas en que se establecer autentificacin


Webmin / apache / otros (men principal apache, a la izquierda)/ Directorios protegidos = Proteted Web Directories / /var/www/sitio1/privada Crear
Informacin sobre la carpeta protegida Agregar usuarios que sern autenticados para acceder a ella (uno o varios)

Autentificacin bsica

Autentificacin bsica

Autentificacin bsica
Comprobar
Se supone ya est creada la carpeta protegida
/var/www/sitio/privada

Poner una pgina dentro En la carpeta protegida debe haber


.htpasswd Nombre de los usuarios y contraseas encriptadas .htaccess Se pueden establecer directivas que configuren el acceso a la carpeta protegida

Conectarse a la carpeta y comprobar autentificacin


http://www.aulasri.com/privada

Autentificacin bsica

Estableciendo control de acceso


Autenticacin Comprueba quienes son los usuarios Control de acceso Desde donde se conectan Control de acceso
Se establece sobre directorios y/o archivos (directivas)
<Directory> </Directory> <Files> </Files>

Directivas usadas
Allow Permite el acceso de los clientes que tengan las IP o los nombre de dominio indicados Deny Deniega el acceso a los clientes que tengan las IP o los nombre de dominio indicados Order Indica el orden en que se deben ejecutar Allow y Deny

Estas directivas se pueden incluir:


Dentro de los archivos de configuracin de Servidores Virtuales En los archivos de configuracin .htaccess (archivos por directorio) Pueden haber en cada carpeta de un sitio web

Estableciendo control de acceso


Directiva
Allow from all Allow from 192.168.3 86.70.89.1

Descripcin
Se permite el acceso a cualquier cliente Se permite el acceso a clientes con direcciones IP que comiencen por 192.168.3 y al que tenga 86.70.89.1

Deny from all


Deny from com hackers.net

Se deniega acceso a cualquier cliente


Se deniega el acceso a clientes de dominios .com y del dominio hackers.net

Estableciendo control de acceso


Queremos establecer que a la carpeta /var/www/aulasri/privado slo puedan acceder los clientes del dominio aulasri.com
Aadir a la configuracin del SV <Directory /var/www/aulasri/privado> Order deny, allow Deny from all Allow for aulasri.com </Directory> Si no usamos Deny, slo Allow Se permite el acceso a los clientes de aulasri.com y a todos los dems Si ser usara Order allow, deny Se ejecutara deny al final con lo cual se denegara el acceso a todos los clientes

Estableciendo control de acceso


<Directory /var/www/aulasri/privado> Order allow, deny Allow from all Deny from 81.81.81.81 </Directory>

Denegar el acceso al sitio web al cliente con la IP 81.81.81.81


<Directory /var/www/aulasri/privado> Order deny, allow Allow from all Deny from ejemplo.com </Directory>

Se permite el acceso a todos los clientes (ya que se ejecuta al final Allow from all)

Obtener informacin del servidor


Para obtener informacin sobre el servidor
modulo: mod_access.c
<Location /server-info> SetHandler server-info Order deny,allow Deny from all Allow from pc1.ieselrincon.org </Location

Accede desde navegador


http://192.168.1.100/server-info/?

El protocolo HTTPS
HTTPS: HTTP Secure Protocolo utilizado para conexiones web seguras (comercio electrnico, banca, webmin, ) Cuando se establece por primera vez una conexin con un servidor web seguro, el navegador nos pregunta si queremos instalar un certificado para poder acceder al sitio
La primera vez que nos conectamos a un sitio https nos indica que obtengamos un certificado ste ser usado en sucesivas conexiones para garantizar la identidad del servidor

HTTPS
HTTP + SSL (Secure Socket Layer = Protocolo de Capa de conexin seguro) o HTTP + TLS (Transport Layer Security = Seguridad en la capa de transporte) Se transmiten los mensajes HTTP cifrados y para garantizar la identidad del servidor ante los clientes Puerto de escucha por defecto 443 Protocolo: https://direccin

El protocolo HTTPS
HTTPS garantiza
La confidencialidad
Los mensajes transmitidos estn cifrados

La integridad
Si un mensaje se modifica accidentalmente o intencionadamente, el receptor detecta que se ha producido dicha modificacin

La autenticacin
Se puede asegurar la identidad del servidor y/o del cliente mediante el uso de certificados digitales

El protocolo HTTPS
Para que se pueda usar HTTPS en Apache Activar el mdulo ssl
Webmin / Apache / Global Configuration / Configure Apache Modules / Elegir mdulo ssl / Enable Selected Modules

Para poder crear servidores virtuales https se deben incluir en el archivo /etc/apache2/ports.conf las directivas
<IfModule mod_ssl.c> NameVirtualHost *:443 Listen 443 </IfModule> Ports.conf indica: Si se aade NameVirtualHost *:443, entonces hay que editar: /etc/apache2/sites-available/default-ssl Para poder iniciar bien el servidor HTTPS, primero hay que instalar los certificados

Certificados
Un servidor web HTTPS debe disponer de un certificado para poder establecer conexiones seguras con los clientes Certificado digital o electrnico
Es un documento digital emitido por una entidad Autoridad de Certificacin (AC) que sirve para garantizar la identidad de un usuario en una conexin

Certificado electrnico Garantiza que una persona o empresa es quien dice ser y permite firmar electrnicamente documentos
Soporte fsico (dni electrnico) Archivo en el ordenador

Certificados
Conexin segura
Servidor web debe tener instalado un certificado obtenido de una AC El servidor (con certificado) enva los mensajes firmados con una clave privada La 1 vez que el cliente web (navegador) se conecta con un servidor HTTPS recibe una clave pblica (para descifrar los mensajes enviados por el servidor y verificar su identidad), nos da informacin sobre el certificado correspondiente y nos pide confirmacin sobre si el consideramos vlido el certificado (deseamos usar la clave pblica para conectarnos con el servidor) El cliente cifrar los mensajes con la clave pblica y el servidor los descrifrar con la clave privada Las siguientes conexiones del cliente con el servidor verificarn de forma automtica la identidad del servidor y no nos pedirn autorizacin Los navegadores web disponen de una lista de AC, que les permite establecer conexiones automticas (sin tener que confirmar) con servidores HTTPS, que disponen de un certificado emitido por algunas de esas AC

Autoridades de certificacin
Autoridad de certificacin
Es una entidad considerada de confianza que se encarga de emitir certificados para usuarios que sirvan para garantizar la identidad de stos ante otros usuarios

Servidor web HTTPS Debe obtener certificado de una AC


Los clientes web podrn confiar en la identidad del servidor web, al estar certificado por una entidad considerada de confianza

Se puede generar un certificado autofirmado en un ordenador (programa software), sin que lo haya emitido una AC
Los usuarios difcilmente confiaran en sitios con certificados autofirmados Se utiliza para realizar pruebas con certificados Normalmente hay que pagar para obtener un certificado de una AC (y cumplir unos requisitos)

Autoridades de certificacin
Autoridades de certificacin
A las que se les puede pedir un certificado Verisign GlobalSign CyberTrust RSA Security FNMT
Fbrica Nacional de Moneda y Timbre Se encarga de emitir certificados para que los ciudadanos se identifiquen anta las Administraciones Pblicas, Empresas Pblicas, Universidades, etc DNI electrnico (chip dentro del DNI): Certificado electrnico personal (autentificarse antes administracin pblica, banco, ) AC digital de las cmaras de comercio espaolas Certificado de persona jurdica (gestin de trmites online con la administracin pblica), facturacin electrnica de la empresa, certificado de servidor seguro (demostrar que tu empresa es titular de suweb y poder realizar operaciones en ella de forma segura

Ministerio del Interior Camerfirma

Una empresa debe acudir a una AC http://www.youtube.com/watch?feature=player_embedded&v=EU6vgU077xU

Certificado digital
Certificado digital
Archivo en el ordenador (certificado.cer) Tiene dos partes
Clave privada: Slo en tu poder, no se puede duplicar y est protegida por un pin Clave pblica: La conoce el resto de personas y avala que ese certificado digital te pertenece

Vincula la parte pblica y la parte privada Documento + certificado.cer = Firma electrnica

Firma electrnica
Documento cifrado con clave privada se enva el documento cifrado + la clave pblica Se recibe el documento Se descifra con la clave pblica Se compara con la clave privada

Ventajas certificados electrnicos


Seguridad: Mismos efectos jurdicos Permite enviar documentos firmados electrnicamente Ahorro de tiempo y costes

Obtencin de un certificado
Para obtener un certificado de una AC
1. Crear clave privada y un archivo de peticin de firma de certificado 2. Acceder a web de una AC y solicitar certificado (enviar archivo de peticin + clave privada) 3. La AC nos enva un archivo (certificado digital) que podemos instalar para el servidor web, correo electrnico,

Obtencin de un certificado
Certificado autofirmado en Linux
Se puede utilizar en un servidor HTTPS
No ser reconocido por el navegador como emitido por una AC

1.

Instalar openssl
apt-get install openssl

2.
3.

Situarnos en la carpeta donde queremos crear los archivos necesarios para el certificado (/home/agustin/certificados) Generar una clave privada de 4096 bytes
Se almacena en un archivo de claves (server.key) openssl genrsa -des3 -out server.key 4096 Introducir frase de paso (hola)

4.

Crear una peticin de firma del certificado en el archivo server.csr


openssl req -new -key server.key -out server.csr Introducir frase de paso Datos del certificado (pas, provincia, Localidad, empresa, FQDN, email

5.

Obtener el certificado autofirmado en el archivo server.crt


A partir de la peticin de firma del certificado + clave privada, con validez para 365 das openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt Comprobar que existe: server.key, server.csr, server.crt, en la carpeta del proceso
server.crt certificado server.key clave privada server.csr peticin de firma

1. 2. 3. 4.

Si tenemos certificado
Autofirmado o AC

Instalacin del certificado

Instalar en Apache para que lo utilice en el servidor HTTPS Comprobar que est activo mdulo ssl de apache Instalacin
1.

Crear carpetas
/etc/apache2/ssl /etc/apache2/ssl/certificado /etc/apache2/ssl/certificado/clave

2. 3. 4.

Copiar el archivo de claves en /etc/apache2/ssl/certificado/clave (server.key) Copiar el archivo de certificado en /etc/apache2/ssl/certificado (server.crt) Crear un servidor virtual para https (que escuche en el puerto 443)
Nombre: www.aulasri.com Carpeta raz del sitio: /var/www/aulasri-ssl

5. 6.

Comprobar que mdulo ssl est instalado Acceder con webmin a las opciones ssl (Seleccionar Servidor virtual / SSL options)
Especificar la ruta de los archivos de certificado y de clave privada

7.

Reiniciar apache con webmin error (frase de paso), hacerlo a mano


Detener Arrancar con comando: /etc/init.d/apache2 start (para que pida frase de paso)

8.

Guardar en la carpeta raz del sitio un documento html y probar


https://www.aulasri.com/index.html Navegador avisa que el certificado del sitio web no es fiable (no ha sido emitido por AC reconocida por el navegador) Solicita que autorices la obtencin del certificado para conectar con el servidor

Instalacin del certificado

Instalacin del certificado

Registro y monitorizacin
Registro (log): Archivo que almacena los errores que se producen en el servidor y los accesos de los clientes Registro de errores
/var/log/apache2/error.log De cada error fecha, hora, gravedad del error, direccin IP dl cliente que provoc el error, el mensaje de error y el nombre del recurso solicitado

Registro de accesos
/var/log/apache2/access.log Monitoriza o registra informacin sobre todas las peticiones de clientes procesadas por el servidor Cada peticin la IP del cliente, fecha, hora y mensaje de peticin del recurso Para cada servidor virtual hay un registro de accesos
other_vhosts_access

Registro y monitorizacin

Registro y monitorizacin

You might also like