Desde hace ya un tiempo se hizo prácticamente obligatorio tener certificados que permitan tener a las páginas webs con certificados ssl para poder aparecer en mejor en los buscadores y evitar las alertas de seguridad a los usuarios cuando acceden a un sitio utilizando un sitio sin certificar.
Como usuario es importante verificar que los sitios a los que accedemos sean seguros, de esta forma sabemos que la información que cargamos en el portal (usuarios / contraseñas / datos personales) esta en la custodia de la plataforma a la que prendíamos acceder. Por ejemplo si el sitio no es seguro con la edición de un archivo de configuración en tu equipo, tocando una configuración en el router o en el DNS de tu ISP forzar a un equipo a acceder a una web maliciosa donde la url sea vea como la original ( DNS hijacking ).
El certificado es provisto por Let’s Encrypt, y es renovado por una utilidad llamada certbot
Consideraciones:
Asumo que si entraste acá ya tenes:
- Instalado Apache2
- Dado de alta uno o más de un Virtualhost
- El sitio esta en Internet y es accedido por un dominio ( delegaste el dominio, configuraste los DNS y publicaste el servicio en el puerto 80).
- Podes y sabes configurar el FW/Router para poder exponer el puerto 80 y 443 de tu servidor.
Procedimiento para configurar Apache2 https
Luego procedemos a instalar las utilidades que utilizaremos para gestionar los certificados.
sudo apt update sudo apt install certbot python3-certbot-apache
A continuación debemos configurar el FW/Router para que redirecciones las conexiones que se realicen en el puerto 443 a 443 del servidor donde queremos habilitar Apache2 https
Una vez que tenemos configurado esto debemos ejecutar el siguiente comando, que detectará los virtualhosts habilitados en el Apache y preguntará sobre cuales se quiere renovar/crear el certificado nuevo para configurar el Apache2 para que responda la solicitud https.
sudo certbot
Cerbot automáticamente habilitará los módulos de Apache2 necesarios para que funcione el protocolo https. Sobre el último paso se realizará la pregunta si queremos que las peticiones hechas sobre http se redireccionen al https o si se mantiene el/los sitios sobre los dos protocolos. Mi recomendación en redireccionar todo a https.
Finalizado este paso ya podemos navegar nuestro sitio con https sobre Apache2.