博客站点使用的HTTPS证书来自国内云服务商提供的免费证书,我记得一开始有效期是一年来着,后面缩减到三个月,我必须每隔一段时间重新申请,然后部署替换,否则一些Web服务会受到影响。

我了解到Let's Encrypt 这个非营利性组织可以免费提供TLS证书(旧证书是SSL,它和TLS都是通信加密协议,前者已经过时,现在主流都用TLS,不过有些语境下仍习惯称HTTPS证书为SSL证书)并提供自动化续签的功能,我决定使用它来维护。

截屏2026-01-08 14.35.39

使用过程很简单,官方提供有一个certbot 程序来自动化执行一系列操作,按官网一步步来配置即可。

HTTPS证书过期,我觉得是一件很初级的错误,但是在这个问题上翻车的大厂有不少呢,据称大约81%的公司在过去两年中经历过与证书相关的中断事故1,近期为人熟知的有淘宝DeepSeekApple MusicLOL等。每次此类事故发生时,互联网上常有人嘲笑这些公司为“草台班子”,为什么在拥有大量人才,资源,制度规范的前提下,依然会出现初级的错误,难道这个错误不是表面上那么简单吗?我去问了一下大模型(Grok)。

提示词如下:

为什么互联网大公司,例如苹果,微软,淘宝等都曾经出现过由SSL/TSL证书过期引发的事故,可能性原因有哪些,这不是一个很初级的问题吗?

针对原因的回复如下(仅供参考):

SSL/TLS证书管理看似简单(定期续签即可),但在大公司环境中,它远非初级操作,而是涉及高度复杂性和人为因素的系统性挑战。核心原因包括:

  1. 证书数量爆炸式增长和分布式管理:
    • 大公司往往管理成千上万甚至数十万张证书(公共网站、内部服务、API、微服务、CDN、云资源等)。
    • 证书分散在不同团队、部门、子公司或全球数据中心,缺乏统一库存追踪。很多人安装证书后“忘掉”它,导致“影子证书”(undocumented certificates)无人负责。
  2. 人为错误和流程漏洞:
    • 依赖手动续签或半自动化流程,容易遗忘,尤其是长寿命证书(以前可达几年,现在398天,但早期更长)。
    • 团队轮换、人员离职,导致责任不明:“这个证书是谁管的?”
    • 测试环境与生产环境混淆,或备用证书未同步更新。
  3. 自动化不足或工具局限:
    • 许多公司虽有监控,但警报系统可能失效(警报疲劳、误报太多被忽略)。
    • 自动续签工具(如Let's Encrypt)在复杂企业环境中部署困难,需要自定义脚本,但脚本出错或未覆盖所有场景。
    • 短期证书趋势(行业正推动到47天有效期)进一步放大问题:续签频率从每年1次变成每月多次,增加了出错概率。
  4. 复杂基础设施和依赖链:
    • 云服务、多CDN、负载均衡器、Kubernetes等现代架构中,证书隐藏在多层系统中。
    • 第三方依赖:一个上游证书过期(如微软的oAuth证书影响Spotify),会连锁反应下游服务。
    • 合并收购后,遗留系统证书未整合。
  5. 低概率但高影响的风险被低估:
    • 证书过期是“低频高破坏”事件,平时不显眼,运维优先级往往让位于新功能开发或紧急火情。
    • 行业统计显示,81%的企业在过去两年经历过证书相关中断,许多大公司多次“栽跟头”却未彻底根治,因为完全自动化需要巨大投入。

为什么不是“初级”问题?

在小公司或单一网站上,证书管理确实简单(用免费工具自动续签)。但在大公司,它是PKI(公钥基础设施)管理的一部分,涉及安全、合规、DevOps等多领域交叉。行业正通过缩短证书寿命来提升安全(快速撤销妥协证书),但这反过来加剧了管理难度。许多专家认为,未来需要更先进的证书管理平台(CMDB集成、AI监控)来解决。

参考大模型的输出可知这不是一个能用“草台班子”所能概括的初级问题,我并非运维方面的专家或者专门的从业人员,把事情想的太简单了。


2026-01-08 #技术相关#