SlideShare una empresa de Scribd logo
1 de 10
IES Gran Capitán
Módulo: Despliegue de Aplicaciones Web
Ciclo Formativo de Grado Superior “Desarrollo de aplicaciones Web”

Práctica 6: Servidor Web Seguro

Fecha entrega: 13/11/2013
Autores: Pablo Medina Suárez

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://informatica.iesgrancapitan.org informatica@iesgrancapitan.org
Práctica 6: Servidor Web Seguro

2

1 ÍNDICE
1

ÍNDICE

2

2

INTRODUCCIÓN

3

3

DESARROLLO DE LA PRÁCTICA

4

3.1
3.2

DESCRIBE CON TUS PALABRAS: ¿QUÉ ES UN SERVIDOR WEB SEGURO?
4
SIGUE LOS PASOS DEL CURSO PARA CONSEGUIR ACCEDER TAMBIÉN EN MODO SEGURO (HTTPS)
A TU PÁGINA WEB DE PRUEBA.
4
3.2.1 HACER LA PRUEBA CON EL MISMO SERVIDOR WEB VIRTUAL PERO ACCEDIENDO POR PUERTOS
DISTINTOS. SI ESTÁ BIEN CONFIGURADO, DEBEN MOSTRARSE INDEX.HTML DISTINTOS.
8
3.2.2 ACCEDER A SERVIDOR WEB QUE SOLO ESTE CONFIGURADO EN MODO SEGURO (LISTEN 443). DEBE
FUNCIONAR USANDO HTTPS Y NO FUNCIONAR USANDO HTTP.
8
4

CONCLUSIÓN

5

BIBLIOGRAFIA

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org

9
10
Práctica 6: Servidor Web Seguro

2

3

INTRODUCCIÓN



Objetivo: Crear servidores web seguros.
Procedimiento:
Será necesario que los servicios DHCP y DNS configurados en las prácticas
anteriores
están
levantados.
Nota: si aún no tienes configurado el servicio DNS, usa el fichero de hosts
http://es.wikipedia.org/wiki/Archivo_hosts

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Práctica 6: Servidor Web Seguro

4

3 DESARROLLO DE LA PRÁCTICA
3.1

Describe con tus palabras: ¿qué es un servidor web seguro?

Un servidor web seguro es aquel servidor cuyas transacciones con los clientes pasan por
una capa más durante el proceso de comunicación, mediante la implementación de protocolos
de seguridad, como el protocolo SSL, que utilizan técnicas de cifrado y autenticación para
impedir que un tercero pueda tener acceso a la información enviada, y evitar las escuchas de las
comunicaciones.
De esta forma, se aumenta la confidencialidad y la fiabilidad de las transacciones de los
usuarios con el servidor web.
Aquellos servidores que utilizan SSL son accedidos utilizando el protocolo HTTPS y
se comunidad por el puerto 443.

3.2

Sigue los pasos del curso para conseguir acceder también en modo
seguro (HTTPS) a tu página web de prueba.

Es necesario realizar algunos preparativos previos para la realización de ésta práctica.
Que son los siguientes:
En primer lugar, hay que crear el sitio nuevo que será configurado como seguro, por lo
que se ha creado un nuevo directorio, /var/www/practica6.
Para la configuración del sitio, esta vez usaremos como archivo base una copia del
fichero /etc/apache2/sites-available/default-ssl, el cual configuramos como ya se ha hecho con
los sitios de anteriores prácticas. Al directorio se le añade la directiva SSLRequireSSL:

Nótese que más abajo la directiva SSLEngine está activada:

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Práctica 6: Servidor Web Seguro

5

Como no tengo habilitado un servidor DNS, se modifica también el archivo /etc/host,
para poder acceder al sitio utilizando la dirección que le hemos dado.
El siguiente paso a realizar es la configuración del archivo ports.conf, para que escuche
las conexiones realizadas a través del puerto 443. Lo dejamos de la siguiente manera:

Hecho lo anterior, activamos el sitio y reiniciamos el servidor.
Ahora tenemos que instalar un paquete clave si queremos hacer un servidor seguro:
OpenSSL, para ello, se inserta la orden sudo apt-get install openssl. En mi caso, ya lo había
instalado previamente.
Si queremos realizar alguna configuración, hay que utilizar el archivo
/etc/ssl/openssl.cnf, aunque podemos continuar sin modificarlo. La información que aparezca en
dicho archivo estará relacionada con los datos que proveeremos como entidad certificadora, ya
que a continuación generaremos un certificado.
Para la creación de un certificado autofirmado, realizamos lo siguiente:


