当前位置: 首页 > news >正文

ssl证书90天过期?保姆级教程——使用acme.sh实现证书的自动续期

  • 腾讯云相关文档相关参考-有的点不准确

前言

最近https到期了,想着手动更新一下https证书,结果发现证书现在的有效期只有90天,于是想找到一个自动更新证书的工具,发现了acme.sh,但是网上的文章质量参差不齐,可能需要多篇文章结合来操作,一步步试错。我这里结合了腾讯云的相关文档和一些其他的博文,保证一次性操作成功。

下载acme.sh

 git clone https://gitee.com/neilpang/acme.sh.git   

安装acme.sh

注意换成自己的邮箱号

 ./acme.sh --install -m xxxx@163.com 

设置自动升级

acme.sh --upgrade --auto-upgrade

选择ZeroSSL作为服务商

因为ZeroSSL可以支持泛域名,所以这里我就选择了ZeroSSL。

acme.sh --set-default-ca --server zerossl
  • 关联一下自己的邮箱
acme.sh --register-account -m acurd_com@163.com --server zerossl

腾讯云创建api秘钥账户

在这里插入图片描述

SecretIdAKIDHVYSCnFXEkKrCMLBxxxx
SecretKeyEf8SZTFrQvTwEPRGulxxxxx
  • 将秘钥导入环境变量
export Tencent_SecretId="xxxxx"
export Tencent_SecretKey="xxxxx"
  • 申请证书

其中*.acurd.com是泛域名,acurd.com是根域名,

acme.sh --dns dns_tencent --issue -d *.acurd.com -d acurd.com   
  • 命令执行完毕,证书即颁发下来了
    在这里插入图片描述

  • 创建目录用来存储ssl

mkdir -p /home/ssl/acurd.com  
  • 安装证书到指定位置
acme.sh --installcert -d *.acurd.com \--key-file /home/ssl/acurd.com/*.acurd.com.key \--fullchain-file /home/ssl/acurd.com/fullchain.cer \--reloadcmd "service nginx reload"
  • 查看文件ls /home/ssl/acurd.com
[root@iZ2zeguqeswvn0s3zfrlyfZ acme.sh]# ls /home/ssl/acurd.com/
*.acurd.com.key  fullchain.cer
  • 修改nginx的证书目录
       # 请替换为证书实际路径ssl_certificate  /home/ssl/acurd.com/fullchain.cer;ssl_certificate_key /home/ssl/acurd.com/*.acurd.com.key;

重启Nginx服务,查看生效

在这里插入图片描述

配置根域名的https

acme.sh --installcert -d acurd.com \--key-file /home/ssl/root/acurd.com.key \--fullchain-file /home/ssl/root/fullchain.cer \--reloadcmd "service nginx reload"

如何自动续期

现在我们已经配置好了https,那么怎么实现自动续期呢,基于crontab我们就可以实现了,我们先写一个脚本refresh_https.sh

[root@iZ2zeguqeswvn0s3zfrlyfZ /]# vi /usr/local/acme.sh/refresh_https.sh#!/bin/bash
# 切换到 acme.sh 目录
cd /usr/local/acme.sh
./acme.sh --dns dns_tencent --issue -d *.acurd.com -d acurd.com# 执行 acme.sh 命令获取证书
./acme.sh --installcert -d *.acurd.com \--key-file /home/ssl/acurd.com/*.acurd.com.key \--fullchain-file /home/ssl/acurd.com/fullchain.cer \--reloadcmd "service nginx reload"# 退出脚本
exit 0
  • 定时任务,每两个月执行一次更新操作
0 0 1 2,4,6,8,10,12 * /usr/local/acme.sh/refresh_https.sh
http://www.lryc.cn/news/382303.html

相关文章:

  • 由于bug造成truncate table卡住问题
  • Charles抓包工具系列文章(二)-- Repeat 回放http请求
  • jemeter基本使用
  • 【Golang】Steam 创意工坊 Mod 文件夹批量重命名
  • 求职刷题力扣DAY33--贪心算法part04
  • aws的eks(k8s)ingress+elb部署实践
  • 大数据面试题之YARN
  • 最小生成树模板(prim,heap-prim,kruskal)
  • Centos 7 或 8配置国内yum源及epel源-1
  • 轻松解决Android复杂数据结构序列化
  • 解析PDF文件中的图片为文本
  • 微信小程序表单
  • Javascript高级程序设计(第四版)--学习记录
  • DVWA-CSRF-samesite分析
  • 代码随想录训练营Day48
  • React进阶(五):导航守卫_renderroutes
  • Python基础系列教程:从零开始学习Python
  • deepl翻译的PDF文档保护密码解除
  • LeetCode 算法:二叉树的直径 c++
  • 盘立方期货Kdj幅图指标公式源码
  • SkyWalking 极简入门
  • 本篇内容:ArkTS开发系列之事件(2.8.1触屏、键鼠、焦点事件)
  • 测试的基础知识大全【测试概念、分类、模型、流程、测试用例书写、用例设计、Bug、基础功能测试实战】
  • Power Apps
  • qt图像处理-将OpenCV的cv::Mat类型转换为QImage类型
  • 代码随想录训练营第十八天 530二叉搜索树的最小绝对差 501二叉搜索树中的众数 236二叉树的最近公共祖先
  • 微信小程序之横向列表展示
  • 无人机巡检小羊仿真
  • springboot redission 分布式锁
  • Vuex中的重要核心属性