Si has instalado IIS en un Window Server para tener tus páginas Web escritas en ASP o .NET (incluso PHP en IIS), seguramente querrás que estas webs estén bajo HTTPS para que las webs sean más seguras. Desde hace varios años existe el servicio de Let’s Encrypt que permite generar certificados SSL de forma gratuita y que se renuevan cada 90 días.
Para adquirirlo e instalarlo en IIS de un Windows Server (en sus versiones 2012, 2016, 2019 y 2022) puedes seguir los siguientes pasos que se indican a continuación.
Comprobaciones previas
Para generar el certificado SSL en el servidor, tienes que tener en cuenta que el dominio debe estar apuntando a la IP del servidor. Puedes encontrar en el siguiente enlace como configurar la Zona DNS de tu dominio con nuestros NS. Adicionalmente, si el dominio tiene algún alias debe de tener también un registro en la zona DNS (por ejemplo, para que responda por www.).
Por lo tanto, en la configuración del dominio en el IIS debe de tener los Bindings de los registros configurados (no es necesario añadir www, es opcional, pero también recomendable):
Para generar el certificado puedes utilizar win-acme y puedes descargarlo desde la página de release del repositorio de GitHub. Tendrás que descargar la última versión disponible (evita versiones Beta). Por ejemplo, en el artículo se ha descargado la versión 2.0.10.444. Recuerda utilizar la versión para Windows (no utilices versiones para Azure, Dreamhost o Route53).
Para ejecutar este cliente de Let’s Encrypt, seguramente será necesario instalar .Net Framework 4.8. Por lo que si no lo tienes instalado, puedes revisar el siguiente artículo: Cómo instalar .NET Framework en Windows Server 2022, 2019, 2016 y 2012
Con todo esto, ya podrás instalar el certificado SSL de Let’s Encrypt utilizando el ACME.
Instalación de Certificado
Lo primero que tendrás que hacer es ejecutar el ejecutable wacs.exe como administrador (haciendo clic en Run as administrator):
El siguiente paso será seguir las instrucciones que se indican en la ventana que se abre:
Selecciona la opción N para crear un nuevo certificado para IIS:
A continuación, elige la opción 2. Que es para crear un certificado para todos los bindings de IIS configurados (en este ejemplo, con y sin www):
Posteriormente, tendrás que escoger el dominio a cual quieres adquirir el certificado (si tenéis más dominios en IIS debería de aparecer una lista más larga, en este tutorial únicamente hay un dominio):
Y finalmente, selecciona el dominio principal al que quieres redirigir (por ejemplo que de www redirija sin www), en este caso escoge la opción 2:
Y luego te pedirá que pongas un e-mail para las notificaciones de la renovación, si quieres puedes leer los términos de uso y aceptarlos para poder adquirir el certificado. Tras esto empezará a adquirir y configurar el certificado:
Y tras esto ya tendrás el certificado configurado en el IIS. Si ahora vuelves a revisar los Bindings verás que se habrán creado dos más (para www y sin www) y esta vez apuntando al puerto 443. También puedes revisar que el certificado se ha configurado correctamente con esta web: SSL Checker | SSLShopper
Recuerda que para crear una redirección de HTTP a HTTPS desde IIS, puedes utilizar la extensión URL rewrite y puedes descargarla desde la página oficial haciendo clic aquí.
Adicionalmente, informar sobre la renovación del certificado que el cliente WACS crea automáticamente una tarea programada en el servidor para que se vaya verificándolo o renovándolo en caso necesario cada día a las 9 de la mañana.
Esperamos haberte ayudado con este artículo. Si te quedan dudas sobre esta u otra cuestión relacionada con tus servidores en Clouding, escríbenos a soporte@clouding.io. ¡Estamos para ayudarte! 😉