Introducimos en el terminal la orden sudo make-ssl-cert /usr/share/sslcert/ssleay.cnf /etc/ssl/certs/apache2.pem template output –forcé-overwrite:



Al hacer esto, nos sale la siguiente ventana:

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Práctica 6: Servidor Web Seguro

6

Dejamos tanto esta como la siguiente con los valores por defecto. En concreto,
en la segunda ventana, no debemos poner ningún nombre, en caso de que salga
alguno.
Hecho esto, vamos al archivo de configuración de nuestro sitio y buscamos las líneas
SSLCertificateFile y SSLCertificateKeyFile, a las cuales añadimos la ruta del certificado que
hemos generado antes. De la siguiente manera:

El último y esencial paso es activar el módulo ssl de apache si no lo hemos hecho, con
la orden sudo a2enmod ssl, tras lo cual reiniciamos el servidor.

Ahora comprobamos si todo lo que hemos hecho ha funcionado, por lo que abrimos el
navegador en una máquina cliente. Primero se prueba a entrar utilizando el puerto estándar:

Comprobamos a acceder por HTTPS:

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Práctica 6: Servidor Web Seguro

7

Al intentar acceder, recibimos la siguiente advertencia. Esto es debido a que el
navegador no reconoce el certificado obtenido de la página web, ya que el certificado lo hemos
creado nosotros, y por lo tanto no es de confianza.
Para continuar, añadimos una excepción al navegador y ya podremos entrar al sitio:

Ya hemos comprobado que funciona correctamente, sin embargo, no es deseable que se
pueda entrar al sitio si no es de forma segura, por lo que si el usuario intenta acceder utilizando
el puerto estándar, le debemos redirigir al sitio por HTTPS. Para ello, modificamos el archivo
de configuración de la siguiente manera:

Ahora, si se intenta acceder utilizando el puerto 80, se redirecciona automáticamente a
la dirección utilizando el puerto 443.

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Práctica 6: Servidor Web Seguro

8

3.2.1 Hacer la prueba con el mismo servidor web virtual pero accediendo por
puertos distintos. Si está bien configurado, deben mostrarse index.html
distintos.
Si no se realiza la modificación hecha al final del punto anterior, es decir, en el archivo
de configuración sólo existe un VirtualHost *:443, cuando se intenta acceder utilizando la
dirección por el puerto estándar se muestra un índice distinto:

Sin embargo, si se utiliza https sí que aparece el índice creado para el sitio seguro.

3.2.2 Acceder a servidor web que solo este configurado en modo seguro
(Listen 443). Debe funcionar usando HTTPS y no funcionar usando
HTTP.
Realizado al final del punto 3.2.

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Práctica 6: Servidor Web Seguro

9

4 CONCLUSIÓN
Durante el desarrollo de esta práctica he aprendido a crear y configurar todo lo
necesario para desplegar un servidor web que se comunique con los usuarios de forma segura.
Además de aprender sobre la creación y manejo de certificados, utilizados por el servidor y los
navegadores para respaldar dichas comunicaciones seguras.
Aunque durante la aplicación profesional el manejo de certificados no sea como lo
hemos tratado durante la práctica, ha sido interesante. Sin embargo, en los casos reales se
depende de entidades certificadoras, que son las que expiden los certificados, siendo éstos
reconocidos como certificados seguros por parte de los navegadores web.
Por último, añado que haber tratado este tema es muy importante, ya que a la hora de
comunicarnos con el usuario, la confidencialidad y la seguridad de los datos transferidos debe
ser una de las máximas prioridades como desarrolladores.

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
Práctica 6: Servidor Web Seguro

10

5 BIBLIOGRAFIA


Curso de Servicios Linux, páginas 50 en adelante.
Consultado en: http://moodle.iesgrancapitan.org/file.php/63/LINUX/CURSO_servicioslinux.pdf



Rafael del Castillo, Configuración Apache SSL
Consultado en:
http://moodle.iesgrancapitan.org/file.php/63/Apache/mypdf_20_ConfiguracionApacheS
SL.pdf



Jbdaldoma.net, redirigir a una conexión segura HTTPS en Apache
Consultado en: http://www.jdbaldoma.net/2012/05/redirigir-una-conexion-segura-httpsen.html

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.
http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org

Más contenido relacionado

La actualidad más candente

Transiciones de Procesos
Transiciones de ProcesosTransiciones de Procesos
Transiciones de Procesossueich
 
Manipulacion de la pila!!
Manipulacion de la pila!!Manipulacion de la pila!!
Manipulacion de la pila!!romo91
 
Regular Languages
Regular LanguagesRegular Languages
Regular Languagesparmeet834
 
