GCP多域名SSL证书配置故障求助:单服务器多域名SSL部署问题
问题分析与解决方案
方案一错误排查
1. FAILED_NOT_VISIBLE 证书验证失败
虽然你确认DNS记录配置正确,但该错误通常意味着Google无法通过公开网络解析到负载均衡器的IP,可能的原因包括:
- DNS记录存在全局缓存延迟:使用
dig或nslookup工具在不同网络环境下验证域名解析结果,确保所有地区都能正确解析到负载均衡器的公网IP - 域名前存在代理/CDN:如果a.domain2.com配置了第三方CDN或代理服务,会阻断Google的证书验证请求,需暂时关闭代理或调整CDN的DNS指向负载均衡器IP,待证书生效后再恢复
- 防火墙规则拦截:检查VPC防火墙是否允许来自Google证书验证服务的HTTP(80端口)请求,Google的验证会发送HTTP请求到域名的80端口,若被拦截会导致验证失败
2. ERR_SSL_VERSION_OR_CIPHER_MISMATCH 协议/加密套件不兼容
该错误源于传统负载均衡器的SSL策略不符合Chrome的安全要求:
- 检查SSL策略是否启用了TLS 1.2及以上版本,禁用SSLv3、TLS 1.0等过时协议
- 确认使用的加密套件为现代标准(如
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256等),避免弱加密算法 - 验证托管证书是否处于
ACTIVE状态且已正确绑定到前端服务,负载均衡器配置同步可能需要数分钟,可等待配置生效后再测试
方案二错误排查
访问t1.domain2.com时证书指向t1.domain1.com,核心问题是SNI配置缺失或错误:
- 当多个前端服务共享同一公网IP和443端口时,必须启用SNI(Server Name Indication),让负载均衡器根据请求的Host头返回对应域名的证书
- 检查每个前端服务的配置:确保为每个域名的前端服务指定了正确的主机名(即对应域名),并绑定对应的自托管证书
- 若使用不同公网IP,需确认每个域名的DNS记录指向对应前端服务的IP,避免IP混淆导致证书不匹配
关于多前端服务指向同一后端的可行性
GCP完全支持多个前端服务指向同一个后端服务实现SSL访问,但需满足以下条件:
- 若共享同一IP和443端口:必须启用SNI,每个前端服务绑定对应域名的证书并配置正确的主机名
- 若使用不同IP:每个前端服务配置独立的公网IP,对应域名的DNS记录指向各自的IP,无需SNI也可正常工作
内容的提问来源于stack exchange,提问作者anurag
相关产品推荐
相关产品推荐

