在Windows Server上也能利用ACME自动化

发布时间:2025/7/30 14:32:24 打印 字号:

ACME协议是一种现代自动化工具,主要用于Linux服务器,但在Windows生态系统中应用并不广泛。您是否想在WindowsServer上实现证书自动化,但不知如何操作?我们将向您展示如何在WindowsServer上轻松使用ACME,包括证书设置和自动续订。

ACME的用途是什么? 

首先,我们来简单回顾一下ACME协议的用途以及它的巨大优势。维基百科将其定义为一种通信协议,用于自动化证书颁发机构与其用户Web服务器之间的交互,从而以极低的成本实现公钥基础设施的自动化部署。

 使用ACME,您可以轻松地从受信任的CA申请并获取TLS证书。整个过程由ACME机器人负责,该机器人通常可以将新证书部署到Web服务器。这种做法在Linux服务器环境中非常普遍,但在Windows环境中,许多管理员仍然不了解ACME机器人,它甚至可以安装证书。

 使用ACME证书的先决条件 

要使用ACME协议自动获取和部署证书,需要满足一些先决条件。

 由于通过ACME协议申请证书后会自动签发,因此在实际申请证书之前,当然需要执行申请人验证。预验证域名已添加到此步骤中。

 只需告诉我们您对ACME感兴趣即可。我们的支持团队将使用DigiCert验证您的组织,并验证您想要保护的域名。最后一步是生成每个产品独有的ACME方法。例如,如果您要颁发ThawteOV和ThawteEV证书,您将为每个证书分别拥有一个唯一的ACME密钥,您可以使用该密钥在客户端中确定应为特定域名颁发哪个证书。

 然后,您将与Gworg商家商定结算方式——最好是预充值。您也可以针对一定数量的证书获取一次性发票。

 注意:DigiCert认证流程已简化。该请求不再通过DNS/FILE质询对域名进行身份验证,因为该域名已通过组织机构的身份验证。 

选择正确的客户端及其设置 

ACME客户端有很多,其中最常见的是Certbot。选择它绝对不会错。然而,绝大多数可用的客户端都是为Linux服务器或其他类似平台设计的,几乎没有GUI。ACME客户端通常通过命令行界面进行控制。

 Windows和Windows Server有许多可用的选项,但您经常会发现客户端无法完成获取和安装过程。ACMEWindows客户端最棘手的功能是无法在IIS中部署(绑定)新证书。一些客户端也提供图形用户界面(GUI),但目前尚不清楚它们是否能正常工作,尤其是它们是否能与DigiCert的ACME实现兼容。

 我们决定寻找并推荐一个具体的、功能齐全的解决方案和一个客户端,它不仅可以从DigiCert获取证书,还可以安装它。它是一个win-acme客户端,您可以从官方网站下载。

 如何设置和使用win-acme 

正如我们上面提到的,为了向DigiCert进行身份验证,ACME客户端需要一个密钥,我们提供该密钥,您可以在win-acme客户端中进行设置。

 从官方网站下载客户端并解压。先不要运行程序,而是打开setting.json文件。在这个文本文件中,您会在“Acme”部分看到三个ACMEURL,请将它们全部更改为“https://acme.digicert.com/v2/acme/directory/”。否则,程序将无法识别它应该与DigiCert  ACME通信。

 只有完成这些修改后,您才能运行wacs.exe文件。您可能会看到Smartscreen警告,因为该应用程序未经数字签名。您必须绕过这个问题。 

初创企业提供 Win-acme 优惠

 启动应用程序后,请勿立即尝试颁发证书,您必须先设置ACME凭证。首先选择O(更多选项),然后选择A(Acme详细信息)。程序将提示您输入密钥标识符,然后输入Base64编码的密钥-您将收到我们发送的密钥ID和HMAC密钥(如此命名)。请先输入短密钥,然后再输入长密钥。输入完成后,返回主菜单。

 继续签发证书。在主菜单中选择“N”,然后按照向导的指引操作。检索新证书时,它会检索IIS中的站点数据并提供给您选择。只需选择要用作证书CN的域名即可。 

 它首先询问您要扫描的网站,然后从IIS获取主机名。对话会通过回答y(es)或n(o)来确认,并且默认选项始终会高亮显示。在后续对话中,win-acme机器人会向您展示它在给定主机名上找到的绑定。它是一个域名及其所关联证书的列表。同样,您可以选择正确的选项,或者确认默认选项(通常情况下,如果您的IIS中只有一个网站)。 

 随后,win-acme将通过ACME协议连接到DigiCert,并尝试获取新的TLS证书。需要提醒您,我们生成的ACME密钥决定了证书的种类以及颁发对象。注意:颁发证书之前,需要验证组织和域名。如果您的组织以及要使用的域名均已通过DigiCert验证,则您可以开始颁发证书。

证书颁发后(通常只需几秒钟),新证书将在IIS中设置到之前选择的域名,因此您无需费力地导入证书并编辑绑定。下方将显示证书颁发成功的确认信息,以及证书已分配到IIS中所选域名的确认信息。证书从颁发那一刻起生效,一切就完成了! 

证书颁发和安装成功的确认

 您无需担心证书续订。win-acme客户端会在指定的服务器/工作站上创建一个事件,该事件每天重复。任何即将过期的证书都会每天启动并续订。

 结论 

ACME协议是自动化证书生命周期的强大助手。立即部署它,它可以为您节省每年数百小时的手动管理TLS证书的时间。请联系我们的Gworg支持团队获取ACMEURL。