Thread presentation
Thread presentationThread presentation
Thread presentationAAshish Ojha
 
Java Server Pages(jsp)
Java Server Pages(jsp)Java Server Pages(jsp)
Java Server Pages(jsp)Manisha Keim
 
File reader y filewriter
File reader y filewriterFile reader y filewriter
File reader y filewriterSynysterA7X
 
Sincronizacion de Procesos
Sincronizacion de ProcesosSincronizacion de Procesos
Sincronizacion de Procesosmastermind87
 
Transaction states and properties
Transaction states and propertiesTransaction states and properties
Transaction states and propertiesChetan Mahawar
 
Undecidable Problems - COPING WITH THE LIMITATIONS OF ALGORITHM POWER
Undecidable Problems - COPING WITH THE LIMITATIONS OF ALGORITHM POWERUndecidable Problems - COPING WITH THE LIMITATIONS OF ALGORITHM POWER
Undecidable Problems - COPING WITH THE LIMITATIONS OF ALGORITHM POWERmuthukrishnavinayaga
 
Function in c language(defination and declaration)
Function in c language(defination and declaration)Function in c language(defination and declaration)
Function in c language(defination and declaration)VC Infotech
 
Semantic Analysis.pptx
Semantic Analysis.pptxSemantic Analysis.pptx
Semantic Analysis.pptxZarfaMasood
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesadorFernando Camacho
 
Basic i/o & file handling in java
Basic i/o & file handling in javaBasic i/o & file handling in java
Basic i/o & file handling in javaJayasankarPR2
 
Exception Handling in object oriented programming using C++
Exception Handling in object oriented programming using C++Exception Handling in object oriented programming using C++
Exception Handling in object oriented programming using C++Janki Shah
 
AI-04 Production System - Search Problem.pptx
AI-04 Production System - Search Problem.pptxAI-04 Production System - Search Problem.pptx
AI-04 Production System - Search Problem.pptxPankaj Debbarma
 
Dealing with inconsistency
Dealing with inconsistencyDealing with inconsistency
Dealing with inconsistencyRajat Sharma
 

La actualidad más candente (20)

Transiciones de Procesos
Transiciones de ProcesosTransiciones de Procesos
Transiciones de Procesos
 
Manipulacion de la pila!!
Manipulacion de la pila!!Manipulacion de la pila!!
Manipulacion de la pila!!
 
Regular Languages
Regular LanguagesRegular Languages
Regular Languages
 
Concurrency
ConcurrencyConcurrency
Concurrency
 
Thread presentation
Thread presentationThread presentation
Thread presentation
 
Java Server Pages(jsp)
Java Server Pages(jsp)Java Server Pages(jsp)
Java Server Pages(jsp)
 
BANKER'S ALGORITHM
BANKER'S ALGORITHMBANKER'S ALGORITHM
BANKER'S ALGORITHM
 
File reader y filewriter
File reader y filewriterFile reader y filewriter
File reader y filewriter
 
Sincronizacion de Procesos
Sincronizacion de ProcesosSincronizacion de Procesos
Sincronizacion de Procesos
 
Transaction states and properties
Transaction states and propertiesTransaction states and properties
Transaction states and properties
 
Undecidable Problems - COPING WITH THE LIMITATIONS OF ALGORITHM POWER
Undecidable Problems - COPING WITH THE LIMITATIONS OF ALGORITHM POWERUndecidable Problems - COPING WITH THE LIMITATIONS OF ALGORITHM POWER
Undecidable Problems - COPING WITH THE LIMITATIONS OF ALGORITHM POWER
 
Function in c language(defination and declaration)
Function in c language(defination and declaration)Function in c language(defination and declaration)
Function in c language(defination and declaration)
 
Semantic Analysis.pptx
Semantic Analysis.pptxSemantic Analysis.pptx
Semantic Analysis.pptx
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
 
Basic i/o & file handling in java
Basic i/o & file handling in javaBasic i/o & file handling in java
Basic i/o & file handling in java
 
Exception Handling in object oriented programming using C++
Exception Handling in object oriented programming using C++Exception Handling in object oriented programming using C++
Exception Handling in object oriented programming using C++
 
AI-04 Production System - Search Problem.pptx
AI-04 Production System - Search Problem.pptxAI-04 Production System - Search Problem.pptx
AI-04 Production System - Search Problem.pptx
 
Primality
PrimalityPrimality
Primality
 
Dealing with inconsistency
Dealing with inconsistencyDealing with inconsistency
Dealing with inconsistency
 
Lexical analysis - Compiler Design
Lexical analysis - Compiler DesignLexical analysis - Compiler Design
Lexical analysis - Compiler Design
 

