Está en la página 1de 8

HTTPS: Servicio Web seguro

Elaborado Por: Luis Palomino Zavala Trainier Certificacin Linux

El protocolo HTTPS es la versin segura del protocolo HTTP. El sistema HTTPS utiliza un cifrado basado en las Secure Socket Layers (SSL) para crear un canal cifrado (cuyo nivel de cifrado depende del servidor remoto y del navegador utilizado por el cliente) ms apropiado para el trfico de informacin sensible que el protocolo HTTP. Cabe mencionar que el uso del protocolo HTTPS no impide que se pueda utilizar HTTP. Es aqu, cuando nuestro navegador nos advertir sobre la carga de elementos no seguros (HTTP), estando conectados a un entorno seguro (HTTPS). Los protocolos https son utilizados por navegadores como: Internet Explorer, Mozilla Firefox, Opera, ... entre otros. Es utilizado principalmente por entidades bancarias, tiendas en lnea, y cualquier tipo de servicio que requiera el envo de datos personales o contraseas. El puerto estndar para este protocolo es el 443. Para la creacin de certificados digitales en nuestro servidor Web debemos tener en cuenta la configuracin bsica de nuestros archivos esenciales para implementar un servidor Web. Cabe sealar que la configuracin debe realizarse de manera exitosa para que el siguiente paso que es la creacin de certificados pueda darse de manera correcta Nativamente el S.O genera un certificado digital a que continuacin mostramos. No haremos cambio en ningn archivo y el primer paso para poder ver el certificado que genera es reiniciar el servicio Web de tal modo que el active el demonio httpd

Una vez ejecutado dicho comando, lo siguiente ser abrir un browser y colocar de la manera siguiente, en este ejemplo tomaremos como referencia la direccin IP 130.10.1.29 https://130.10.1.29

Aqu nos muestra un mensaje donde pide la verificacin de identidad que solicita el cliente a nuestro servidor Web seguro (aun nativo del S.O), el paso a seguir es elegir la primera opcin donde menciona lo siguiente Aceptar este certificado permanentemente y nos aparecer un mensaje de error do nde nos muestra que el servidor a detectado la solicitud de un usuario a la pagina Web del servidor y este le devolver un certificado perteneciente al localhost.localdomain (certificado digital nativo del S.O)

Luego de este mensaje optaremos por seguir adelante (ACEPTAR) y a continuacin mostrara nuestro servidor Web en modo pgina de prueba ya que aun no hemos creado nuestros certificados digitales al modo que nosotros creamos conveniente. Aqu muestra la direccin IP de nuestro servidor, junto a el una candado de seguridad

Tal como se indica en el comentario, esto tiene un significado, el cual es que en el servidor Web se encuentra una estructura predeterminada del servidor Web nativo, si nosotros hacemos doble clic sobre dicho candado mostrara lo siguiente.

Si queremos mas detalles de lo que existe en dicho certificado, optamos por VER y mostrara lo siguiente.

Con lo ya mostrado en las imgenes anteriores usted estar en las condiciones de como reconocer un certificado de seguridad, ahora pasaremos a la creacin de certificados digitales de manera personalizada, ya que lo mostrado son los certificados digitales nativos del S.O Cabe sealar que antes de crear nuestro certificado digital debemos configurar debidamente el servidor Web, sin ningn error..

Para nuestro caso de ejemplo, usaremos dos archivos binarios. En la vida real

les recomiendo poner algunos archivos ms, aqu mi ejemplo real:

Con la lnea que se agrego se genero un archivo llamado server.key el cual contiene la clave del servidor con un soporte de 1024 bits para autenticacin. Es muy importante mantener una copia de esta clave pues es la base de encriptacin usando un certificado de ser posible mantener un respaldo en un diskette o cinta. El costo de un certificado, aunque varia esta entre los 100 y 600 dlares aproximadamente y es doloroso tener que generar un certificado, prefiero mantenerlo en un CD con la copia de server.key a no tener que pagar nuevamente El segundo paso es generar una peticin de certificacin (Certificate Signed Request) con esta podremos realizar la peticin de un certificado a la entidad certificadora de nuestra eleccin. Este es el archivo que se les enva cuando las entidades certificadoras solicitan el CSR. Sin embargo tambin podemos hacer que nuestro sistema operativo genere un Certificado Autogenerado el cual nos permita operar de forma segura, pero siempre le sacara a los clientes una advertencia de que El certificado no puede ser validado en una entidad certificadora

A continuacin ejecutaremos el comando donde nos permite definir parmetros de identificacin de la empresa para el certificado digital.

Aqu nos generara el CSR (server.csr) as como lo muestra la siguiente figura.

Cuando vayamos a comprar un certificado, solo enviaremos este archivo server.crt a la entidad certificadora. Ahora esto de comprar un certificado toma un tiempo y cuesta dinero, procedamos nosotros a generarnos un certificado autogenerado a partir de estos datos y seguir operando hasta que idealmente nos llegue el certificado valido

Este certificado de ejemplo ser valido para 60 das, podemos poner mas (1400 o algo as) si es que nunca vamos a pedir un certificado valido a la entidad certificadora. A continuacin ejecutaremos la lnea para crear el certificado CRT openssl x509 -req -days 60 -in server.csr -signkey server. key -out server.crt

Una vez echo esto, ya tendremos lo certificados autogenerados:


server.crt server.csr server.key

Luego reemplazaremos estos archivos de la manera siguiente: Copiaremos el server.crt al directorio /etc/httpd/conf/ssl.crt/ Copiaremos el server.key al directorio /etc/httpd/conf/ssl.key/ Luego reindicaremos el servicio Web con el comando que se conoce y debe salir de manera correcta (OK) Pasaremos a comprobar si el certificado digital esta amarrado al servicio Web de apache, colocando en el browser lo siguiente https://130.10.1.29 Accedemos al candado que lleva el browser y veremos con detalle las caractersticas de las mismas.

El ultimo paso seria configurar el archivo ssl.conf que se encuentra en la ubicacin /etc/httpd/conf.d/ssl.conf En la seccin VirtualName agregaremos nuestra direccin IP o nombre de dominio + el puerto, Debajo colocaremos el lugar donde se almacena el directorio Web y por ultimo la direccin IP del servidor + el puerto correspondiente Reiniciamos el servicio Web. Y colocamos https://130.10.1.29