Traefik使用ZeroSSL替换LetsEncrypt生成SSL证书
2021-05-01 • 预计阅读时间 1 分钟
2021-05-01 • 预计阅读时间 1 分钟
LetsEncrypt 的出现让大家能够更方便的使用SSL证书,解决了最大的证书成本的问题……特别是后期ACME的出现,自动续期。相当于无限免费了。不过毕竟不是免费,而且LetsEncrypt 的网站也是各种限制,导致有时不是那么容易申请到新的证书。另外只有这一个方案的话,万一那天悲剧了,总要有个后备。ZeroSSL现在可以说是一个不错的备选方案,目前没有请求限制,只是要求External Account Binding (EAB)
。注册一下,在开发选项里面就能看到了。
目前只有Traefik2.4
支持使用ZeroSSL
来动态获取证书。在traefik
的静态配置文件中增加如下内容
certificatesResolvers:
zerossl:
acme:
caServer: https://acme.zerossl.com/v2/DV90
email: zerossl@example.com
storage: acme.json
dnsChallenge:
provider: cloudflare
resolvers:
- "1.1.1.1:53"
- "1.0.0.1:53"
eab:
kid: abc123xyz
hmacEncoded: abc123xzy
然后给容器增加如下的标签
- traefik.http.routers.yacht.tls.certresolver=zerossl
另外域名的CAA
需要设置为sectigo.com
之后重启容器如果一切顺利的话,就能够获得新的证书了。