使用acme.sh自动配置泛域名证书
一年前用学生邮箱白嫖的域名要到期了,于是换了个便宜的 .top
域名,正好之前忘了记录自动签证书的过程了,这里记录一下以后再换域名的时候直接来抄。
由于同时有很多子域名在用,于是决定申请泛域名证书,共用同一个。
主要参考 官方文档 ,记录了仅适用于我个人的配置过程。
安装 acme.sh
1 | curl https://get.acme.sh | sh -s [email protected] |
配置 DNS API
参考 官方文档
泛域名证书似乎需要用 DNS 验证,我的 DNS 解析是托管在 Cloudflare 上的,先登录获取 API 密钥,这里我图省事直接用了 Global API Key,然后:
1 | export CF_Key="sdfsdfsdfljlbjkljlkjsdfoiwje" |
生成/安装证书
生成证书:
1 | acme.sh --issue --dns dns_cf -d centaurus99.top -d *.centaurus99.top |
安装证书:
1 | acme.sh --install-cert -d centaurus99.top --key-file /etc/v2ray/v2ray.key --fullchain-file /etc/v2ray/v2ray.crt --reloadcmd "sudo nginx -s reload" |
据文档所说,DNS API 使用的变量,生成/安装参数都会被保存用于自动更新,60 天以后证书会自动更新并自动执行安装。下面再去 nginx 里配置证书位置即可。大功告成!
附录
1 | root@cc:~/.acme.sh# acme.sh -v |
使用acme.sh自动配置泛域名证书