Aproveche las ventajas de la automatización ACME en un servidor Windows

24/2/2022 | Jindřich Zechmeister

El protocolo ACME es una herramienta moderna de automatización utilizada principalmente en servidores Linux, ya que no se encuentra en los sistemas de Windows. ¿Le gustaría automatizar los certificados en su Servidor Windows, pero no sabe cómo? Le mostraremos lo fácil que es utilizar ACME en el Servidor Windows, incluyendo la configuración de certificados y la renovación automática.

¿Para qué sirve ACME?

Para empezar, recordemos brevemente para qué sirve el protocolo ACME y cuál es su invaluable ventaja. Wikipedia lo define como un protocolo de comunicación para automatizar las interacciones entre las autoridades de certificación y los servidores web de sus usuarios, permitiendo la implementación automatizada de infraestructura de clave pública a muy bajo costo.

Con ACME, puedes solicitar y obtener fácilmente un certificado TLS de una CA confiable. Todo el proceso lo lleva a cabo el bot de ACME, que generalmente puede desplegar el nuevo certificado en el servidor web. El uso es generalizado en el entorno de servidores Linux, pero, por el contrario, en el entorno de Windows, muchos administradores aún no conocen el bot de ACME, que incluso podría instalar el certificado.

Requisitos previos para usar el certificado ACME

Para automatizar la adquisición e implementación de un certificado utilizando el protocolo ACME, se deben cumplir unos pocos requisitos previos.

Dado que la emisión de un certificado después de su solicitud a través del protocolo ACME es automática, es necesario realizar la verificación del solicitante antes de la solicitud real del certificado. A esto se le añaden dominios pre-verificados.

Simplemente háznos saber que estás interesado en ACME. Luego, nuestro soporte verificará tu organización con DigiCert y también verificará los dominios que deseas asegurar. El último paso es generar enfoques ACME únicos para cada producto. Así que si deseas emitir, por ejemplo, un certificado Thawte OV y Thawte EV, tendrás una clave ACME única para cada uno de ellos, con la cual determinarás en el cliente exactamente qué certificado debe emitirse para un dominio dado.

Luego acordarás una forma de facturación con los comerciantes de SSLmarket, preferiblemente con crédito pre-cargado. También es posible obtener una factura única por un cierto número de certificados.

Elegir el cliente adecuado y su configuración

Hay una gran cantidad de clientes ACME disponibles, el más común es Certbot. Definitivamente no te equivocarás con esta elección. Sin embargo, la gran mayoría de los clientes disponibles están diseñados para servidores Linux u otras plataformas similares, y prácticamente ninguno tiene una interfaz gráfica de usuario (GUI). Los clientes ACME generalmente se controlan a través de la interfaz de línea de comandos.

Hay varias opciones disponibles para Windows y Windows Server, pero a menudo encontraras que el cliente no puede completar el proceso de adquisición e instalación. La característica más problemática de los clientes ACME para Windows es la incapacidad de desplegar (asociar) un nuevo certificado en IIS. Algunos clientes también ofrecen una interfaz gráfica de usuario (GUI), pero no está claro si funcionarán bien y, especialmente, si funcionarán con la implementación ACME de DigiCert.

Decidimos encontrar y recomendar una solución específica, completamente funcional y un cliente que no solo pueda obtener un certificado de DigiCert, sino también instalarlo. Es un cliente win-acme, que puedes descargar desde el sitio web oficial.

Cómo configurar y utilizar win-acme

Como mencionamos anteriormente, para autenticarse con DigiCert, el cliente ACME necesita una clave, que nosotros proporcionamos y tú configuras en el cliente win-acme.

Descarga el cliente desde el sitio web oficial y descomprímelo. No ejecutes el programa todavía y en su lugar abre el archivo setting.json. En este archivo de texto, verás tres URLs de ACME en la sección "Acme", cámbialas todas a "https://acme.digicert.com/v2/acme/directory/". De lo contrario, el programa no sabrá que debe comunicarse con DigiCert ACME.

Sólo después de estas modificaciones puedes ejecutar el archivo wacs.exe. Es probable que veas una advertencia de Smartscreen porque la aplicación no está firmada digitalmente. Tienes que pasar por alto eso.

Win-acme oferta al inicio
Win-acme oferta al inicio

Después de iniciar la aplicación, no intentes emitir un certificado inmediatamente, primero debes configurar las credenciales ACME. Selecciona O (Más opciones) primero y luego A (Detalles ACME). El programa te pedirá que ingreses el Identificador de Llave y luego la Llave en Base64 - recibirás ambos datos de nuestra parte como KID y una llave HMAC (así se llama). Ingrésalos en orden más corto y luego más largo. Después de ingresar, vuelve al menú principal.

Procede a la emisión del certificado. Selecciona N desde el menú principal y sigue las indicaciones del asistente. Al recuperar un nuevo certificado, obtendrá datos de Sitios en IIS y se los ofrecerá para selección. Simplemente elige qué dominio deseas usar como el CN del certificado.

Primero te pregunta por el sitio web para escanear y luego obtiene el nombre de host desde IIS. Los diálogos se confirman con la respuesta y(es) o n(o) y la opción predeterminada siempre está resaltada. En el diálogo posterior, el bot win-acme te mostrará las asociaciones que encontró en el nombre de host dado. Es una lista de dominios y certificados vinculados a ellos. Nuevamente, eliges la opción correcta, o puedes confirmar la elección predeterminada (típicamente si solo tienes un sitio web en IIS).

Posteriormente, win-acme se conectará a DigiCert a través del protocolo ACME e intentará obtener un nuevo certificado TLS. Te recordamos que las llaves ACME generadas por nosotros determinan qué certificado será y para quién será emitido.

Después de que se emita el certificado, lo cual típicamente toma unos pocos segundos, el nuevo certificado se configura en el dominio previamente seleccionado en IIS, por lo que no tendrás que importar laboriosamente el certificado y editar las Asociaciones. A continuación puedes ver la confirmación de la emisión exitosa del certificado y la confirmación de que se asignó al dominio seleccionado en IIS. ¡Está activo desde ese momento y todo está hecho!

Confirmación de emisión exitosa y asignación del certificado
Confirmación de emisión exitosa y asignación del certificado

No necesitas preocuparte por renovar el certificado. El cliente win-acme crea un evento en el servidor/estación dado, que se repite diariamente. Cualquier certificado que esté por expirar se iniciará y renovará todos los días.

Conclusión

El protocolo ACME es un poderoso ayudante para automatizar el ciclo de vida del certificado. No dudes en implementarlo, ya que puede ahorrarte cientos de horas al año dedicadas a gestionar manualmente los certificados TLS. Contacta con nuestro soporte de SSLmarket para obtener una URL de ACME.