Como montar un servidor apache2 con ssl (https) en Docker

Ante la ausencia de ninguna guía o tutorial completo en internet para montar con docker un servidor http con apache2 y configurarlo para funcionar con mediante https, he decidido publicar esta entrada.

Antes de nada comentar que esta guía ha sido pensada para montar un servidor de pruebas, si se va a montar un servidor en producción es posible que tengas que realizar configuraciones de seguridad a mayores.

Lo primero necesitamos tener Docker instalado y funcionando. Vamos a partir de la imagen creada por MarvAmBass llamada docker-apache2-ssl-secure: https://github.com/MarvAmBass/docker-apache2-ssl-secure

Ahora vamos a crear un certificado SSL y firmarlo nosotros mismos, para ello vamos a ejecutar el siguiente comando. (al hacerlo así nos saltará una advertencia en el navegador al intentar entrar a nuestra página, si queremos evitar esto tendríamos que comprar un certificado a una entidad verificadora).

Esto generará un archivo key.pem y un archivo cert.pem dentro de la carpeta key.

Ahora vamos a crear la carpeta www donde irán los archivos html que cargará el servidor web.

 

Y por último lanzamos el servidor especificando la carpeta en la que se encuentran las claves y la carpeta donde se encuentran los archivos fuente.

Podemos comprobar que la imagen de Docker está funcionando con el comando docker ps además si navegamos hacia la ruta de nuestro servidor https://localhost/ debería cargar el archivo de prueba que creamos anteriormente.

Creative Commons License
Todohacker by 4m1g0 is licensed under a Creative Commons.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *