使用 win-acme 申请泛域名证书
win-acme 是一个可以在 Windows 系统上运行的免费、开源的证书申请工具,支持申请 Let's Encrypt 签发的 SSL/TLS 证书,包括泛域名证书。
本文详细讲解如何在 Windows 系统中使用 win-acme,基于 Cloudflare 申请泛域名证书。
为什么使用泛域名证书?
泛域名证书和单域名证书的区别在于它们可以保护的域名范围不同。单域名证书只能保护一个具体的域名,而泛域名证书则可以保护一个域名下的所有子域名。
举例来说,假设你有一个域名 example.com,单域名证书只能保护该域名,而泛域名证书可以保护 example.com 及其所有子域名,例如 blog.example.com、shop.example.com 等。
使用泛域名证书可以大大简化证书管理工作,特别是当你有多个子域名需要保护时。使用单域名证书需要为每个子域名分别申请和维护证书,而泛域名证书可以一次申请并保护所有子域名。
因此推荐使用泛域名证书。
win-acme 下载安装
本文使用的 win-acme 版本为:win-acme.v2.2.6.1571.x64.pluggable
下载 win-acme
可以从 win-acme 官网(https://www.win-acme.com/)下载最新版本的工具,下载完成后解压到某个目录下。
特别注意,由于要使用 cloudflare 插件,因此一定要下载
pluggable
版本。github 上最新版本地址:github release latest
下载 plugin.validation.dns.cloudflare
该插件用于在申请证书时,使用 cloudflare API 进行证书验证。
创建 Cloudflare DNS
在 Cloudflare DNS 中添加域名解析。
如果域名解析服务是阿里、华为等服务商,需要将域名的解析切换到 Cloudflare,具体方法可以在网上搜索下,此处不赘述。
生成 Cloudflare API Token
从 我的个人资料 里创建 API 令牌。
开始生成证书
使用
wacs --verbose
启动 win-acme使用
--verbose
启动时,可以查看 cloudflare 插件是否加载成功。选择创建方式
输入
m
使用完整选项的方式来创建。选择指定域名的方式
输入
2
来手动输入手动输入泛域名
泛域名的格式为
*.domain
,例如:*.uamazing.cn
选择证书保存的方式
输入
1
来将同一个域名保存到同一个文件中选择 DNS 验证方式
输入
6
使用 Cloudflare DNS 验证,然后会让你输入 Cloudflare DNS API Token。将上方中生成的 Token 复制到命令行中即可。选择加密方式和保存位置
设置密码和其它保存位置
都选择无
选择是否执行其它操作
输入
3
,表示不进行操作这一步输入完成后,就会在指定的目录里自动生成相应的证书。
添加任务计划定时自动更新证书
若要添加任务计划自动更新证书,需要使用管理员身份启动命令行,否则会报如下错误: