使用acme.sh自动签发ssl证书

98 0 0 0

创建阿里云子账户用来管理域名解析

创建用户

image.png

image.png

在权限管理新增这两个权限

AliyunDomainFullAccess - 管理域名服务的权限
AliyunDNSFullAccess - 管理云解析(DNS)的权限

安装acme.sh

下载acme.sh

直接执行脚本安装不了就去github把acme.sh文件下载下来
中国大陆境内安装acme.sh

给执行权限

1
chmod 744 acme.sh

执行后会在用户目录生成.acme.sh文件夹

1
cd ~/.acme.sh

把阿里云信息配置到环境变量

1
2
export Ali_Key="刚才创建的阿里云账户" export Ali_Secret="刚才创建的阿里云账户"

生成证书

1
./acme.sh --issue --debug --dns dns_ali -d v-kun.com -d '*.v-kun.com'

如果证书中只包含泛域名,那么签发出来的证书是没有根域的。所以需要额外添加一个根域

安装证书

1
./acme.sh --install-cert -d v-kun.com --key-file /v-kun/program/nginx-1.26.1/cert/v-kun.com.key --fullchain-file /v-kun/program/nginx-1.26.1/cert/v-kun.com.pem --reloadcmd "/v-kun/program/nginx-1.26.1/sbin/nginx -s reload"

遇到问题

Can not find dns api hook for: dns_ali

如果只下载acme.sh还需要下载dnsapi/dns_ali.sh 放到~/.acme.sh目录

Error add txt for domain

需要将dns_ali.sh回退版本
https://github.com/acmesh-official/acme.sh/issues/6320

目录