什么是自动证书管理环境(ACME)
组织的网站需要 24x7 全天候可用,以建立信任并提供信息,如果网站因证书过期而停机,那么很难恢复失去的客户信任、收入和品牌声誉,手动管理证书基础结构会使组织面临中断、中间人 (MITM) 攻击等的严重风险。
自动证书管理环境 (ACME) 是一种通信协议,无需任何人工干预即可自动颁发、安装、续订和吊销 PKI 证书,ACME 自动执行证书颁发机构 (CA) 与托管 PKI 证书的 Web 服务器或设备之间的交互。
ACME最初由互联网安全研究小组专门为自己的证书服务Let’s Encrypt创建,用于颁发域验证(DV)SSL / TLS证书。现在,多个 CA 越来越多地采用 ACME 协议来颁发不同类型的证书,例如扩展验证 (EV) 和组织验证 (OV)。
使用 ACME 协议的优势
- 无许可费;开源工具
- 需要最少的集成时间;易于设置和使用
- 为组织节省时间、成本和劳动密集型手动工作
- 防止由于中断而导致的MITM攻击和安全风险
- 直接联系 CA,消除冗长的等待队列
- 无需人工干预
- 由开源社区持续增强
- 敏捷且可扩展
- 快速将受损证书替换为新证书
- 灾难发生时轻松切换到其他 CA
ACME 协议如何工作
ACME 遵循客户端-服务器架构,其中它们使用 JSON 消息通过加密的 HTTPS 连接安全地相互通信。
- 客户:ACME 客户端(也称为 ACME 代理)在需要部署 PKI 证书的任何 Web 服务器或计算机上运行,它代表安装它的 Web 服务器发送证书颁发、续订和吊销请求。
- 服务器:ACME 服务器在 CA 上运行,例如 Let’s Encrypt 或 Sectigo,并响应 ACME 客户端发出的请求。
如何设置 ACME 客户端-服务器体系结构
与任何客户端-服务器体系结构一样,ACME 服务器响应并执行 ACME 客户端发出的证书请求(颁发、续订、吊销),用户开始使用的第一步是选择需要安装的客户端。
尽管有大量可用的客户端,但建议开始使用 Certbot,这是一个易于使用且适用于许多操作系统的 ACME 客户端。这是一个免费的开源工具,每 60 天续订一次证书。
在自动化 PKI 证书管理之前,必须彻底设置客户端和服务器,由于 ACME 服务器仅接受来自授权客户端的请求,因此必须确保客户端经过身份验证才能发出请求。因此,为了证明其真实性,ACME 客户端需要完成 ACME 服务器提出的挑战。
ACME挑战
有两种类型的ACME挑战:HTTP和DNS。它们可以在不到 15 秒的时间内快速完成。
- HTTP:当 ACME 客户端向 CA(ACME 服务器)发送请求时,CA 会发回要安装在客户端上的令牌。客户端使用该令牌创建一个文件,并在该文件后附加授权密钥的指纹。安装文件后,客户端会通知 CA。ACME 服务器检索并验证文件,从而完成质询。
- 域名解析:DNS 质询与 HTTP 质询类似,但需要额外的验证因素。除了使用令牌安装文件外,ACME 客户端还需要在 DNS 空间的 TXT 记录中放置一个给定值。质询完成后,服务器将执行 DNS 查找并检索 TXT 记录。
配置 ACME 客户端
选择 ACME 客户端后,下一步是在需要由 PKI 证书保护的服务器或计算机上对其进行配置。概述如下:
- 确定域后,从支持 ACME 的 CA 列表中选择所需的 CA。
- ACME 客户端联系 CA(ACME 服务器)并生成授权密钥对。
- CA 为客户端发出质询(HTTP 或 DNS)以验证其身份,它还发送一个随机数(随机生成的数字)。
- 客户端使用其生成的私钥对随机数进行签名。
- 验证域的所有权,并完成客户端-服务器设置。
- 配置 ACME 客户端应联系 CA 以续订证书的频率。
- ACME 客户端可以代表域执行自动证书颁发、续订和吊销。
ACME 客户端如何请求证书颁发和续订
- ACME 客户端为域生成证书签名请求 (CSR)。
- ACME 客户端对 CSR 和用自己的私钥生成的公钥进行签名。
- CA 在验证签名后颁发所需的证书。
- ACME 客户端在域服务器上安装证书。
ACME 客户端如何请求证书吊销
- ACME 客户端发送使用其私钥签名的撤销请求。
- CA 验证签名并吊销证书。
- CA 将信息发送到标准吊销通道,以便浏览器不接受吊销的证书。
使用 Key Manager Plus 进行自动化证书生命周期管理,Key Manager Plus 使用自动证书管理环境 (ACME) 协议直接与第三方 CA 集成,例如 Let’s Encrypt、Bypass Go SSL 和 ZeroSSL。
相关文章:

