熟悉明月的都知道,明月一直都在使用 acme.sh 作为服务器端申请、部署、续期免费 SSL 证书的主要工具,今天在帮一个站长申请 SSL 证书的时候发现 acme.sh v3.0 开始默认的免费 SSL 证书变更为:ZeroSSL 了,这个 ZeroSSL 其实跟明月一直用的 Let's Encrypt 类似,在 2016 年就已经推出,和 Let's Encrypt 一样,证书有效期只有 90 天,支持泛域名 SSL 证书。和 Let's Encrypt 不同的是,ZeroSSL API 没有速率限制,不存在同一 IP 多次申请 SSL 证书被限制的问题,ZeroSSL 还提供了 WEB 界面可在后台管理 SSL 证书,相比 Let's Encrypt 功能更加丰富。
对于这个 ZeroSSL 证书明月很早就听说过,也顺手到其官网(Free SSL Certificates and SSL Tools - ZeroSSL)上注册了一个账号,有兴趣的朋友可以参考一下 ZeroSSL 官网的一篇有关 ZeroSSL VS Let's Encrypt 的对比文章(点击直达),对比下来相对于 Let's Encrypt 来说 ZeroSSL 最大的亮点就是带有一个 web 端的 SSL 证书查询和管理平台可以更加直观的管理申请的 SSL 证书,另外就是 ZeroSSL 还提供了比较完善的 API 接口便于二次开发啥的,简单点儿来说 ZeroSSL 更加适合有特殊高级用途的站点选择使用,对于我们普通仅仅需要 HTTPS 的站长们来说 Let's Encrypt 其实就完全够用了,所以明月这里不建议大家更换 Let's Encrypt 为 ZeroSSL。当然,善于折腾的站长也是可以考虑折腾一下的。
下面明月整理了部分 acme.sh 脚本指令供大家参考:
切换 acme.sh 默认 SSL 为 Let's Encrypt
acme.sh --set-default-ca --server letsencrypt
或者更换默认服务商为 ZeroSSL
acme.sh --set-default-ca --server zerossl
关联你的 ZeroSSL 账号(myemail@example.com 改成你自己的 ZeroSSL 邮箱,切忌不要乱填哦!)
acme.sh --register-account -m myemail@example.com --server zerossl
其实明月还是倾向于 Let's Encrypt 的免费 SSL 证书的,毕竟这么多年了都非常的稳定,如果你的站点 HTTPS 已经加入了预缓存就不建议随便更换 SSL 证书,继续维持原来的 SSL 证书即可。ZeroSSL 只是给我们了另一个选择而已,并且还获得了 acme.sh 脚本的完美支持!