使用acme申请泛域名SSL证书
获取acme脚本
1
| sudo curl https://get.acme.sh | sh
|
修改默认CA
由于当前最新的acme是以ZerroSSL作为默认CA方的,而他家的证书存在数量限制,如果我们需要申请多个证书时会有些不方便,所以一般我会将默认CA方变更为Let‘sEncrypt
1
| acme.sh --set-default-ca --server letsencrypt
|
这里使用DNS API模式进行申请证书
使用Cloudflare DNS API进行证书申请,需要获取API Key以及对应的账户邮箱。Cloudflare的API key可在“我的个人资料”->”API 密钥“中进行查看。
1 2
| export CF_Key="***********************" export CF_Email=**********@****.com
|
1
| acme.sh --issue -d example.com --dns dns_cf
|
nginx
1 2 3 4 5 6
| acme.sh --install-cert \ --domain example.com \ --cert-file /path/to/cert/cert.pem \ --key-file /path/to/keyfile/key.pem \ --fullchain-file /path/to/fullchain/fullchain.pem \ --reloadcmd "sudo systemctl reload nginx.service"
|
apache
1 2 3 4 5 6
| acme.sh --install-cert \ --domain example.com \ --cert-file /path/to/cert/cert.pem \ --key-file /path/to/keyfile/key.pem \ --fullchain-file /path/to/fullchain/fullchain.pem \ --reloadcmd "sudo systemctl reload apache2.service"
|
#### 查看当前系统环境下的所申请的证书信息
导出证书为pfx等格式,为emby或jellyfin使用
1 2
| acme.sh --install-cert -d example.com --key-file key.pem --cert-file cert.pem openssl pkcs12 -export -out emby.pfx -inkey key.pem -in cert.pem
|
注:
申请泛域名证书时-d参数为*.example.com
更多的证书申请方式可以参考官方Wiki