什么是自动证书管理环境(ACME)
组织的网站需要 24x7 全天候可用,以建立信任并提供信息,如果网站因证书过期而停机,那么很难恢复失去的客户信任、收入和品牌声誉,手动管理证书基础结构会使组织面临中断、中间人 (MITM) 攻击等的严重风险。…...

探索光模块的MSA多源协议
在当今高度互联的世界中,光模块作为网络设备的重要部分,其性能和质量直接影响到整个网络系统的运行。其中光模块由于其灵活性和高效性,已经成为数据中心和云计算领域的主要选择。本文易天光通信将深入探讨光模块的MSA协议,揭示其重…...

《算法通关村——双指针妙用》
《算法通关村——双指针妙用》 删除元素 描述 给你一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,并返回移除后数组的新长度。要求:不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并原地修改输入数组…...

postgresql|数据库迁移|ora2pg工具的web界面介绍
前言: ora2pg是一个比较强大的数据库迁移工具,那根据名字来说,也可以看出来,这个工具主要是用来配置去O化,将在运行的oracle数据库迁移到postgresql数据库内的 当然了,我们使用此工具主要还是用命令行&am…...
【zookeeper】zk的ZAB原子广播协议
zk的ZAB原子广播协议来源于paxos算法[1]。paxos算法是一种基于消息传递的消息一致性算法,其特点是在可靠的通信环境下,可以保证消息的最终一致性。paxos要求每台server都持有自己的一个事务id的记录,这个事务id会每通过一个提议就自增加一&am…...

【问题思考总结】为什么分布函数右连续要左闭右开
问题 这个问题困扰我很久了,虽然感觉没什么用,但是还是想着搞清楚一点。 思考 Q1:什么是右连续? A1:F(x0)F(x0),即函数在一点的右极限等于该点的函数值。 …...
解决 edge 浏览器开发者工具出不来的问题
文章目录 猜测原因问题现象尝试过程最终解决办法C盘爆满解决经过(拆东墙补西墙) 猜测原因 windows 系统更新导致电脑管家C盘迁移导致(我C盘爆满了,每天提醒看着膈应,想着清理一下) 问题现象 按F12 和 右键…...

嵌入式算法——傅里叶变换算法
文章引注 https://mp.weixin.qq.com/s/5VIpNWci9YLY3m4gcYd6-w 摘要 傅里叶变换的核心在于,“任何连续周期信号可以由一组适当的正弦曲线组合而成”,在这个基础上对信号的中特定频率的正弦波进行分解或者重组,基于频率方面分析波形。 1、傅…...