Destacado

Destacado (6)

01intalacion de apache
01intalacion de apache01intalacion de apache
01intalacion de apache
 
Servicio HTTP en Ubuntu (Apache)
Servicio HTTP en Ubuntu (Apache)Servicio HTTP en Ubuntu (Apache)
Servicio HTTP en Ubuntu (Apache)
 
Apache: información sobre nuestro servidor web
Apache: información sobre nuestro servidor webApache: información sobre nuestro servidor web
Apache: información sobre nuestro servidor web
 
08practica monitorizacion
08practica monitorizacion08practica monitorizacion
08practica monitorizacion
 
Servicios en Red - Mc Graw Hill Tema 1
Servicios en Red - Mc Graw Hill Tema 1Servicios en Red - Mc Graw Hill Tema 1
Servicios en Red - Mc Graw Hill Tema 1
 
Servicios de Red e Internet
Servicios de Red e InternetServicios de Red e Internet
Servicios de Red e Internet
 

Similar a Configura servidor web seguro

Apache: Servidores web virtuales (por IP y puerto)
Apache: Servidores web virtuales (por IP y puerto)Apache: Servidores web virtuales (por IP y puerto)
Apache: Servidores web virtuales (por IP y puerto)pablozacrosuarez
 
Seg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslSeg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslgarciadebora
 
Apache: Servidores web con autentificación
Apache: Servidores web con autentificaciónApache: Servidores web con autentificación
Apache: Servidores web con autentificaciónpablozacrosuarez
 
Apache: Más opciones de configuración
Apache: Más opciones de configuraciónApache: Más opciones de configuración
Apache: Más opciones de configuraciónpablozacrosuarez
 
5 servidor web
5 servidor web5 servidor web
5 servidor webangeles104
 
Certificados digitales
Certificados digitalesCertificados digitales
Certificados digitalesTensor
 
Instalación y configuración de un servidor ProFTPd
Instalación y configuración de un servidor ProFTPdInstalación y configuración de un servidor ProFTPd
Instalación y configuración de un servidor ProFTPdpablozacrosuarez
 
Instalación De PáGina Web En Servidor Linux
Instalación De PáGina Web En Servidor LinuxInstalación De PáGina Web En Servidor Linux
Instalación De PáGina Web En Servidor LinuxEdgar Sandoval
 
Apache: Servidores web virtuales (por nombre)
Apache: Servidores web virtuales (por nombre)Apache: Servidores web virtuales (por nombre)
Apache: Servidores web virtuales (por nombre)pablozacrosuarez
 
Certificados Cacert
Certificados CacertCertificados Cacert
Certificados CacertKevin MH
 
Guia de instalacion de web en centos 6.4
Guia de instalacion de web en centos 6.4Guia de instalacion de web en centos 6.4
Guia de instalacion de web en centos 6.4Michelle Gutierrez
 
Guia de instalacion de web en centos 6.4
Guia de instalacion de web en centos 6.4Guia de instalacion de web en centos 6.4
Guia de instalacion de web en centos 6.4Michelle Gutierrez
 
Gestion de nubes de servidores
Gestion de nubes de servidoresGestion de nubes de servidores
Gestion de nubes de servidoresrossykeles
 
Hack like a pro with custom VPS - Najava Negra 2019
Hack like a pro with custom VPS - Najava Negra 2019Hack like a pro with custom VPS - Najava Negra 2019
Hack like a pro with custom VPS - Najava Negra 2019Alejandro Quesada
 
Manual de instalacion de un servidor proxy
Manual de instalacion de un servidor proxyManual de instalacion de un servidor proxy
Manual de instalacion de un servidor proxySALVADORCHANHERNANDEZ
 

Similar a Configura servidor web seguro (20)

06practica servidorseguro
06practica servidorseguro06practica servidorseguro
06practica servidorseguro
 
Apache: Servidores web virtuales (por IP y puerto)
Apache: Servidores web virtuales (por IP y puerto)Apache: Servidores web virtuales (por IP y puerto)
Apache: Servidores web virtuales (por IP y puerto)
 
Seg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslSeg t2 practicas_certificado ssl
Seg t2 practicas_certificado ssl
 
Apache: Servidores web con autentificación
Apache: Servidores web con autentificaciónApache: Servidores web con autentificación
Apache: Servidores web con autentificación
 
Servidor ssl
Servidor sslServidor ssl
Servidor ssl
 
Apache: Más opciones de configuración
Apache: Más opciones de configuraciónApache: Más opciones de configuración
Apache: Más opciones de configuración
 
5 servidor web
5 servidor web5 servidor web
5 servidor web
 
