不需要。自 TLS 1.0 起,通过 Server Name Indication(SNI)扩展,多个域名可共享同一 IP 地址并各自部署独立的 SSL 证书。该机制已在 RFC 6066 中标准化,并被所有现代浏览器、服务器及操作系统广泛支持。SNI 在 TLS 握手初期明文发送目标域名,使服务器能选择对应证书响应,从而规避传统“一个IP绑定一个证书”的限制。SNI 是当前 HTTPS 部署的事实标准,绝大多数生产环境(包括 Nginx、Apache、IIS、OpenResty、Cloudflare、CDN 边缘节点)均默认启用且无需额外配置。仅在极少数遗留场景中需考虑 IP 绑定:如运行 Windows Server 2008 R2 及更早版本的 IIS,或面向已停用 SNI 支持的旧设备(如 Android 2.x、Windows XP SP2 及更早系统)提供服务。
SSL证书
可通过 ssl证书工具 中的「SNI 检测」功能验证目标服务器是否正确响应多域名证书;亦可用 OpenSSL 命令行执行:
openssl s_client -connect example.com:443 -servername example.com -tls1_2
检查返回证书是否匹配预期域名。
| 维度 | 参考标准 | 工程师建议 |
|---|---|---|
| 浏览器兼容性 | Chrome 6+、Firefox 2+、Safari 3.2+、Edge 12+、iOS 4+、Android 4.0+ | 默认启用 SNI,无需独立 IP |
| 服务器支持 | Nginx ≥1.11.5、Apache ≥2.2.12、IIS ≥8.0(Win2012+) | 确认启用 ssl_protocols 和 ssl_sni 指令(Nginx)或 SNI 复选框(IIS GUI) |
| 证书类型适配 | DV SSL证书、OV SSL证书、通配符证书、多域名SSL证书 均支持 SNI | 单域名SSL证书 与 多域名SSL证书 在 SNI 下行为一致;EV SSL证书 无额外限制 |
Q:国密SSL证书是否支持 SNI? A:支持。SM2 证书在 TLS 1.1+ 握手中同样依赖 SNI 扩展进行域名路由,国密 SSL证书 部署与国际算法证书在 SNI 机制上完全一致。
Q:使用 CDN 或反向代理后,源站是否还需配置 SNI? A:源站无需对外暴露 SNI —— CDN 边缘终止 TLS 后,通常以 HTTP 或私有 TLS 连接源站,此时源站证书仅用于内部校验,SNI 不参与传输。
Q:能否在同一 IP 上同时部署 DV SSL证书 和 OV SSL证书? A:可以。SNI 仅依据 hostname 匹配证书,与证书验证等级无关;但需确保每个域名绑定唯一证书文件,避免配置冲突。
加密您的网站,赢得客户信任!