让数据“动”起来:Python动态图表制作详解
在读技术博客的过程中,我们会发现那些能够把知识、成果讲透的博主很多都会做动态图表。他们的图是怎么做的?难度大吗?这篇文章就介绍了 Python 中一种简单的动态图表制作方法。 数据暴增的年代,数据科学家、分析师在被要求对数据有…...
Python获取网络适配器接口的类型、状态IPv4和IPv6地址
参考CSDN博主「Kwoky」的https://blog.csdn.net/Kwoky/article/details/84858997的简介: psutil是一个跨平台库(http://pythonhosted.org/psutil/)能够轻松实现获取系统运行的进程和系统利用率(包括CPU、内存、磁盘、网络等)信息。它主要用来…...

无敌了!Redis进军磁盘存储!
在高手林立的数据库江湖,Redis就像一个刺客,或许不如经典数据库存在感强,但因其高性能的特质而在群英榜中独占一席。 作为缓存的首选内存数据库,Redis最近放出了一个大新闻——将磁盘作为分层存储体系结构的一部分,以…...

中文编程开发语言工具编程实际案例:台球棋牌混合计时计费软件使用的编程构件说明
中文编程开发语言工具编程实际案例:台球棋牌混合计时计费软件使用的编程构件说明 上图说明:该软件可以用于桌球和棋牌同时计时计费,在没有开台的时候,图片是处于等待状态,这使用编程工具中的固定图像构件,在…...

在线客服系统源码 客服系统源码
在线客服系统源码 客服系统源码 框架:Thinkphp5workerman,环境:nginxphp7.3mysql5.6 多商户客服、不限坐席、独立系统--数据存储自己服务器上,支持开启SSL、支持离线对话。 新款在线客服系统全开源无加密:多商户、国…...

抽象轻松java——简易图书馆前置
用Maven写一个垃圾的项目,第一步打开IDEA,点击创建,创建一个Maven <dependencies><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.22</versi…...

图书推荐管理系统Python+Django网页界面+协同过滤推荐算法
一、介绍 图书管理与推荐系统。使用Python作为主要开发语言。前端采用HTML、CSS、BootStrap等技术搭建界面结构,后端采用Django作为逻辑处理,通过Ajax等技术实现数据交互通信。在图书推荐方面使用经典的协同过滤算法作为推荐算法模块。主要功能有&#…...
IT行业就业方向:探索未来的职业机会
引言: 随着信息技术的飞速发展,IT行业已经成为了当前最具活力和发展潜力的行业之一。在这个充满机遇和挑战的时代,选择一个好的就业方向对于个人的职业发展至关重要。本文将探讨IT行业中哪些方向具有更好的就业前景,并提供一些建…...

docker-compose安装ES7.14和Kibana7.14(有账号密码)
一、docker-compose安装ES7.14.0和kibana7.14.0 1、下载镜像 1.1、ES镜像 docker pull elasticsearch:7.14.0 1.2、kibana镜像 docker pull kibana:7.14.0 2、docker-compose安装ES和kibana 2.1、创建配置文件目录和文件 #创建目录 mkdir -p /home/es-kibana/config mkdir…...
k8s-----14、controller-Job和Cronjob
Job和Cronjob 1、Job(一次性任务)2、CronJob(定时任务) 1、Job(一次性任务) [rootmaster controlleryaml]# cat job.yaml apiVersion: batch/v1 kind: Job metadata:name: pi spec:template:spec:contain…...

蓝桥杯每日一题2032.10.24
蓝桥杯大赛历届真题 - C 语言 B 组 - 蓝桥云课 (lanqiao.cn) 题目描述 题目分析 由于布局为两个字节为一行,那我们输入两个数就为一行,但是这两个数全部得用二进制进行表示使用bitset bitset:将一个数转化为二进制 bitset<8>:将一个数转化为8位…...

【AGC】更新应用信息报未知错误解决方法
【问题描述】 最近有几个开发者遇到了一个问题,他们在AGC控制台配置好应用信息的图标和截图之后,点击保存按钮会弹出“未知错误,请稍后再试”的异常报错,导致无法正确保存应用配置信息。 出错页面如图所示。 【解决方案】 …...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...

3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)
0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...