介绍
之前用 Cloudflare 加https 速度感觉慢很多,了解:Cloudflare,于是使用了这款acme-nginx,会快很多。
第一种:acme.sh(推荐)
更新时间:2021年11月26日11:35:37
这个算是最简单的形式了,无需写脚本更新,通过 acme.sh --install-cert 安装到制定目录,这个过程会被记录下来,证书快到期的时候会重新执行这个操作,实现自动更新。
文档:https://github.com/acmesh-official/acme.sh/wiki/%E8%AF%B4%E6%98%8E
wget -O - https://get.acme.sh | sh -s email=11940083**@qq.com
alias acme.sh=~/.acme.sh/acme.sh
//我这边是docker环境,所以不能用 --nginx 自动寻找目录,用这种公用的
//fix.dev.dingdong.site 是我要加https的域名/home/www/fix_station/public该项目的根目录
acme.sh --issue -d fix.dev.dingdong.site --webroot /home/www/fix_station/public
//复制到ngix的ssl目录
acme.sh --install-cert -d api.petid.club \
--key-file /www/server/panel/vhost/nginx/ssl/api.petid.club.key \
--fullchain-file /www/server/panel/vhost/nginx/ssl/api.petid.club.cer \
--reloadcmd "/etc/init.d/nginx reload"
//nginx 的配置文件
listen 443 ssl;
ssl_certificate /etc/nginx/conf.d/pem/fix_crt.pem;
ssl_certificate_key /etc/nginx/conf.d/pem/fix_key.pem;
目前颁发的证书是:ZeroSSL,和我们以前让人熟知的Let’s Encrypt 差不多,比较年轻,有界面登录。
但是我们一般只用到 https 其他的我们不管,如果真的要切换成 Let’s Encrypt 也是可以的。
通过 acme.sh
可以轻松的配置泛域名,结合阿里云 并自动化的更新证书阿里云配置DNS 并生成证书
关于切换
acme.sh --set-default-ca --server letsencrypt
切换回 ZeroSSL
acme.sh --set-default-ca --server zerossl
第二种: acme-nginx
安装 pip 项目地址:https://github.com/kshcherban/acme-nginx
pip install acme-nginx
使用
准备2个目录
1.key 和pem 文件存储目录 :eg: /www/server/panel/vhost/ssl/
2.存放 virtual-host 目录;eg:/www/server/panel/vhost/nginx/temp/
3.在nginx.conf 中include 2中创建的文件,这个文件是暂存的(如下图)
4.重启nginx
5.执行如下命令行(换成自己的域名)
sudo acme-nginx \
-k /www/server/panel/vhost/ssl/account.key \
--domain-private-key /www/server/panel/vhost/ssl/domain.key \
--virtual-host /www/server/panel/vhost/nginx/temp/default.conf \
-o /www/server/panel/vhost/ssl/signed_certificate.pem \
-d api.liaosp.top -d www.liaosp.top
6.在nginx项目配置中添加:
listen 443 ssl;
#ssl on;
ssl_certificate /www/server/panel/vhost/ssl/signed_certificate.pem;
ssl_certificate_key /www/server/panel/vhost/ssl/domain.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
重启nginx
7.防火墙开启443 端口(已开跳过~)
8.三个月这个证书就过期了,于是可以加入crontab 命令执行top 5 中的命令,即可实现理论永久
第三种:Let’s Encrypt
Let’s Encrypt
步骤:
1.邮箱要配置正确,他要验证
2.阿里安全组开启443 端口。
3.如果linux开启了防火墙,要开启443端口
4.编写定时更新证书脚本,三个月会过期
无法连接问题
https://www.xuecaijie.com/it/213.html