概述
首先说下什么是泛域名,比如我要做两个网站第一个网站是www.v456.net,第二个是M.v456.net,那么通常我要申请两个ssl证书来给每一个网站,但是泛域名就是我只要申请一个*.v456.net证书就能同时给两个网站使用了
环境准备
首先我们要有一台linux,debian系列的和红帽系列的都可以,之后我们安装一些环境依赖
- debian系列
apt-get update && apt-get install curl -y && apt-get install cron -y && apt-get install socat -y
- 红帽系列
yum update && yum install curl -y && yum install cron -y && yum install socat -y
下载ACME.SH并且执行
这个脚本就是用来申请免费证书的脚本
curl https://get.acme.sh | sh
导入阿里云的Access Key ID和Access Key Secret到环境变量中
阿里云的Access Key ID和Access Key Secret可以在下面这个页面中登录获取
https://account.aliyun.com/login/login.htm?oauth_callback=https%3A%2F%2Fak-console.aliyun.com%2F%3Fspm%3D5176.2020520001.0.0.0EJtVx#/accesskey
export Ali_Key=””
export Ali_Secret=””
申请证书
接下来就是申请证书了,大家把下面的v456.net换成自己的域名就好
~/.acme.sh/acme.sh –issue –dns dns_ali -d v456.net -d *.v456.net
出现下面这几行表示成功
[Thu Mar 15 11:09:05 CST 2018] Your cert is in /root/.acme.sh/v456.net/v456.net.cer [Thu Mar 15 11:09:05 CST 2018] Your cert key is in /root/.acme.sh/v456.net/v456.net.key [Thu Mar 15 11:09:05 CST 2018] The intermediate CA cert is in /root/.acme.sh/v456.net/ca.cer [Thu Mar 15 11:09:05 CST 2018] And the full chain certs is there: /root/.acme.sh/v456.net/fullchain.cer
之后把这些证书下载下来就好了,所有文件在.acme.sh/你的域名 目录下面
最后说几句
宝塔面板是支持一键申请Let’s Encrypt的证书的,但不是泛域名证书,不过方便了很多
———————————————-
第二种方法 此方法证书有效期是3个月 到时候再一样步骤操作一次
前提先安装一些环境依赖(上面有说明 然后下面)
一、首先下载ACME.SH,以下四条命令任选一条即可,随便选择一条安装。
curl https://get.acme.sh | sh wget -O - https://get.acme.sh | sh curl https://raw.githubusercontent.com/Neilpang/acme.sh/master/acme.sh | INSTALLONLINE=1 sh wget -O - https://raw.githubusercontent.com/Neilpang/acme.sh/master/acme.sh | INSTALLONLINE=1 sh

二、申请Let’s Encrypt免费泛域名证书的第一步获取验证DNS所需要的TXT记录,下面命令中两个“-d”建议先输入泛域名,这样在证书里可以显示*.v456.net这样的泛域名,显得比较吊一些。
cd /root/.acme.sh acme.sh --issue -d *.v456.net -d v456.net --dns \ --yes-I-know-dns-manual-mode-enough-go-ahead-please
运行后结果如下:

三、到域名DNS解析服务商处添加域名的TXT解析。
上面的命令运行后可能要等上一会,然后会出现下图的结果,其中绿色部分就是需要做TXT记录的主机头和TXT的解析值,因为上面第二里面两个“-d”,所以这里有两个解析值,把两个TXT都做了解析。
另外 阿里云的 TXT 主机记录只要填写 _acme-challenge 记录值复制绿色的填写进去。
等DSN解析生效后,运行以下命令
acme.sh –renew -d *.v456.net -d v456.net \
–yes-I-know-dns-manual-mode-enough-go-ahead-please
或者
acme.sh –issue –dns -d *. v456.net –yes-I-know-dns-manual-mode-enough-go-ahead-please –renew
或者
acme.sh –renew -d *.v456.net –dns –yes-I-know-dns-manual-mode-enough-go-ahead-please

五、Let’s Encrypt免费泛域名证书的申请已经结束了。
在/root/.acme.sh目录下会产生“*.v456.net”的文件夹,里面就是Let’s Encrypt的免费泛域名证书,我们只需要两个文件就可以了:fullchain.cer是完整的证书,包括了CA根证书,key是密钥,安装证书时需要用到。
只要就完成了