之前Let’s Encrypt根证书过期导致站点证书全部失效,幸好及时补救回来,但经过那次教训再也不敢使用免费证书。不过后面听说acme.sh支持ZeroSSL,而且ZeroSSL还可以在他们平台查询管理证书和丰富的API,相比其他免费证书相当的人性化,所以选择试试,以备后面不时之需。
安装acme.sh
curl https://get.acme.sh | sh
创建脚本bash的alias, 方便快速调用
alias acme.sh=~/.acme.sh/acme.sh
查看版本号
acme.sh -v
更换默认服务商为ZeroSSL
acme.sh --set-default-ca --server zerossl
acme.sh之前的版本默认服务商为Let’s Encrypt,3.x之后默认服务商为ZeroSSL。
配置DNS API
使用DNS API方式,方便后续域名更新。acme.sh官方已经给了多个服务商的示例,我这里用的是cloudflare。
export CF_Key="66fa034bcf4f4a2b2323232323232" export CF_Email="[email protected]"
注册ZeroSSL并和acme.sh绑定
官网:https://zerossl.com/,注完成后将邮箱填写用于证书信息同步。
acme.sh --register-account -m [email protected] --server zerossl
申请ZeroSSL泛域名SSL证书
acme.sh --dns dns_cf --issue -d zwjun.cn -d *.zwjun.cn
部署证书
acme.sh --installcert -d zwjun.cn \ --key-file /home/ssl/zwjun.cn.key \ --fullchain-file /home/ssl/zwjun.cn.crt