Certificados digitales
Certificados digitalesCertificados digitales
Certificados digitales
 
Instalación y configuración de un servidor ProFTPd
Instalación y configuración de un servidor ProFTPdInstalación y configuración de un servidor ProFTPd
Instalación y configuración de un servidor ProFTPd
 
Navegación Segura con SSL
Navegación Segura con SSLNavegación Segura con SSL
Navegación Segura con SSL
 
Instalación De PáGina Web En Servidor Linux
Instalación De PáGina Web En Servidor LinuxInstalación De PáGina Web En Servidor Linux
Instalación De PáGina Web En Servidor Linux
 
Apache: Servidores web virtuales (por nombre)
Apache: Servidores web virtuales (por nombre)Apache: Servidores web virtuales (por nombre)
Apache: Servidores web virtuales (por nombre)
 
Certificados Cacert
Certificados CacertCertificados Cacert
Certificados Cacert
 
Openssl
Openssl Openssl
Openssl
 
Guia de instalacion de web en centos 6.4
Guia de instalacion de web en centos 6.4Guia de instalacion de web en centos 6.4
Guia de instalacion de web en centos 6.4
 
Guia de instalacion de web en centos 6.4
Guia de instalacion de web en centos 6.4Guia de instalacion de web en centos 6.4
Guia de instalacion de web en centos 6.4
 
Proyecto 6
Proyecto 6Proyecto 6
Proyecto 6
 
Gestion de nubes de servidores
Gestion de nubes de servidoresGestion de nubes de servidores
Gestion de nubes de servidores
 
Hack like a pro with custom VPS - Najava Negra 2019
Hack like a pro with custom VPS - Najava Negra 2019Hack like a pro with custom VPS - Najava Negra 2019
Hack like a pro with custom VPS - Najava Negra 2019
 
Manual de instalacion de un servidor proxy
Manual de instalacion de un servidor proxyManual de instalacion de un servidor proxy
Manual de instalacion de un servidor proxy
 

Más de pablozacrosuarez

Apache Tomcat 8: integración con Apache Server (con mod_jk)
Apache Tomcat 8: integración con Apache Server (con mod_jk)Apache Tomcat 8: integración con Apache Server (con mod_jk)
Apache Tomcat 8: integración con Apache Server (con mod_jk)pablozacrosuarez
 
Apache Tomcat 8: despliegue de una aplicación mediante el interfaz
Apache Tomcat 8: despliegue de una aplicación mediante el interfazApache Tomcat 8: despliegue de una aplicación mediante el interfaz
Apache Tomcat 8: despliegue de una aplicación mediante el interfazpablozacrosuarez
 
Apache Tomcat 8: despliegue de una aplicación mediante terminal
Apache Tomcat 8: despliegue de una aplicación mediante terminalApache Tomcat 8: despliegue de una aplicación mediante terminal
Apache Tomcat 8: despliegue de una aplicación mediante terminalpablozacrosuarez
 
Instalación de Apache Tomcat 8
Instalación de Apache Tomcat 8Instalación de Apache Tomcat 8
Instalación de Apache Tomcat 8pablozacrosuarez
 
Apache: páginas multilenguaje
Apache: páginas multilenguajeApache: páginas multilenguaje
Apache: páginas multilenguajepablozacrosuarez
 
Sistemas de control de versiones: CVS
Sistemas de control de versiones: CVSSistemas de control de versiones: CVS
Sistemas de control de versiones: CVSpablozacrosuarez
 
Sistemas de control de versiones: SVN
Sistemas de control de versiones: SVNSistemas de control de versiones: SVN
Sistemas de control de versiones: SVNpablozacrosuarez
 
Sistemas de control de versiones: Git
Sistemas de control de versiones: GitSistemas de control de versiones: Git
Sistemas de control de versiones: Gitpablozacrosuarez
 

Más de pablozacrosuarez (8)

Apache Tomcat 8: integración con Apache Server (con mod_jk)
Apache Tomcat 8: integración con Apache Server (con mod_jk)Apache Tomcat 8: integración con Apache Server (con mod_jk)
Apache Tomcat 8: integración con Apache Server (con mod_jk)
 
Apache Tomcat 8: despliegue de una aplicación mediante el interfaz
Apache Tomcat 8: despliegue de una aplicación mediante el interfazApache Tomcat 8: despliegue de una aplicación mediante el interfaz
Apache Tomcat 8: despliegue de una aplicación mediante el interfaz
 
Apache Tomcat 8: despliegue de una aplicación mediante terminal
Apache Tomcat 8: despliegue de una aplicación mediante terminalApache Tomcat 8: despliegue de una aplicación mediante terminal
Apache Tomcat 8: despliegue de una aplicación mediante terminal
 
