配置https加密证书
根据github上的43k stars开源项目配置:acmesh-official/acme.sh
安装
执行安装命令。
curl https://get.acme.sh | sh -s email=my@example.com
国内服务器可能安装不了,使用git安装。
git clone https://github.com/acmesh-official/acme.sh.git
cd ./acme.sh
./acme.sh --install -m my@example.com
签发证书
-d 参数表示自己的域名
acme.sh脚本需要完整路径/root/acme.sh/acme.sh
-w 参数表示nginx配置的网站根目录
/root/acme.sh/acme.sh --issue -d ylq0001.xyz -w /www/wwwroot/ylq0001.xyz
修改完命令执行结果。
将证书安装到nginx
acme.sh脚本需要完整路径/root/acme.sh/acme.sh
example.com修改为自己的域名
--key-file和--fullchain-file是自己存放密钥的路径,可根据需要修改
--reloadcmd不同系统写法不一样,service nginx force-reload是Ubuntu系统的命令。
/root/acme.sh/acme.sh --install-cert -d ylq0001.xyz \
--key-file /www/nginx/tls/key.pem \
--fullchain-file /www/nginx/tls/cert.pem \
--reloadcmd "systemctl force-reload nginx"
使用宝塔面板添加nginx配置,执行systemctl force-reload nginx
重启nginx
将秘钥添加到宝塔面板,重启nginx
安装corn定时任务工具
sudo yum install -y cronie
设置每月1日检查一次,快到期续签证书
0 0 15 * * "/root/acme.sh"/acme.sh --cron --home "/root/acme.sh/.acme.sh" > /dev/null
开启防火墙443端口
成功
相比购买加密证书服务,最低几百,商用和多站点https都超过千元一年,省下了很多钱。
许可协议:
转载标注作者