不忘初心,方得始终.

通过 DNS 验证方式获取 lets-encrypt 证书的快速脚本

折腾SSL的时候,在网上发现的优秀脚本,可以在没有搭建网站的时候,先用DNS验证一下来申请lets-encrypt证书,比如本站用的,还可以添加到计划任务来定时更新证书,比起Git python的配置真是so easy呀!

详细见GitHub,作者好像还有各种验证的脚本,我只用到了DNS版

首先下载脚本和配置文件

我用的是DNSPOD,就下载DNSPOD版本的

    wget https://github.com/xdtianyu/scripts/raw/master/le-dns/le-dnspod.sh
    wget https://github.com/xdtianyu/scripts/raw/master/le-dns/dnspod.conf
    chmod +x le-dnspod.sh

然后去DNSPOD申请一个D+的TOKEN key

填到dnspod.conf里面
修改其中的 TOKEN 为您的 dnspod api token ,注意格式为123456,556cxxxx。 修改 DOMAIN 为你的根域名,修改 CERT_DOMAINS 为您要签的域名列表,需要 ECC 证书时请取消 #ECC=TRUE 的注释。

    TOKEN="YOUR_TOKEN_ID,YOUR_API_TOKEN"
    RECORD_LINE="默认"
    DOMAIN="example.com"
    CERT_DOMAINS="example.com www.example.com im.example.com"
    #ECC=TRUE

填好后如下

    TOKEN="这里写key的数字编号,这里写KEY"
    RECORD_LINE="默认"
    DOMAIN="weicn.org"
    CERT_DOMAINS="weicn.org"
    ECC=TRUE

然后就可以运行试试

    ./le-dnspod.sh dnspod.conf

没有问题的话,运行完毕,在当前目录会生成一个certs文件夹,里面有个你域名的文件夹,里面就是你需要的证书了

    fullchain.pem #完整的证书链证书,如果是nginx就用这个
    privkey.pem #证书的私钥

配置一下nginx就可以用上高大上的ssl了。

当然国内也有免费的SSL证书Wosign,为期两年的,比lets-encrypt的三个月长多了,但是不支持ECC证书,所以申请一个备用也是不错的

仅有 1 条评论
  1. 禅猫

    这玩意不错,有没有支持cloudflare 呢

    禅猫 [Android 5.0.2 Chrome 40.0.2214.89] 回复
发表新评论 选择表情