ACME(Automatic Certificate Management Environment,自动证书管理环境)是 CA 与申请方之间基于 HTTPS/JSON 的应用层协议,由 RFC 8555 定义,用于自动化证书申请、域名控制权验证、签发、续期和吊销等生命周期操作。
它的工作对象不是证书内容本身,而是 CA 与客户端如何通过 Account、Order、Authorization、Challenge 等资源协作完成证书管理。ACME 不限定证书类型和验证级别——CA 是否开放 OV/EV 的 ACME 申请由产品政策决定;它也不等于自动部署,证书签发后的分发、reload 需要 deploy hook、脚本或云厂商 API 配合。
ACME 常被简单理解成"自动申请免费 SSL 证书的协议",这个说法不准确。ACME 是 CA 与申请方之间的标准协议,用来自动化证书申请、验证、签发、续期和吊销整个生命周期。Let's Encrypt 只是 ACME 最大规模的应用者之一,协议本身不绑定免费,也不限定 DV。
ACME(RFC 8555)定义的是基于 HTTPS/JSON 的应用层协议,规定了客户端(ACME Client)与服务器(ACME Server,即 CA 侧)的角色和资源流转:Account(账户)→ Order(订单)→ Authorization(授权)→ Challenge(验证挑战)→ CSR → Certificate(证书),最终还包括 Revocation(吊销)。
理解 ACME 的定位,记住一句:它规定的不是"证书长什么样",而是 CA 和申请方如何通过标准化协议完成证书管理。证书本身的构成,可以看证书的定义与作用。
工作流程分几步:
| 验证方式 | 核心原理 | 适合场景 |
|---|---|---|
| HTTP-01 | 在指定 HTTP 路径放置验证内容 | 普通网站、单域名 |
| DNS-01 | 创建 _acme-challenge TXT 记录 | 通配符、多服务器 |
| TLS-ALPN-01 | 在 443/TLS 层完成挑战 | 特定自动化部署场景 |
证书类型体系与验证级别的关系,可以参考SSL 证书有哪些类型。
ACME 解决的是证书生命周期自动化:申请、验证、签发、续期、吊销。至于证书签发之后怎么部署到 Nginx、CDN、WAF,怎么 reload,怎么确认公网生效,这些属于部署自动化,由 Certbot deploy hook、acme.sh deploy、Ansible、Shell 脚本或云厂商 API 完成,服务器侧的操作步骤可以参考证书的服务器部署。
区分这两个层面很重要:ACME 管"证书从 CA 到客户端",部署自动化管"证书从客户端到业务节点"。常见的续期失败排查——证书已更新但公网还是旧证书,问题往往出在部署环节而不是 ACME 环节。部署完成后的公网核对,可以用证书检测工具。
目前包括 Let's Encrypt 在内的多个公开 CA 和企业级 PKI 平台支持 ACME。不同 CA 对 ACME 的实现范围、Endpoint、外部账户绑定(EAB)、证书产品以及验证方式可能不同,接入前以 CA 官方文档为准。
还要澄清两个认知:ACME 不限定证书必须是 DV,CA 是否开放 OV/EV 的 ACME 申请,由 CA 的产品政策和验证流程决定;ACME 本身没有费用,收费与否取决于 CA 的证书产品,Let's Encrypt 用 ACME 提供免费证书只是其中一种模式。
ACME 是协议不是产品,本身没有费用。Let's Encrypt 用 ACME 提供免费证书,商业 CA 同样用 ACME 提供服务,费用由证书产品决定。
不是。ACME 不限定验证级别,CA 是否开放 OV/EV 的 ACME 申请由产品政策决定。
ACME 负责申请、验证、签发、续期和吊销;证书签发后的部署和 reload 属于部署自动化,需要 deploy hook、脚本或云厂商 API 配合。
不是。账户密钥用于向 ACME 服务器证明账户身份;证书私钥用于生成 CSR,对应网站 TLS 证书。两者独立,不要混用。
默认 90 天,由 ACME 客户端自动续期。Let's Encrypt 已规划随行业规则进一步缩短证书生命周期,自动化续期的价值会继续提升。
ACME 是 CA 与申请方之间的标准化证书管理协议,核心是把申请、验证、签发、续期和吊销从人工流程变成自动化流程。它不绑定免费证书,也不限定 DV——Let's Encrypt 只是最大规模的应用者。对证书有效期持续缩短(200 天、100 天、47 天)的行业趋势来说,ACME 自动化加上部署 hook 是证书管理的基本盘:理解账户密钥与证书私钥的区分、选对验证方式、分清生命周期自动化与部署自动化的边界,是搭建证书自动化体系的关键。
# 常见SSL证书漏洞有哪些? SSL/TLS 证书作为静态的 X.509 凭证,本身不包含可执行代码,不存在传统意义上的代码漏洞。 安全扫描工具归类为"SSL 证书漏洞"的问题,实际来自三类风险:证书参数不合规(SHA-1 签名、RSA-1024 弱密钥、缺失 SAN 扩展)、部署与 Web 服务配置缺陷(中间证书链缺失、未关闭 TLS 1.0/1.1、保留 RC4 等弱套件)、生命周期管理失当(私钥泄露未吊销、未启用 OCSP Stapling)。这些配置错位会触发浏览器拦截告警,或给中间人攻击...
查看详情## SSL证书续签和重新申请有什么区别? SSL 证书"续签"与"重新申请"在日常运维中常被混用,技术实现上两者最终都会得到一张新的证书,区别在触发场景和自动化方式:续签是证书到期前的周期性更新,由 CA 重新签发一张新证书(新序列号、新有效期),原证书的 notAfter 不会被延长;重新申请用于首次申请、域名或组织信息变化、私钥泄露、证书吊销等场景。续签不一定重新验证域名(取决于域名授权是否仍有效,验证数据复用期与证书有效期同步缩短),...
查看详情## 免费SSL证书颁发机构有哪些? 截至 2026 年,能够免费签发受主流浏览器信任的 SSL/TLS 证书的机构主要有四家: Let's Encrypt(ISRG 运营,全球部署最广,90 天证书加 ACME 全自动,每注册域名每周约 50 张限额)、 ZeroSSL(apilayer 运营,通过 Sectigo 信任链签发,免费层级每 90 天 3 张证书,提供 Web 控制台与 REST API,通配符需付费)、 Google Trust Services Public CA(免费、支持 ACME,适合有云基础设施经验的团队)、 Cloudflare...
查看详情## 免费数字证书怎么理解? 免费数字证书,是指 CA 不向申请者收取证书签发费用的数字证书;在网站 HTTPS 场景中,指的就是免费的 SSL/TLS 证书。它仍然需要经过身份或域名验证,也需要在有效期内续期。 免费数字证书指由 CA 免费签发的数字证书,网站 HTTPS 场景下通常就是免费的 SSL/TLS 证书。 它仍然是经过验证的正式证书:申请时需要完成域名控制权验证(HTTP-01、DNS-01、TLS-ALPN-01 等方式),"免费"描述的是费用,不是"无需验证"。 需要区...
查看详情## 无法确认该网页的安全性怎么办?SSL证书信任链错误排查指南 当浏览器显示"无法确认该网页的安全性"或类似 HTTPS 安全警告时,表示浏览器无法验证网站提供的 SSL/TLS 证书, 常见报错包括 Chrome 的 NET::ERR_CERT_AUTHORITY_INVALID、Firefox 的 SEC_ERROR_UNKNOWN_ISSUER 等。 这不一定说明网站存在恶意行为,更常见的原因是客户端无法建立一条可信的证书验证路径:自签名证书、私有 CA 未被信任、服务器没发中间证书、签发 CA 已不受信...
查看详情## 一个域名只能申请一个证书吗 **一个域名可以同时持有多个有效 SSL 证书,不存在“只能申请一个”的技术或规范限制。** 域名与 SSL 证书不是一对一绑定的硬性关系。SSL/TLS 协议没有"一个域名只能绑一张证书"的限制,证书本质是 CA 对域名所有权验证后签署的身份凭证,只要通过验证(DNS、HTTP 文件等),同一域名可以在同一或不同 CA 申请多张证书并行使用。 一个域名不仅可以申请多个 SSL 证书,而且同一时间内,多个证书可以同时处于有效状...
查看详情## 电子商务网站为什么必须使用HTTPS? 电子商务网站涉及登录凭证、订单信息、收货地址和支付相关数据,应使用 HTTPS(TLS)保护网络传输。对涉及持卡人数据(PAN)的支付场景,PCI DSS v4.0.1 Requirement 4.2.1 要求在开放公共网络上传输 PAN 时采用强加密和安全协议,并使用受信任、有效且未被撤销的密钥和证书。 HTTPS 对电商不仅是加密传输,还关系到服务器身份验证、数据完整性,以及 WebAuthn、Payment Request API 等现代 Web 能力的安全上...
查看详情## 安装SSL证书必须要有独立IP吗? **安装 SSL 证书并不要求独立 IP。** 现代 HTTPS 网站主要通过 SNI(Server Name Indication,服务器名称指示)让多个域名共享同一个 IP,在同一台服务器上分别使用各自的 SSL/TLS 证书。SNI 是 RFC 6066 标准化的 TLS 扩展:客户端在 ClientHello 中携带目标域名,服务器据此选择对应证书,因此"一个 HTTPS 网站必须占用一个独立 IP"已经不是现代 Web 部署的普遍要求。需要独立 IP 的场景集中在旧客户端兼...
查看详情## HTTPS是100%安全吗? "HTTPS 是不是 100% 安全"是一个经常被问到的问题,答案很直接:不是。HTTPS 解决的是网络传输阶段的安全问题,是整个安全体系的一层,不是全部。理解它保护哪一段通信、不能解决什么,比纠结"100%"更有意义。 HTTPS 不能保证网站或业务系统 100% 安全,但它是现代 Web 安全的基础设施。 严格来说,HTTPS 是 HTTP 运行在 TLS 保护的连接之上,TLS 提供机密性、完整性和服务器身份认证,保护范围限于网络传输阶段:防内容被窃...
查看详情## 虚拟主机支持SSL证书吗? 大多数现代虚拟主机都支持 SSL 证书部署,但用户能不能自己安装,取决于主机商是否开放 SSL/TLS 管理功能。 提供 cPanel、Plesk、宝塔等控制面板并开放证书配置、自动申请或上传功能的,一般可以直接启用 HTTPS;虚拟主机通过 SNI 让多个域名共享一个 IP 并分别绑定证书,不需要为每个网站单独买独立 IP。 大多数现代虚拟主机支持 SSL 证书部署,但"能否安装"与"能否自行安装"是两个问题:是否开放 SSL/TLS 管理功能...
查看详情## 如何在Tomcat中实现HTTP到HTTPS的自动跳转? Tomcat 可以通过 **redirectPort 加 Servlet 安全约束(security-constraint)实现 HTTP 到 HTTPS 的自动跳转,也可以由前置的 Nginx、Apache、CDN 等入口层完成强制 HTTPS**。 需要先明确一点:单独在 HTTP Connector 中配置 redirectPort 并不会让所有 HTTP 请求自动跳转,它只在请求被判定为需要 SSL 传输时把请求转到指定端口,必须和 security-constraint 的 CONFIDENTIAL 传输要求配合。...
查看详情## DV SSL证书怎么申请?从域名验证到HTTPS部署完整流程 结合 TopSSL 日常在证书申请和部署过程中遇到的客服反馈,我们整理了这篇 [DV SSL 证书](https://www.topssl.cn/ssl/dv)的申请教程。本文将详细介绍 DV 证书的申请流程、域名验证方式,以及 DNS 验证失败、证书链配置错误等常见问题的排查方法。 在为网站配置 HTTPS 加密时,DV(域名验证型)证书是目前申请最快、部署最广的数字证书。 与 OV、EV SSL证书不同,DV证书不会审核企业营业执照...
查看详情## 如何验证SSL证书安装是否正确? 判断 SSL 证书是否安装正确,不能只看浏览器地址栏是否显示 HTTPS。 浏览器能打开 HTTPS,不等于证书装对了。证书链不完整、证书和私钥不匹配、SAN 不覆盖域名、SNI 选错站点,浏览器都可能直接打开,但隐患存在。验证要分层做,而且必须看公网实际返回的证书。 网站能正常打开,也可能存在证书链不完整、证书与私钥不匹配、域名不覆盖、SNI 配置错误、TLS 配置不合理等问题。 可靠的验证要分层进行:浏览器实际访问...
查看详情## 解码CSR是什么意思? 解码 CSR,就是解析 Certificate Signing Request(证书签名请求)文件,查看其中包含的域名、公钥以及申请者相关信息。 CSR 是申请 SSL/TLS 证书时提交给 CA 的请求文件,常见格式为 PEM 文本,以 -----BEGIN CERTIFICATE REQUEST----- 开头、-----END CERTIFICATE REQUEST----- 结尾。CSR 本身不是 SSL 证书,而是向 CA 请求签发证书时使用的申请数据:生成 CSR 时先产生公私钥对,再用私钥对 CSR 签名,其中包含公钥...
查看详情## 什么是证书签名请求(CSR)? **证书签名请求(Certificate Signing Request,CSR)是申请 SSL/TLS 证书时提交给证书颁发机构(CA)的一份标准化请求数据。** 申请 SSL 证书时,管理员常被要求提交一段以 -----BEGIN CERTIFICATE REQUEST----- 开头的文本,这就是 CSR。它是一份申请数据,不是证书,也不含私钥,作用是向 CA 说明你希望申请的证书信息和你的公钥。 CSR 采用 PKCS#10 格式,包含申请者的公钥、Subject 信息以及可选的扩展请求,并使...
查看详情## 部署SSL证书是否需要专用或静态IP? **现代 HTTPS 部署一般不需要专用 IP,也不要求网站必须拥有静态公网 IP。** 只要客户端和服务器支持 SNI(Server Name Indication),多个域名就可以共享同一个 IP,并分别使用各自的 SSL/TLS 证书。 例如: ```text 203.0.113.10 │ ├── www.example.com → 证书A ├── api.example.com → 证书B └── shop.example.com → 证书C ``` 访问不同域名时,客户端会在 TLS 握手的 ClientHello 中提供目标主机名,...
查看详情## Windows系统SSL 3.0与TLS版本对应关系:TLS 1.0/1.2/1.3支持情况 Windows 中的 SSL/TLS 协议由 Schannel SSP 提供,不同 Windows 版本支持的协议范围不同。 SSL 3.0 是 Netscape 开发的早期协议,TLS 1.0 是 IETF 在此基础上标准化形成的后续协议,两者是继承关系但不是同一个协议,客户端和服务器需要分别支持对应版本才能建立连接。 按 Microsoft 当前 Schannel 支持矩阵:Windows 8/Server 2012 起支持 TLS 1.2,TLS 1.3 的 Schannel ...
查看详情## Apache2如何部署SSL证书?mod_ssl配置完整流程与常见问题 在 Apache HTTP Server 上部署 SSL/TLS 证书,**需要完成证书文件准备、mod_ssl 模块启用、HTTPS 虚拟主机配置和服务重载几个步骤**,配置完成后 Apache 通过 TLS 提供 HTTPS 连接。 Apache 的 HTTPS 功能主要由 `mod_ssl` 模块提供,该模块基于 OpenSSL 实现 SSL/TLS 加密。 实际部署过程中,最容易出现的问题并不是证书文件“上传失败”,而是: * 证书与私钥不匹配; * 中间证书链...
查看详情本文针对企业在部署 OV SSL 证书后面临的“浏览器地址栏未直接呈现公司名称”疑问,从现代浏览器 UI 安全策略演进、X.509 数字证书主体结构(Subject 项中的 Organization 字段解析)、以及 PKI 证书链信任传递机制等技术层面,深入剖析 OV 证书身份验证的底层逻辑与实际验证方法。 ## OV SSL证书没有显示公司名称是什么原因? [购买 OV SSL证书](https://www.topssl.cn/pay)后看不到公司名称,并不代表证书没有完成企业身份验证。 OV SSL证书(...
查看详情