内容提要
从2026年5月起,主要公共证书颁发机构将停止在TLS证书中包含客户端身份验证扩展密钥用法(EKU),这将影响依赖相互TLS(mTLS)的Apache项目,如Kafka和Cassandra。证书续订后将不再包含clientAuth EKU,导致连接中断。用户需转向内部或企业CA获取客户端证书,所有使用公共CA颁发证书的mTLS部署需尽快规划应对措施。
关键要点
-
从2026年5月起,主要公共证书颁发机构将停止在TLS证书中包含客户端身份验证扩展密钥用法(EKU)。
-
依赖相互TLS(mTLS)的Apache项目(如Kafka和Cassandra)将受到影响,证书续订后将不再包含clientAuth EKU。
-
用户需转向内部或企业CA获取客户端证书,以避免连接中断。
-
公共CA移除clientAuth EKU反映了对公共密钥基础设施(PKI)功能的重新调整,认为客户端身份验证应由内部基础设施管理。
-
所有使用公共CA颁发证书的mTLS部署需尽快规划应对措施,特别是在证书续订时可能会导致连接失败。
-
如果没有明确配置mTLS,则大多数用户不会受到影响,因为Apache项目的默认设置是标准TLS(仅服务器身份验证)。
-
解决方案包括内部CA管理客户端身份、采用混合信任模型或应用层身份验证,确保客户端证书包含正确的EKU。
-
重要的是尽快开始规划,评估环境、测试并制定逐步迁移计划,以避免在证书续订时出现生产中断。
延伸问答
公共CA停止包含clientAuth EKU的原因是什么?
公共CA认为客户端身份验证应由内部基础设施管理,而不是公共信任锚。
这项政策变化对Apache项目的影响是什么?
依赖mTLS的Apache项目如Kafka和Cassandra将面临证书续订后连接中断的问题。
如何应对公共CA移除clientAuth EKU的变化?
用户需转向内部或企业CA获取客户端证书,并规划应对措施。
如果没有配置mTLS,用户会受到影响吗?
大多数用户不会受到影响,因为Apache项目的默认设置是标准TLS,仅进行服务器身份验证。
如何检查当前证书是否包含clientAuth EKU?
可以使用命令openssl x509 -in your-cert.pem -noout -text | grep -A1 'Extended Key Usage'来检查。
在证书续订时可能出现什么问题?
续订后,证书将不再包含clientAuth EKU,导致mTLS握手失败。