使用acme.sh申请通配符证书
acme.sh 实现了 acme
协议, 可以从 letsencrypt 生成免费的证书.
获取acme.sh
1 | curl https://get.acme.sh | sh |
获取证书
执行以下命令,本文以阿里云解析为例,申请Ali_Key和Ali_Secret
1 | export Ali_Key="abcd" |
三级域名需要*.xxx.domain.com
才可以使用
导出证书
1 | mkdir -p /data/ssl_cert/domain.com |
证书导出路径
1 | /data/ssl_cert/domain.com/domain.com.key |
设置定时续期
1 | 0 */72 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null |
72小时重载一次
为了配合证书生效,需要重载Nginx才行,所以添加一个定时重载Nginx
进行crontab编辑 crontab -e
1 | 0 */72 * * * /usr/sbin/service nginx reload > /dev/null |
72小时重载一次
关于阿里云的acme.sh泛域名申请到此结束
更换ACME.sh的CA为ZeroSSL
注册一个ZeroSSL账户
传送门:https://app.zerossl.com/signup
获取账户的EAB凭证,用来注册acme帐户
传送门:https://app.zerossl.com/developer
点击生成会生成你的eab-kid和eab-hmac-key,复制保存下来;
注册ACME帐户
1 | acme.sh --register-account --server zerossl \ |
切换默认CA
切换acme.sh的默认CA为ZeroSSL
1 | acme.sh --set-default-ca --server zerossl |