Nginx 配置 https 访问:SSL 免费证书申请并自动更新(完整命令篇)

阿里云 SSL 免费证书有效期从以前的一年调整为三个月,使用起来比较麻烦。
本文记录了在 CentOS 7.9 如何使用 acme.sh 完成免费证书的申请以及自动更新过程,再也不必为 SSL 证书过期而烦恼了。

acme.sh 是一个开源的纯shell 脚本编写的acme 客户端,可自动申请更新https 证书。 相比其他工具,acme.sh 更轻量,主要表现在: 只是一个脚本,无需编译安装。 无侵入性,不会更改任何web server 的配置。

# 安装 acme
[root@webf ~]# curl https://get.acme.sh | sh% Total    % Received % Xferd  Average Speed   Time    Time     Time  CurrentDload  Upload   Total   Spent    Left  Speed0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  1032    0  1032    0     0    197      0 --:--:--  0:00:05 --:--:--   218% Total    % Received % Xferd  Average Speed   Time    Time     Time  CurrentDload  Upload   Total   Spent    Left  Speed
100  217k  100  217k    0     0  14749      0  0:00:15  0:00:15 --:--:--  9779
[Wed Mar 20 09:30:32 CST 2024] Installing from online archive.
[Wed Mar 20 09:30:32 CST 2024] Downloading https://github.com/acmesh-official/acme.sh/archive/master.tar.gz
[Wed Mar 20 09:30:34 CST 2024] Extracting master.tar.gz
[Wed Mar 20 09:30:34 CST 2024] Installing to /root/.acme.sh
[Wed Mar 20 09:30:34 CST 2024] Installed to /root/.acme.sh/acme.sh
[Wed Mar 20 09:30:34 CST 2024] Installing alias to '/root/.bashrc'
[Wed Mar 20 09:30:34 CST 2024] OK, Close and reopen your terminal to start using acme.sh
[Wed Mar 20 09:30:34 CST 2024] Installing alias to '/root/.cshrc'
[Wed Mar 20 09:30:34 CST 2024] Installing alias to '/root/.tcshrc'
[Wed Mar 20 09:30:35 CST 2024] Installing cron job
58 7 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
[Wed Mar 20 09:30:35 CST 2024] Good, bash is found, so change the shebang to use bash as preferred.
[Wed Mar 20 09:30:36 CST 2024] OK
[Wed Mar 20 09:30:36 CST 2024] Install success!# 手动申请泛域名证书
[root@webf ~]# ~/.acme.sh/acme.sh --issue --force -d *.xxx.com --dns --yes-I-know-dns-manual-mode-enough-go-ahead-please
[Wed Mar 20 10:01:25 CST 2024] Using CA: https://acme.zerossl.com/v2/DV90
[Wed Mar 20 10:01:25 CST 2024] Creating domain key
[Wed Mar 20 10:01:25 CST 2024] The domain key is here: /root/.acme.sh/*.xxx.com_ecc/*.xxx.com.key
[Wed Mar 20 10:01:25 CST 2024] Single domain='*.xxx.com'
[Wed Mar 20 10:01:29 CST 2024] Getting webroot for domain='*.xxx.com'
[Wed Mar 20 10:01:29 CST 2024] Add the following TXT record:
[Wed Mar 20 10:01:29 CST 2024] Domain: '_acme-challenge.xxx.com'
[Wed Mar 20 10:01:29 CST 2024] TXT value: 'TgxdGIWCS7GheIj14BnCDcJA1zI6HMpqMrxYePV9_Yk'
[Wed Mar 20 10:01:29 CST 2024] Please be aware that you prepend _acme-challenge. before your domain
[Wed Mar 20 10:01:29 CST 2024] so the resulting subdomain will be: _acme-challenge.xxx.com
[Wed Mar 20 10:01:29 CST 2024] Please add the TXT records to the domains, and re-run with --renew.
[Wed Mar 20 10:01:29 CST 2024] Please check log file for more details: /root/.acme.sh/acme.sh.log

在 xxx.com 域名解析中设置 TXT 记录:_acme-challenge.xxx.com,值为上面生成的:TgxdGIWCS7GheIj14BnCDcJA1zI6HMpqMrxYePV9_Yk

完整命令:https://www.laobingbiji.com/page/202403201143160000000010672815.html

通过以上操作,SSL 证书已申请并设置了定时任务自动更新,Nginx 中配置SSL证书参考:

Nginx 配置文件 nginx.conf(SSL证书)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/757911.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HarmonyOS ArkTS 通用事件(二十三)

通用事件目录 点击事件事件ClickEvent对象说明EventTarget8对象说明示例 触摸事件事件TouchEvent对象说明TouchObject对象说明示例 挂载卸载事件事件示例 点击事件 组件被点击时触发的事件。 事件 ClickEvent对象说明 从API version 9开始,该接口支持在ArkTS卡片中…

MySQL 多表关系(介绍) 一对多/多对多

一对多 举例介绍 例子: 部门与员工 在常理上来说: 一个部门有多个员工,一个员工只对应一个部门实现方式: 在多的一方建立外键,指向一的一方的主键 多对多 举例介绍 例子: 学生与课程 在常理上来说: 一个学生可以有多个课程,一门课程可以有多个学生实…

6.如何判断数据库搜索是否走索引?

判断是否使用索引搜索 索引在数据库中是一个不可或缺的存在,想让你的查询结果快准狠,还是需要索引的来帮忙,那么在mongo中如何判断搜索是不是走索引呢?通常使用执行计划(解释计划、Explain Plan)来查看查询…

【LEMONSQUEEZY: 1【mysql写shell】】

前期环境准备 靶机下载地址 https://vulnhub.com/entry/lemonsqueezy-1%2C473/ 信息收集 ┌──(root㉿kali)-[/home/test/桌面/lemmon] └─# nmap -sP 192.168.47.1/24 --min-rate 3333 Starting Nmap 7.92 ( https://nmap.org ) at 2024-03-20 14:02 CST Stats: 0:00:06 e…

关于layui如何动态更新数据

因为在写项目时用layui来完成后台,想点击下一页或者对于下拉切换数据的条数,然后一开始没注意它的table.render里面的url,(不是没注意吧,就是没看到await等明显的请求方式,就以为它只能请求JSON文件里面的数…

69: 偷菜时间表(python)

收藏 难度:一般 标签:暂无标签 题目描述 随着“开心农场”等娱乐游戏风靡互联网,“偷菜”遂瞬间蹿红网络,席卷网民生活。 于是,“你‘偷’了吗”便成为大家见面的招呼语。很快,数百万都市白领成为“偷菜…

ATG-2081功率信号源在电子实验中的应用

功率信号源被广泛应用于电子实验领域,主要用于产生精确、干净的高频信号。这些信号可以被用于测试各种电子器件和电路,例如射频、微波电路和天线等。下面将介绍功率信号源在电子实验中的应用。 功率信号源可以产生稳定、高质量的RF和微波信号&#xff0c…

【Maven入门篇】(3)依赖配置,依赖传递,依赖范围,生命周期

🎊专栏【Maven入门篇】 > 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 > 🎆音乐分享【The truth that you leave】 > 🥰欢迎并且感谢大家指出我的问题 文章目录 &…

java 循环map 打印所有的value

在Java中,你可以使用for-each循环或者Map.Entry的迭代器来遍历Map并打印所有的value。以下是两种方法的示例: 方法一:使用for-each循环 import java.util.HashMap; import java.util.Map;public class Main {public static void main(Strin…

【译】矢量数据库 101 - 什么是矢量数据库?

原文地址:Vector Database 101 - What is a Vector Database? 1. 简介 大家好——欢迎回到 Milvus 教程。在上一教程中,我们快速浏览了每天产生的日益增长的数据量。然后,我们介绍了如何将这些数据分成结构化/半结构化数据和非结构化数据&…

【学习】CMMI评估认证的意义和需要注意的问题

​ CMMI认证是软件能力成熟度集成模型,是软件行业中的一种质量管理体系,旨在评估软件开发组织的成熟度和能力,以帮助企业提高软件质量、降低成本、控制风险,并获得更好的商业效益。 一、CMMI评估认证的意义 1. 提高软件质量&am…

GAMES101 学习3

Lecture 13 ~ 16 Shadow mapping 一种图像空间算法生成阴影时不需要知道场景中的几何信息会产生走样现象 最重要的思想:如果有的点不在阴影里你又能看到这个点,那么说明摄像机可以看到这个点,光源也可以看到这个点 经典的Shadow mapping …

Linux-docker安装数据库mysql

1、拉去mysql镜像: docker pull mysql2、创建容器挂载路径 mkdir -p /usr/local/jiuxiang/mysql/data # 数据存储位置 mkdir -p /usr/local/jiuxiang/mysql/logs # 日志存储位置 mkdir -p /usr/local/jiuxiang/mysql/conf # 配置文件3、启动容器 docker run -…

【SpringCloud微服务实战09】Elasticsearch 搜索引擎

一、Elasticsearch 安装 1、Docker安装ES #创建一个网络 docker network create es-net#拉取ES镜像(这里使用7.17.18版本) docker pull elasticsearch:7.17.18#新建一个目录存放es数据 mkdir es cd es#docker运行 单机启动es docker run -d \--name es \-e "ES_JAVA_O…

数据结构 之 二叉树

🎉欢迎大家观看AUGENSTERN_dc的文章(o゜▽゜)o☆✨✨ 🎉感谢各位读者在百忙之中抽出时间来垂阅我的文章,我会尽我所能向的大家分享我的知识和经验📖 🎉希望我们在一篇篇的文章中能够共同进步!!&…

Transformer在计算机视觉中的应用-VIT、TNT模型

Transformer是传统机器翻译模型中常见的seq2seq网络,里面加入了注意力机制,QKV矩阵的运算使得计算并行。 当然,最大的重点不是矩阵运算,而是注意力机制的出现。 一、CNN最大的问题是什么 CNN依旧是十分优秀的特征提取器&#xf…

代码随想录刷题笔记 Day 55 | 买卖股票的最佳时机含冷冻期 No.309 | 买卖股票的最佳时机含手续费 No.714

文章目录 Day 5501. 买卖股票的最佳时机含冷冻期&#xff08;No. 309&#xff09;<1> 题目<2> 笔记<3> 代码 02. 买卖股票的最佳时机含手续费&#xff08;No. 714&#xff09;<1> 题目<2> 笔记<3> 代码 Day 55 01. 买卖股票的最佳时机含冷…

安卓面试题多线程 81-85

81. 共享变量在多线程下如何保证线程安全?因为多线程是交替执⾏,每个线程操作共享变量时可能会导致数据不⼀致,要确保线程 安全,需要在访问共享变量时添加同步机制。当然,如果这个变量本⾝是线程安全的,⽐如AtomicLong,那么多线程访问也是安全 的🚀🚀🚀🚀🚀�…

CSS中如何设置单行或多行内容超出后,显示省略号

1. 设置超出显示省略号 css设置超出显示省略号可分两种情况&#xff1a; 单行文本溢出显示省略号…多行文本溢出显示省略号… 但使用的核心代码是一样的&#xff1a;需要先使用 overflow:hidden;来把超出的部分隐藏&#xff0c;然后使用text-overflow:ellipsis;当文本超出时…

idea如何复制一个module

选中要复制的模块&#xff0c;按ctrl C 然后按ctrl V&#xff0c;会出来一个对话框&#xff0c;输入复制后的项目名称&#xff0c;这里随便写。 路径就选择的当前路径&#xff0c;点击OK 打开project structure 选择modules&#xff0c;点击加号 弹出一个对话框&#xff0c…