Let's Encrypt

什么是 Let's Encrypt?

Let's Encrypt 是免费的证书颁发机构。它自动且免费地签发让网站启用 https 的证书,也是如今大部分网络都已加密的原因。

与工程师沟通 知识库
示意图:访问者与服务器之间通过 TLS 加密的连接,服务器出示其证书

它是什么

Let's Encrypt 由非营利组织 Internet Security Research Group 运营,于 2015 年开始签发证书。它的证书受所有主流浏览器和操作系统信任。它们是经过域名验证的 SSL 证书:Let's Encrypt 只检查您是否控制该域名,除此之外不检查任何东西。

流程如何运作

无需填写表单,也无需付费。服务器上的软件(称为 ACME 客户端)向 Let's Encrypt 申请证书。Let's Encrypt 回复一个质询,以证明对域名的控制权,质询形式要么是服务器必须在指定地址发布的一个文件,要么是必须出现在 DNS 中的一条记录。验证通过后,证书即被签发并安装。同一软件会在证书到期前续期。

  • Certbot:最知名的客户端,由电子前哨基金会(Electronic Frontier Foundation)维护。
  • 内置支持:Caddy 和 Traefik 等 Web 服务器和代理、大多数托管控制面板,以及 OPNsense 等防火墙,都可以自行申请证书。
  • 在 Kubernetes 中:cert-manager 为 Kubernetes 集群中的服务申请并续期证书。

依赖它之前需要了解的事

  • 设计上有效期很短:证书的有效期一直是 90 天,Let's Encrypt 正在转向更短的期限。续期必须自动进行。手动续期的证书最终总会被遗忘。
  • 通配符需要 DNS:覆盖每个子域名的证书只能通过 DNS 记录来证明,因此客户端需要能访问您的 DNS 服务商。
  • 内部系统:无法从互联网访问的服务器,只要使用真实的域名,仍然可以通过 DNS 方式获得证书。
  • 频率限制:对一个域名在一段时间内可申请的证书数量有限制。正常使用不会触及,但配置错误的脚本可能会。
  • 不做企业验证:它不签发组织验证或扩展验证证书。很少有网站需要这些。
  • 盯紧续期:当 DNS 变更、防火墙规则移动或服务器重建时,自动续期会悄无声息地失败。请监控到期日期。

KawaConnect 如何使用 Let's Encrypt

我们在自己构建的 Linux 服务器、反向代理和 Kubernetes 集群上使用 Let's Encrypt 证书,续期自动化,并监控到期日期。当网站位于 Cloudflare 之后时,访问者看到的证书来自 Cloudflare,服务器上的证书则另行处理。我们会记录每个系统使用哪种方式,以便快速追查续期问题。

相关服务

Linux 服务器支持

证书可自行续期的服务器。

Kubernetes 咨询

采用自动化证书管理的集群。

网站

通过 https 构建并托管的网站。

了解更多

证书出人意料地过期

告诉我们哪些系统使用证书。我们会设置自动续期,并在其中任何一个到期之前发出警告。

开始沟通