Instalación de Apache Tomcat 8
Instalación de Apache Tomcat 8Instalación de Apache Tomcat 8
Instalación de Apache Tomcat 8
 
Apache: páginas multilenguaje
Apache: páginas multilenguajeApache: páginas multilenguaje
Apache: páginas multilenguaje
 
Sistemas de control de versiones: CVS
Sistemas de control de versiones: CVSSistemas de control de versiones: CVS
Sistemas de control de versiones: CVS
 
Sistemas de control de versiones: SVN
Sistemas de control de versiones: SVNSistemas de control de versiones: SVN
Sistemas de control de versiones: SVN
 
Sistemas de control de versiones: Git
Sistemas de control de versiones: GitSistemas de control de versiones: Git
Sistemas de control de versiones: Git
 

Último

Planeación estratégica de la gestión de talento humano
Planeación estratégica de la gestión de talento humanoPlaneación estratégica de la gestión de talento humano
Planeación estratégica de la gestión de talento humanoStevenLopez150012
 
compilacion-codigos-y-ejercicios-canalizados-por-agesta-al-1-marzo-2016.pdf
compilacion-codigos-y-ejercicios-canalizados-por-agesta-al-1-marzo-2016.pdfcompilacion-codigos-y-ejercicios-canalizados-por-agesta-al-1-marzo-2016.pdf
compilacion-codigos-y-ejercicios-canalizados-por-agesta-al-1-marzo-2016.pdfDrGonzalezCampo1
 
REFLEXION LA PARABOLA DEL HIJO PRODIGO.pptx
REFLEXION LA PARABOLA DEL HIJO PRODIGO.pptxREFLEXION LA PARABOLA DEL HIJO PRODIGO.pptx
REFLEXION LA PARABOLA DEL HIJO PRODIGO.pptxDavidFunes17
 
cuadernillo-de-tutoria-segundo-grado.pdf
cuadernillo-de-tutoria-segundo-grado.pdfcuadernillo-de-tutoria-segundo-grado.pdf
cuadernillo-de-tutoria-segundo-grado.pdfgabinaguerrero
 
Ética utilitarista de Jeremy BentahmF.pptx
Ética utilitarista de Jeremy BentahmF.pptxÉtica utilitarista de Jeremy BentahmF.pptx
Ética utilitarista de Jeremy BentahmF.pptxSebaslSalazar
 
TIPOLOGIA TEXTUAL, explicación sobre tipología textual
TIPOLOGIA TEXTUAL, explicación sobre tipología textualTIPOLOGIA TEXTUAL, explicación sobre tipología textual
TIPOLOGIA TEXTUAL, explicación sobre tipología textualmariacelinaupeguiriv
 
Taxonomiìa de Bloom Taller Teorico Practico.pdf
Taxonomiìa de Bloom Taller Teorico Practico.pdfTaxonomiìa de Bloom Taller Teorico Practico.pdf
Taxonomiìa de Bloom Taller Teorico Practico.pdfMarlaZarithchacnGonz
 

Último (7)

Planeación estratégica de la gestión de talento humano
Planeación estratégica de la gestión de talento humanoPlaneación estratégica de la gestión de talento humano
Planeación estratégica de la gestión de talento humano
 
compilacion-codigos-y-ejercicios-canalizados-por-agesta-al-1-marzo-2016.pdf
compilacion-codigos-y-ejercicios-canalizados-por-agesta-al-1-marzo-2016.pdfcompilacion-codigos-y-ejercicios-canalizados-por-agesta-al-1-marzo-2016.pdf
compilacion-codigos-y-ejercicios-canalizados-por-agesta-al-1-marzo-2016.pdf
 
REFLEXION LA PARABOLA DEL HIJO PRODIGO.pptx
REFLEXION LA PARABOLA DEL HIJO PRODIGO.pptxREFLEXION LA PARABOLA DEL HIJO PRODIGO.pptx
REFLEXION LA PARABOLA DEL HIJO PRODIGO.pptx
 
cuadernillo-de-tutoria-segundo-grado.pdf
cuadernillo-de-tutoria-segundo-grado.pdfcuadernillo-de-tutoria-segundo-grado.pdf
cuadernillo-de-tutoria-segundo-grado.pdf
 
Ética utilitarista de Jeremy BentahmF.pptx
Ética utilitarista de Jeremy BentahmF.pptxÉtica utilitarista de Jeremy BentahmF.pptx
Ética utilitarista de Jeremy BentahmF.pptx
 
