网站 http 升级为 https Nginx 域名SSL证书配置 acme

写在前面的话
小编这里用的是购买的域名
服务器是aws
acme.sh 地址
配合nginx进行部署 , 后面会贴上nginx.conf
我这里是多个域名用同一个证书
效果图
来吧 , 展示
首先你得在自己服务器上面进行部署nginx,如果不知道怎么操作的 , 可以参考我这一篇博客 , 执行到这一步的时候 , 执行 ./ --with- 这个命令  , 部署完成后
地址在这里 , 点我呀
好 , 通过上面步骤 , 安装了nginx,可以通过ip , 进行访问自己的项目了 , 那这个时候进行解析域名ip , 小编这里用的是 , 
然后ping一下自己的域名 , 看看是不是自己的服务器ip
好 , 前面的准备工作到这里就over了 , 接下来开始讲证书申请了
一、下载acme.sh
我这里是新服务器 , 所以里面什么东西都没有 , 如果有安装部分内容 , 请略过
进入home目录 , 安装git,下载acme.sh
cd /home
安装git
yum install -y git
下载acme.sh
git clone https://github.com/acmesh-official/acme.sh.git
进入acme.sh目录
cd acme.sh/
安装 定时任务内容
yum install cronie
更新环境变量
source ~/.bashrc
二、安装acme
安装acme (输入自己的邮箱)
./acme.sh --install -m 51xxxxxx9@qq.com
查看定时任务面板 , 是否有一条ssl定时任务
crontab -e
如果有这个 , 即安装成功
三、获取秘钥
接下来去上面进行获取秘钥(创建秘钥)
然后得到key 和  , 一定要保存好 , 保存下来
export GD_Key="你的key"export GD_Secret="你的Secret"

网站 http 升级为 https  Nginx 域名SSL证书配置 acme

文章插图
四、生成证书
然后就可以生成证书了  , 我这里是多个域名 , 一起生成证书,把 改成自己的域名 , 如果跟我一样 , 报bash: acme.sh:not found 错 , 运行 ~/. 这个命令 , 重新加载环境变量
acme.sh --issue --dns dns_gd -d aaa.com -d admin.aaa.com -d api.aaa.com
然后变成这B样 , 就好了 , 证书已生成 , 路径他已经给你打印出来了
接下来就是安装证书 , 安装之前 , 去nginx目录创建一个ssl文件夹 , 我这里nginx安装在/usr/local/nginx  , 所以我就在这个目录创建一个ssl文件夹
然后再进入acme目录
cd ~/.acme.sh/
五、安装证书
安装证书 把 改成自己的域名
acme.sh --install-cert -d aaa.com \--key-file /usr/local/nginx/ssl/aaa.com.key \--fullchain-file /usr/local/nginx/ssl/aaa.com.pem
可以去到 /usr/local/nginx/ssl 看看证书 , 是否安装成功
ok , 证书有了 , 接下来去nginx.conf 去配置证书 , 我这里就直接把我nginx.conf贴出来 , 把改成自己的即可 , 需要注意的地方是 , 你服务器(我这里的aws) , 安全组需要开放443端口