一键快速申请Let's Encrypt泛域名SSL证书及证书安装方法

Let’s Encrypt是目前使用最为广泛的免费SSL证书,早在2017年7月份起Let’s Encrypt官方就发布将在2018年上线泛域名免费SSL证书。现在终于可以申请Let’s Encrypt的泛域名免费SSL证书。暂时只能通过DNS方式获取,支持的DNS解析有很多,国内可以通过腾讯云的DNSPod.cn域名API和阿里云域名API自动颁发Let’s Encrypt泛域名免费SSL证书。

Let’s Encrypt泛域名申请准备工作

这篇文章后面用到的一键申请Let’s Encrypt泛域名SSL证书,是利用第三方域名DNS API接口快速申请的,如果我们域名有用哪家的DNS,然后到对应的商家申请API。

安装依赖程序

  1. Debian/Ubuntu
1
apt update -y && apt install  -y curl cron socat
  1. Centos
1
yum update -y && yum install  -y curl cron socat

下载ACME.SH

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

获取域名API

方法很简单,如果是腾讯云注册的域名,默认使用的是DNSPod.cn,然后把要申请免费证书的域名接入到DNSPod,并使用DNSPod的NS服务器进行解析。然后再按下图操作创建API。创建API后需要注意,弹出的窗口显示完整的“Token”,并且只显示这一次,所以请一定复制保存好。

申请安装证书

  1. 依次输入下面代码。DP_Id=””中请填写你的ID,DP_Key=””中请填写Token。
1
2
export DP_Id="*****"
export DP_Key="******"
  1. 输入下面命令申请免费SSL证书。其中代码中的“londy.cc”请改成自己域名即可。
1
~/.acme.sh/acme.sh --issue --dns dns_dp -d londy.cc -d *.londy.cc
  1. 接下来脚本会自动等待 120 秒来验证信息,签发成功后,就会给出 CSR、KEY、CERT 保存的路径 /root/.acme.sh/londy.cc/

  2. 显示如下信息表示申请成功。

1
2
3
4
[Fri Jan 22 10:51:59 CST 2018] Your cert is in  /root/.acme.sh/londy.cc/londy.cc.cer
[Fri Jan 22 10:51:59 CST 2018] Your cert key is in /root/.acme.sh/londy.cc/londy.cc.key
[Fri Jan 22 10:51:59 CST 2018] The intermediate CA cert is in /root/.acme.sh/londy.cc/ca.cer
[Fri Jan 22 10:51:59 CST 2018] And the full chain certs is there: /root/.acme.sh/londy.cc/fullchain.cer
  1. 将证书托管到腾讯云,然后再将 londy.cc.cer 的内容填到证书栏,将 londy.cc.key 的内容填到私钥栏,再点击上传证书即可。

自动续期

输入crontab -l 查看自动执行的脚本任务,看到如下脚本,证明自动续期已添加

15 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" >

到期自动续期!不放心可手动执行该脚本!

注意事项

  1. 在申请签发的过程中创建API后需要注意,弹出的窗口显示完整的“Token”,并且只显示这一次,所以请一定复制保存好。
  2. 下载 acme.sh脚本需要在 acme.sh 以及 github.com 拉取文件,所以国内的一些机器可能无法正常运行(一般服务器自带acme.sh)。
  3. 签发的证书有效期为 3 个月,之后需要重新申请。

如果你想查看其他DNS商家申请方法,可以点击此处

本文结束感谢您的阅读
0%