完成centos7彻底自动化的生成letsencrypt通配符证书,整个过程花了我差很少一周的时间,其中有6天半的时间都是在搜集各类资料,当资料找齐以后,很快就完成了证书生成。
写下这篇文章但愿能为你节省6天半的时间。php
之全部可以实现自动化的ssl通配符证书要得益于两次更新
1.2018年3月letsencrypt开始支持通配符证书
2.certbo支持以hook的方式经过操做DNS服务商的API进行域名全部权的验证。html
咱们此次要用到两个工具
1.certbot
2.支持阿里云DNS的hookgit
操做过程
1.安装certbogithub
yum install certbot
2.获取dns验证插件centos
git clone https://github.com/ywdblog/certbot-letencrypt-wildcardcertificates-alydns-au cd certbot-letencrypt-wildcardcertificates-alydns-au chmod 0777 au.sh
3.在阿里云后台获取操做DNS服务的API key和密钥而后配置到au.sh文件里面的ALY_KEY 和 ALY_TOKEN工具
4.执行下面的操做就能够生成你的通配符证书了(注意两个域名的顺序)网站
certbot certonly -d example.com -d *.example.com --manual \ --preferred-challenges dns \ --manual-auth-hook "/脚本目录/au.sh php aly add" \ --manual-cleanup-hook "/脚本目录/au.sh php aly clean"
5.你能够经过Mozilla的ssl配置生成网站生成你的最佳配置阿里云
6.由于是通配符证书,因此你可能在不少虚拟主机上都会用到,那么你能够把ssl部分的配置写在一个单独文件里面,而后在其余须要用到的地方直接includecentos7
7.你能够经过这个网站来查看你的域名证书等级。插件