acmetool 是一款易于使用的命令行工具,可自动从 ACME 服务器(如 Let's Encrypt)获取证书。它旨在灵活地集成到您的 Web 服务器设置中,以实现自动验证。与官方的 Let's Encrypt 客户端不同,它不会修改您的 Web 服务器配置。
您可以使用端口 80 或 443 (如果您尚未在其中一个端口上运行服务器) 进行验证;通过 webroot;通过将您的 Web 服务器配置为将 `/.well-known/acme-challenge/` 的请求代理到特定端口 (402),acmetool 可以在此端口上监听;或者通过将您的 Web 服务器配置为不在端口 80 上监听,而将 acmetool 内置的 HTTPS 重定向器 (和挑战响应器) 运行在端口 80 上。如果您只想在端口 80 上对人员进行重定向到端口 443,这种方式是非常有用的。
您可以在 cron 任务中运行 acmetool 以自动续签证书(`acmetool --batch`)。 给定主机名的首选证书始终位于 `/var/lib/acme/live/HOSTNAME/{cert,chain,fullchain,privkey}`。您可以配置 acmetool 以在续签证书时自动重新加载 Web 服务器。
acmetool 的工作原理类似于 "make"。状态目录表示目标域名,每当调用 acmetool 时,它都会确保有效的证书可用来满足这些域名。证书必须