证书从哪里来,如何交付。
这一页把 Certra 的技术边界说清楚:Caddy 和 ACME 做了什么,Waffo Pancake 做了什么,哪些事必须由你完成,以及为什么“年度服务”不是“单张证书有效一年”。
服务是什么
Certra 是一个托管型 TLS 证书服务。它不冒充证书颁发机构,使用 Let’s Encrypt、ZeroSSL 等公开可信 CA 的 ACME 接口签发 DV 证书。Caddy 负责 ACME 交互、证书存储和自动轮换;Certra 负责订单、支付、状态、访问控制与 PEM 交付。
公开 DV 证书通常可以免费获取。你为 Certra 支付的是验证、签发、轮换、交付、状态与支持服务,而不是“证书垄断费”。
证书寿命与年度服务
公开 TLS 证书的有效期受 CA/Browser Forum Baseline Requirements 约束,正在分阶段缩短:2026-03-15 起最长 200 天,2027-03-15 起最长 100 天,2029-03-15 起最长 47 天。不同 CA 的实际签发长度可能更短。
因此,$19.90/域名/年(或月付 $2.49 × 12 期,合计 $29.88)的正确含义是:在一年服务期内,Certra 持续维护签发配置、轮换证书并允许重新下载最新 PEM。它不是“给你一张 365 天不过期的证书”。如果你把 PEM 安装到自己的服务器,每次轮换后仍需要重新部署。
签发流程
- 客户提交域名与邮箱,Waffo Pancake 创建托管结账会话。
- 支付成功 webhook 经过 RSA-SHA256 验签,订单进入 paid / queued 状态。
- 边缘执行器领取订单,生成 Caddy 配置,Caddy 向 ACME CA 发起域名验证。
- 验证通过后证书落入 Caddy storage。执行器读取完整链、私钥、序列号、指纹与到期时间。
- Worker 只向持有订单访问令牌的客户代理 PEM 下载,不把私钥写入 D1。
DNS 验证
当前默认使用 ACME HTTP-01。签发期间,域名的 A 记录必须指向 Certra 的边缘节点,CA 能从公网访问 80 端口并读取挑战文件。Cloudflare 橙云会改变流量路径,因此签发时应使用 DNS only(灰云)。
会。把域名的 A 记录指向边缘节点后,在切换回你的源站之前,访问者会到达 Certra 的验证节点。对于生产站点,应安排维护窗口,或改用 DNS-01 / Caddy 反向代理架构。
安装 PEM
订单页提供 fullchain.pem 与 private-key.pem。私钥只应保存在目标服务器的受限制路径中。不要把它们发到聊天、邮件或代码仓库。
Nginx
Apache
Caddy
安装后请检查证书链、私钥权限和域名匹配。私钥权限建议为 0600,属主为运行 Web 服务的用户。
轮换与重新交付
Caddy 会在证书到期前自动轮换。Certra 的边缘执行器会重新读取同一域名的证书文件并更新订单记录,客户可在原订单页重新下载最新 PEM。导出的 PEM 不会自动安装到你的服务器,重新部署仍由你或你的自动化完成。
如果签发后你把 A 记录切回自己的源站,HTTP-01 轮换将再次需要把流量指向 Certra 边缘。需要长期无感轮换时,应改为 DNS-01(例如 Cloudflare API token、acme-dns)或让 Caddy 长期反向代理该域名。当前参考实现只包含 HTTP-01。
安全边界
- 订单访问令牌只保存哈希;私钥不进入 D1。
- Caddy Admin API 只在内网;履约 agent 的内部接口使用 Bearer secret。
- PEM 下载禁用缓存,并校验订单需处于 issued 状态。
- Waffo webhook 必须使用原始请求体验签,不能使用重新序列化的 JSON。
限制与未包含项
- 默认不支持 wildcard;wildcard 必须 DNS-01。
- 没有自动把 PEM 安装到客户源站;这是客户侧部署步骤。
- 默认使用 USD;实际可用卡组织和其他支付方式以 Waffo 后台审核结果为准。
- 没有内置邮件通知系统;请通过订单页或客服流程通知轮换。