Let’s Encrypt|DNS API 免费申请 泛域名|野卡证书|ACME.SH 方式|

cera cera

内容

Let's Encrypt: DNS API 免费申请 泛域名 / 野卡证书(ACME.SH 方式)

注意

  • 本教程基于 Debian,其他用户类比即可
    注意教程内容是基于测试版签发写的!正式版本是 2 月 27 日发布。 正式版本 3 月 14 日凌晨发布,已进行签发测试
    目前仅支持 DNS 方式(常规都行,如 CloudXNS、DNSpod、Cloudflare 等),暂不支持 Standalone
    下文以 CloudXNS 为例。
  • 其他 DNS 参考这个文章:https://github.com/Neilpang/acme.sh/blob/master/dnsapi/README.md

过程

  • 下载相关依赖
apt-get update &&  apt-get install curl -y && apt-get install cron -y && apt-get install socat -y
  • 下载 ACME.SH
curl https://get.acme.sh | sh

Let's Encrypt: DNS API 免费申请 泛域名 / 野卡证书(ACME.SH 方式)

API KEY:  XXXXXXXXXXX
SECRET KEY:YYYYYYYYYYYY

Let's Encrypt: DNS API 免费申请 泛域名 / 野卡证书(ACME.SH 方式)

注意:有问题可将你安装 ACME.SH 的 VPS IP 设置进入白名单!!!!(似乎不设置代表的是全通过,主要是怕你之前配过IP清单)

  • 将Cloudxns 的key等信息配置好
export CX_Key="1234"
export CX_Secret="sADDsdasdgdsf"
  • 执行签发程序此处以我的域名为例 yangmaodang.org
~/.acme.sh/acme.sh   --dns dns_cx --issue -d yangmaodang.org  -d *.yangmaodang.org
  • 证书获取, 此处以我的域名为例 yangmaodang.org
    CSR、KEY、CERT 都在此路径下:
/root/.acme.sh/yangmaodang.org/

Let's Encrypt: DNS API 免费申请 泛域名 / 野卡证书(ACME.SH 方式)

  • Nginx 配置使用证书
# domain自行替换成自己的域名
server {
    server_name xx.yangmaodang.org;
    listen 443 http2 ssl;
    ssl_certificate /root/.acme.sh/yangmaodang.org/fullchain.cer;
    ssl_certificate_key /root/.acme.sh/yangmaodang.org/yangmaodang.org.key;
    ssl_trusted_certificate  /root/.acme.sh/yangmaodang.org/ca.cer;

    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host;
        proxy_pass http://127.0.0.1:10086;
    }
}

 

关于自动续期

  • 泛域名证书默认是90天有效期
  • 在第一次使用 ACME.SH 成功之后,会记录下 App_Key 跟 App_Secret,并且生成一个定时任务,每天凌晨0:00 自动检测过期域名并且自动续期。
  • 对这种方式有顾虑的,可以自行删掉用户级的定时任务,并且清理掉~/.acme.sh 文件夹即可

cera cloudiplc tengxunyun

相关推荐