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

什么是自动证书管理环境(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。

http://www.lryc.cn/news/205518.html

相关文章:

  • 探索光模块的MSA多源协议
  • 《算法通关村——双指针妙用》
  • postgresql|数据库迁移|ora2pg工具的web界面介绍
  • 【zookeeper】zk的ZAB原子广播协议
  • 【问题思考总结】为什么分布函数右连续要左闭右开
  • 解决 edge 浏览器开发者工具出不来的问题
  • 嵌入式算法——傅里叶变换算法
  • 让数据“动”起来:Python动态图表制作详解
  • Python获取网络适配器接口的类型、状态IPv4和IPv6地址
  • 无敌了!Redis进军磁盘存储!
  • 中文编程开发语言工具编程实际案例:台球棋牌混合计时计费软件使用的编程构件说明
  • 在线客服系统源码 客服系统源码
  • 抽象轻松java——简易图书馆前置
  • 图书推荐管理系统Python+Django网页界面+协同过滤推荐算法
  • IT行业就业方向:探索未来的职业机会
  • docker-compose安装ES7.14和Kibana7.14(有账号密码)
  • k8s-----14、controller-Job和Cronjob
  • 蓝桥杯每日一题2032.10.24
  • 【AGC】更新应用信息报未知错误解决方法
  • 一个注解让 Spring Boot 项目接口返回数据脱敏
  • 测试人员的KPI怎么设置
  • Databend 开源周报第 116 期
  • mongodb-gridfs下载文件报Sort exceeded memory limit of 104857600 bytes异常
  • 分享一下微信小程序里怎么实现扫码点餐链接
  • 安卓开发环境安装教程
  • 深入探究Selenium定位技巧及最佳实践
  • 如何正确安装psycopg2,No module named ‘psycopg2._psycopg‘解决
  • go WriteFile文件追加写入(适合小文件)
  • history 模式上线需要注意什么事项?
  • VMware虚拟机安装Ubuntu22.04教程(2023最新最详细)