BuyPass 和 ZeroSSL,支持 ACME 自动化的免费证书

Let's Encrypt 可能是最著名的免费 SSL 证书服务商。然而,其根证书(DST Root X3)将于 2021 年 9 月 1 日过期。自 2021 年 1 月 11 日起,Let's Encrypt 的 API 会默认使用新的根(ISRG Root X1)签发证书。而新根大概于 2016 年才引进,兼容性就不太乐观了。你可以选择修改参数再用旧根撑一阵,或者另寻其他免费证书。

比如 BuyPass,早就支持 ACME 标准,提供免费 SSL 证书申请。最近,我在 acme.sh wiki 看到,ZeroSSL 也开始提供类似服务。两家都支持 ACME,也就是说,你不需要更换现有客户端(Cerbot、acme.sh 等),只需作少许改动即可切换至新的 CA,简单签发,自动续期。

BuyPass

BuyPass 提供的证书,有效期长达 180 天。每张证书可提供 5 个域名。不支持泛域名。支持 ECC 证书,但根证书仍然是 RSA。

使用 acme.sh 签发 BuyPass 证书需要指定 --server 参数为 https://api.buypass.com/acme/directory

首先需要注册账户(将 me@example.com 换成你的邮箱):

acme.sh --server https://api.buypass.com/acme/directory \
        --register-account  --accountemail me@example.com

然后便可以像签发其他 CA 证书一样签发 BuyPass CA 的证书,只是多带上 --server https://api.buypass.com/acme/directory 参数,以及设定更长的续期天数:

acme.sh --server https://api.buypass.com/acme/directory  \
         --issue -d example.com -d www.example.com ..... \
         --days 170 \
         --dns dns_cf

手动 renew 的时候不需要再带上 --server 参数。

如果你设定了 CAA 记录,请允许 host buypass.nobuypass.com

ZeroSSL

上次博客提到 ZeroSSL 的时候还只是 Let's Encrypt 的网页工具,现在已经自己提供证书服务了。你可以在它家网站上申请及管理证书,或者接着用 ACME 客户端,本文仍然以 acme.sh 为例。ZeroSSL 的 --server 参数为 zerossl

与 BuyPass 相似,首次使用需注册:

acme.sh  --register-account  -m myemail@example.com --server zerossl

签发时带上参数 --server zerossl

acme.sh --server zerossl  \
     --issue  -d  example.com \
     --dns dns_cf

手动 renew 不需带上 --server 参数。

后面会看到,签发的证书归根究底是 Sectigo 提供的,因此如果你设置了 CAA 记录,添加所需 host comodoca.comusertrust.comtrust-provider.comsectigo.com(任选其一)。

演示与兼容性

我已经部署了相应的演示站,方便大家查看证书信息。方便起见,我仅签发了 RSA 证书。

BuyPass:https://buypass.demo.shansing.net/

ZeroSSL:https://zerossl.demo.shansing.net/

可用《HTTPS cipher suite 配置与检测》介绍的 MySSL 工具在线检测浏览器兼容性。

大体上,BuyPass 的兼容性略逊一筹,不支持 Android 4.2 及以下版本等,但应该会比 Let's Encrypt 的新根好;ZeroSSL 仰赖 Sectigo 兼容性最佳,而证书链稍长。有意思的是,MySSL 检测出 ZeroSSL/Sectigo 的证书不支持 iOS 9 及以下版本、OS X 10.11 及以下版本,是否误报我一时也无法验证。

若无特别说明,本文系原创,遵循 署名-非商业性使用 3.0 (CC BY-NC 3.0) 协议,转载文章请注明来自【闪星空间】,或链接上原文地址:http://shansing.com/read/497/

2 条评论

  1. 你的 ssl demo 已经过期了。 看不到效果了。 而我新申请的 zerossl 提示 stc错误,透明度问题。。

    1. ZeroSSL 的服务器连接感觉不稳定。我这主站本来也是用 ZeroSSL 的,硬是自动续费到过期都没成功,我才又手动换成 Let's Encrypt 的。

发表评论»

NO SPAMS! 不要发垃圾评论哦!

表情