我们经常听到一种说法:Cloudflare(CF)提供有效期长达15年的免费SSL证书。但根据CA/Browser论坛制定的标准,公开信任的SSL证书有效期不得超过90天(约3个月),且从浏览器查看CF托管站点的证书也确实只有3个月的有效期。那么,15年证书的说法从何而来?为什么在没有开启“小黄云”(即CF的代理状态)的站点上无法使用这种证书?
要理解这个问题,首先需要回顾CDN的基本工作原理。CDN通过分布在全球的边缘节点接收用户请求,并经由内部网络将流量转发至源服务器。在这个过程中,CDN承担了缓存、网关等关键功能,其节点本质上是由服务商维护的中转服务器。
尽管流量在CDN内部可能经过多个节点进行中转,但为简化理解,我们可以将整个CDN网络视为一个逻辑上的“大节点”。
其次,HTTPS是在HTTP基础上通过SSL/TLS证书实现加密的安全传输协议,当用户通过HTTPS访问一个使用CDN的网站时,CDN的边缘节点需要向客户端(如浏览器)证明自己的可信身份——这需要通过该域名有效的SSL证书来实现。
随后,CDN节点向源服务器发起请求时,为了保障这一段通信的安全,同样会使用HTTPS协议。此时,源服务器也需要向CDN节点证明其身份,这要求源服务器端也部署相应的SSL证书。
因此,在整个链路中实际上涉及两种证书:
边缘证书:用于客户端和CDN边缘节点之间的加密和认证;
源证书:用于CDN节点与源服务器之间的身份验证和加密。
在Cloudflare中申请的“15年证书”,实际上指的是源证书。查看该证书详细信息会发现,其颁发对象是Cloudflare的域名(如 *.cloudflare-cert.com),而非用户自己的域名。正因为该证书用于Cloudflare内部网络与源服务器之间的认证,其签发和验证完全由Cloudflare自主控制,不依赖公共CA体系,因此不受90天有效期限制。
而从浏览器访问网站时,用户直接面对的是边缘节点,使用的是由Cloudflare通过ACME协议自动申请、符合公共CA标准的边缘证书,其有效期严格遵循90天的规定。
如果站点关闭“小黄云”(即禁用CF代理),流量将不再经过Cloudflare,而是直连源服务器。此时浏览器将会检查源服务器上的证书,而该证书是由Cloudflare私有CA签发,并未获得操作系统或浏览器的公开信任,因此会提示证书错误。
暂无评论内容