用“野卡”免费上车!参考消息V2EX

签发泛域名证书的过程是需要 DNS 验证的,acme.sh 这个小工具已经完美解决了这个问题。所以,不考虑其他问题的情况下,简单地使用 DNS API 给托管于 CloudFlare DNS 上的网站域名签发证书就像下面这样的操作。

准备工作:我们需要安装 acme.sh 这个小工具,而安装步骤也轻量化到只要一行命令即可实现。

1
curl https://get.acme.sh | sh

基本操作:签发域名证书

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
#首先,将DNS的API Key, Email作为环境变量
export CF_Key="54137b2be342edfe9df131f9115c4893dd3f3"
export CF_Email="domains@exmaple.com"

#然后,签发一个带通配符的ECC证书
acme.sh --issue --dns dns_cf --keylength ec-256 \
    -d trafficmgr.net \
    -d *.trafficmgr.net

#最后,把这个证书安装到目标位置
acme.sh --installcert -d trafficmgr.net --ecc \
    --cert-file /path/to/ecc_cert.pem \
    --key-file /path/to/ecc_key.pem \
    --fullchain-file /path/to/ecc_fullchain.pem \
    --reloadcmd "systemctl restart nginx"

我们所使用的 acme.sh,不仅支持 Cloudflare 同样也支持 DNSPod,而所有支持的 API 列表请看这里