Protocolo HTTPS
- alumangelolmedo
- 6 mar 2015
- 2 Min. de lectura
A continuación ofrecemos como crear un certificado autofirmado y un certificado de autoridad de prueba sobre un directorio con dirección web https://.
Certificado autofirmado
Lo primero que tenemos que hacer es crear los archivos del certificado. Para ello, tenemos que usar el comando openssl req -new -x509 -nodes -days 365 -keyout archivoClavePrivada.key -out archivoCertificado.crt, en el directorio donde deseamos crear los archivos.

Ahora, para que el servidor web Apache pueda utilizar la capa SSL en sus comunicaciones, hay que activarlo con sudo ln -s /etc/apache2/mods-available/ssl* /etc/apache2/mods-enabled.

Comprobamos que tras ejecutar esa directiva se han creado los archivos ssl.conf y ssl.load.
Lo siguiente que tendríamos que hacer es modificar el VirtualHost que deseamos que funcione por HTTPS, cambiando el puerto de escucha de 80 (por donde trabaja http) por 443, que es el puerto en el que funciona https.

Como vemos en el VirtualHost que escucha por el puerto 443, hay que activar SSL y añadir las rutas hacia los archivos del certificado.
Además he añadido un nuevo VirtualHost que hace una redirección de las peticiones que se hagan por el puerto 80 (http) a https.
Tras reiniciar Apache, podemos comprobar los resultados.

Al ser un certificado autofirmado, tendríamos que añadirlo manualmente a los certificados de confianza del navegador.
Lo primero que tenemos que hacer es exportar el certificado y almacenarlo en nuestro equipo.

A continuación tenemos que importarlo, almacenándolo en los certificados de confianza del navegador.

Ahora ya podemos acceder a nuestra web sin que aparezca el mensaje de página no segura.
Certificado de autoridad de prueba.
Lo primero que debemos hacer es un nuevo archivo de clave privada, ya que necesitamos una clave de 2048 bits. openssl genrsa -out archivoClavePrivada.key 2048

Ahora, con esa clave, podemos geenerar una solicitud de certificado de firma. openssl req -new -key archivoClavePrivada.key -out archivoCSR.csr.

Si vemos el contenido del archivo archivoCSR.csr generado será una firma que podemos validar en https://ssl-tools.verisign.com/#csrValidator.

Para generar el certificado de prueba tenemos que ir al siguiente enlace:
https://ssl-certificate-center.verisign.com/process/retail/trial_initial?application_locale=VRSN_US&tid=symc_vrsn_ssl_try
donde se puede obtener, de forma gratuita, un certificado para tu servidor web para un periodo de 30 días, reconocido por la autoridad VeriSign.
Tras crear lso archivos de certificado, tenemos
Tras rellenar el formulario de la página y aceptar los términos, recibiremos un email con una serie de instrucciones para generar el certificado.
El certificado estará compuesto por tres archivos, Root CA Certificate que debe ser incorporado al navegador, Intermediate CA Certificate y el certificado público que deben ser alojados en la máquina que contenga el servidor web.
Ahora tenemos que añadir las rutas de estos archivos y el archivo de clave privada, en el servidor o VirtualHost que queremos configurar con acceso seguro.

Se ha comentado la directiva referente al certificado autofirmado.
Tras reinicar el servidor Apache, ya podemos acceder a nuestra página con certificado de autoridad de prueba.

Comments