Caddy 让 HTTPS 的签发与续期全自动
这套自动化包着 ACME 协议,但仍要遵守公开规则:挑战必须经过网络校验,若源站躲在负载均衡后面,可改用 DNS 挑战而不是 HTTP 挑战。 一行配置就足够 默认情况下 Caddy 一条 file-server(或 tls)指令就把自动 HTTPS 打开:它生成密钥对、驱动 ACME 协议向证书机构申请证书,并把证书与密钥以域名派生的 ID 存进自身数据目录,下次启动直接复用而不是每次重签发。你无需手工处理授权步骤,但仍要守住边界:域名的挑战要么能通过公网直接验证,要么改用支持相应方式的 DNS 挑战——验证必须发生在能够回答它的那一层。 监视、续期、重载 续期不是需要你盯着的批处理,而是 Caddy 进程内的监视循环:它跟踪每张证书,在到期前留足余量自动重新签发,并把新证书无缝载入而无需重启。长期运行的服务因此不会慢慢变旧、揣着一份过期证书。真正该你负责的是外部契约:续期那一刻,域名仍解析到这台机器,或 DNS 挑战仍能通过。任何无关的 DNS 或 CDN 变动,都可能让这份"自动续期"悄悄失灵。 不是每个网关都需要 在完全掌控的小站点上它最好用。一旦第三方 CDN 挡在前面,HTTP 挑战就可能被分流:公网 443 由 CDN 应答,挑战请求走到错误的一层——这正是 DNS 挑战存在的理由。若托管 CDN 已成为 TLS 终点,CDN 自身的自动证书反而更合理,Caddy 的这套可能显得冗余。判断标准只有一句:谁终止 TLS、谁有资格回答挑战。据此决定保留 Caddy 自动证书还是交给 CDN。 ...