TIPOLOGIA TEXTUAL, explicación sobre tipología textual
TIPOLOGIA TEXTUAL, explicación sobre tipología textualTIPOLOGIA TEXTUAL, explicación sobre tipología textual
TIPOLOGIA TEXTUAL, explicación sobre tipología textual
 
Taxonomiìa de Bloom Taller Teorico Practico.pdf
Taxonomiìa de Bloom Taller Teorico Practico.pdfTaxonomiìa de Bloom Taller Teorico Practico.pdf
Taxonomiìa de Bloom Taller Teorico Practico.pdf
 

Configura servidor web seguro

  • 1. IES Gran Capitán Módulo: Despliegue de Aplicaciones Web Ciclo Formativo de Grado Superior “Desarrollo de aplicaciones Web” Práctica 6: Servidor Web Seguro Fecha entrega: 13/11/2013 Autores: Pablo Medina Suárez IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://informatica.iesgrancapitan.org informatica@iesgrancapitan.org
  • 2. Práctica 6: Servidor Web Seguro 2 1 ÍNDICE 1 ÍNDICE 2 2 INTRODUCCIÓN 3 3 DESARROLLO DE LA PRÁCTICA 4 3.1 3.2 DESCRIBE CON TUS PALABRAS: ¿QUÉ ES UN SERVIDOR WEB SEGURO? 4 SIGUE LOS PASOS DEL CURSO PARA CONSEGUIR ACCEDER TAMBIÉN EN MODO SEGURO (HTTPS) A TU PÁGINA WEB DE PRUEBA. 4 3.2.1 HACER LA PRUEBA CON EL MISMO SERVIDOR WEB VIRTUAL PERO ACCEDIENDO POR PUERTOS DISTINTOS. SI ESTÁ BIEN CONFIGURADO, DEBEN MOSTRARSE INDEX.HTML DISTINTOS. 8 3.2.2 ACCEDER A SERVIDOR WEB QUE SOLO ESTE CONFIGURADO EN MODO SEGURO (LISTEN 443). DEBE FUNCIONAR USANDO HTTPS Y NO FUNCIONAR USANDO HTTP. 8 4 CONCLUSIÓN 5 BIBLIOGRAFIA IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org 9 10
  • 3. Práctica 6: Servidor Web Seguro 2 3 INTRODUCCIÓN   Objetivo: Crear servidores web seguros. Procedimiento: Será necesario que los servicios DHCP y DNS configurados en las prácticas anteriores están levantados. Nota: si aún no tienes configurado el servicio DNS, usa el fichero de hosts http://es.wikipedia.org/wiki/Archivo_hosts IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 4. Práctica 6: Servidor Web Seguro 4 3 DESARROLLO DE LA PRÁCTICA 3.1 Describe con tus palabras: ¿qué es un servidor web seguro? Un servidor web seguro es aquel servidor cuyas transacciones con los clientes pasan por una capa más durante el proceso de comunicación, mediante la implementación de protocolos de seguridad, como el protocolo SSL, que utilizan técnicas de cifrado y autenticación para impedir que un tercero pueda tener acceso a la información enviada, y evitar las escuchas de las comunicaciones. De esta forma, se aumenta la confidencialidad y la fiabilidad de las transacciones de los usuarios con el servidor web. Aquellos servidores que utilizan SSL son accedidos utilizando el protocolo HTTPS y se comunidad por el puerto 443. 3.2 Sigue los pasos del curso para conseguir acceder también en modo seguro (HTTPS) a tu página web de prueba. Es necesario realizar algunos preparativos previos para la realización de ésta práctica. Que son los siguientes: En primer lugar, hay que crear el sitio nuevo que será configurado como seguro, por lo que se ha creado un nuevo directorio, /var/www/practica6. Para la configuración del sitio, esta vez usaremos como archivo base una copia del fichero /etc/apache2/sites-available/default-ssl, el cual configuramos como ya se ha hecho con los sitios de anteriores prácticas. Al directorio se le añade la directiva SSLRequireSSL: Nótese que más abajo la directiva SSLEngine está activada: IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 5. Práctica 6: Servidor Web Seguro 5 Como no tengo habilitado un servidor DNS, se modifica también el archivo /etc/host, para poder acceder al sitio utilizando la dirección que le hemos dado. El siguiente paso a realizar es la configuración del archivo ports.conf, para que escuche las conexiones realizadas a través del puerto 443. Lo dejamos de la siguiente manera: Hecho lo anterior, activamos el sitio y reiniciamos el servidor. Ahora tenemos que instalar un paquete clave si queremos hacer un servidor seguro: OpenSSL, para ello, se inserta la orden sudo apt-get install openssl. En mi caso, ya lo había instalado previamente. Si queremos realizar alguna configuración, hay que utilizar el archivo /etc/ssl/openssl.cnf, aunque podemos continuar sin modificarlo. La información que aparezca en dicho archivo estará relacionada con los datos que proveeremos como entidad certificadora, ya que a continuación generaremos un certificado. Para la creación de un certificado autofirmado, realizamos lo siguiente:  Introducimos en el terminal la orden sudo make-ssl-cert /usr/share/sslcert/ssleay.cnf /etc/ssl/certs/apache2.pem template output –forcé-overwrite:  Al hacer esto, nos sale la siguiente ventana: IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 6. Práctica 6: Servidor Web Seguro 6 Dejamos tanto esta como la siguiente con los valores por defecto. En concreto, en la segunda ventana, no debemos poner ningún nombre, en caso de que salga alguno. Hecho esto, vamos al archivo de configuración de nuestro sitio y buscamos las líneas SSLCertificateFile y SSLCertificateKeyFile, a las cuales añadimos la ruta del certificado que hemos generado antes. De la siguiente manera: El último y esencial paso es activar el módulo ssl de apache si no lo hemos hecho, con la orden sudo a2enmod ssl, tras lo cual reiniciamos el servidor. Ahora comprobamos si todo lo que hemos hecho ha funcionado, por lo que abrimos el navegador en una máquina cliente. Primero se prueba a entrar utilizando el puerto estándar: Comprobamos a acceder por HTTPS: IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 7. Práctica 6: Servidor Web Seguro 7 Al intentar acceder, recibimos la siguiente advertencia. Esto es debido a que el navegador no reconoce el certificado obtenido de la página web, ya que el certificado lo hemos creado nosotros, y por lo tanto no es de confianza. Para continuar, añadimos una excepción al navegador y ya podremos entrar al sitio: Ya hemos comprobado que funciona correctamente, sin embargo, no es deseable que se pueda entrar al sitio si no es de forma segura, por lo que si el usuario intenta acceder utilizando el puerto estándar, le debemos redirigir al sitio por HTTPS. Para ello, modificamos el archivo de configuración de la siguiente manera: Ahora, si se intenta acceder utilizando el puerto 80, se redirecciona automáticamente a la dirección utilizando el puerto 443. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 8. Práctica 6: Servidor Web Seguro 8 3.2.1 Hacer la prueba con el mismo servidor web virtual pero accediendo por puertos distintos. Si está bien configurado, deben mostrarse index.html distintos. Si no se realiza la modificación hecha al final del punto anterior, es decir, en el archivo de configuración sólo existe un VirtualHost *:443, cuando se intenta acceder utilizando la dirección por el puerto estándar se muestra un índice distinto: Sin embargo, si se utiliza https sí que aparece el índice creado para el sitio seguro. 3.2.2 Acceder a servidor web que solo este configurado en modo seguro (Listen 443). Debe funcionar usando HTTPS y no funcionar usando HTTP. Realizado al final del punto 3.2. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 9. Práctica 6: Servidor Web Seguro 9 4 CONCLUSIÓN Durante el desarrollo de esta práctica he aprendido a crear y configurar todo lo necesario para desplegar un servidor web que se comunique con los usuarios de forma segura. Además de aprender sobre la creación y manejo de certificados, utilizados por el servidor y los navegadores para respaldar dichas comunicaciones seguras. Aunque durante la aplicación profesional el manejo de certificados no sea como lo hemos tratado durante la práctica, ha sido interesante. Sin embargo, en los casos reales se depende de entidades certificadoras, que son las que expiden los certificados, siendo éstos reconocidos como certificados seguros por parte de los navegadores web. Por último, añado que haber tratado este tema es muy importante, ya que a la hora de comunicarnos con el usuario, la confidencialidad y la seguridad de los datos transferidos debe ser una de las máximas prioridades como desarrolladores. IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org
  • 10. Práctica 6: Servidor Web Seguro 10 5 BIBLIOGRAFIA  Curso de Servicios Linux, páginas 50 en adelante. Consultado en: http://moodle.iesgrancapitan.org/file.php/63/LINUX/CURSO_servicioslinux.pdf  Rafael del Castillo, Configuración Apache SSL Consultado en: http://moodle.iesgrancapitan.org/file.php/63/Apache/mypdf_20_ConfiguracionApacheS SL.pdf  Jbdaldoma.net, redirigir a una conexión segura HTTPS en Apache Consultado en: http://www.jdbaldoma.net/2012/05/redirigir-una-conexion-segura-httpsen.html IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba. http://www.iesgrancapitan.org http://www.iesgrancapitan.org/blog04/ informatica@iesgrancapitan.org