文档中心
SSL璇佷功澶氬煙鍚嶅缃戠珯閰嶇疆鎸囧崡鐪侀挶鍙堝畨鍏ㄧ殑HTTPS瑙e喅鏂规
时间 : 2025-09-27 16:47:01浏览量 : 4
什么是多域名SSL证书?

想象一下你经营着连锁超市,每家分店都需要一把独特的钥匙开门。传统方式是为每家店配一把单独钥匙(单域名证书),而多域名SSL证书就像一把万能钥匙,可以同时打开多家门店的门锁。在技术层面,这类证书允许通过一个SSL保护多个完全不同的域名。
多域名SSL证书(SAN证书)的核心在于"主题备用名称"(Subject Alternative Name)扩展字段。这个字段就像一张通行证上的多个名字列表,浏览器会逐个核对当前访问的域名是否在列表中。例如:
- 主域名:www.company.com
- 备用名:shop.company.com
- 备用名:blog.company.net
- 备用名:api.company.org
当用户访问其中任何一个域名时,浏览器都会验证该域名是否包含在证书的SAN列表中,验证通过即建立加密连接。
为什么需要多域名SSL证书?
场景案例1:某电商企业拥有主站(www.example.com)、移动端(m.example.com)、API接口(api.example.com)和促销子站(sale.example.net)四个站点。使用传统方式需要购买4个单域名证书,年费约$200×4=$800;而采用支持4个域名的多域名SSL证书仅需$300/年,节省62%成本。
场景案例2:跨国企业的地区门户网站:
- 中国站(www.company.cn)
- 美国站(www.company.us)
- 日本站(www.company.jp)
管理员只需维护一个证书即可覆盖所有地区站点,避免因某个地区证书过期导致服务中断的安全事故。
从安全运维角度看:
1. 统一到期日:所有域名的有效期同步,避免漏更新某个证书
2. 集中管理:只需在单个控制台操作,无需切换多个证书管理界面
3. 快速部署:新增域名时仅需重新签发而非购买新证书
技术实现详解
CSR生成技巧
生成CSR(证书签名请求)时需要使用包含所有域名的配置文件。以下是OpenSSL配置示例:
```ini
[req]
distinguished_name = req_distinguished_name
req_extensions = v3_req
[req_distinguished_name]
countryName = CN
stateOrProvinceName = Beijing
localityName = Beijing
organizationName = Example Inc
commonName = www.example.com
[v3_req]
subjectAltName = @alt_names
[alt_names]
DNS.1 = www.example.com
DNS.2 = shop.example.com
DNS.3 = blog.example.net
```
关键点在于`subjectAltName`部分明确列出了所有需要保护的域名。Windows服务器用户可通过IIS管理器图形界面添加备用名称。
Nginx配置示例
```nginx
server {
listen 443 ssl;
server_name www.example.com;
ssl_certificate /path/to/multidomain.crt;
ssl_certificate_key /path/to/private.key;
HSTS等安全头配置...
}
listen 443 ssl;
server_name shop.example.com;
使用相同的证书文件
Apache虚拟主机配置
```apacheconf
ServerName www.example.com
SSLEngine on
SSLCertificateFile "/path/to/multidomain.crt"
SSLCertificateKeyFile "/path/to/private.key"
ServerName shop.example.com
SSLEngine on
指向相同的文件路径
选购决策指南
类型对比表
| 类型 | 覆盖范围 | CA验证等级 | 适合场景 |
||||-|
| DV多域名 | ≤250个域 | 基础验证 | SaaS平台、测试环境 |
| OV多域名 | ≤100个域 | 企业认证 | B2B服务、***机构 |
| EV多域名 | ≤50个域 | 严格审核 |金融机构、支付网关 |
*注:不同CA的具体限额可能有所差异*
CA厂商对比
1. Sectigo:
- Pro套餐支持250+域名
- API支持自动化管理
- $189/年起
2. DigiCert:
- Secure Site Multi-Domain
- OCSP装订优化
- $599+/年但含保险
3. Let's Encrypt:
- ACME协议自动签发
- 免费但仅限100个名/证
- 每60天需续期
实际案例:某在线教育平台使用Let's Encrypt的通配符+多域名组合方案,通过脚本自动为80+客户子域(*.client1.platform.edu等)部署HTTPS,年节约$15,000+证书费用。
HTTPS最佳实践建议
1. 名称数量规划:
- SAN字段数量应预留20%余量应对临时需求
- *.example.com的通配符与具体名称不要重复包含
2. 监控策略:
```bash
OpenSSL检查命令示例:
openssl x509 -in multidomain.crt -text -noout | grep "DNS:"
Nagios监控插件配置示例:
define command {
command_name check_ssl_multi
command_line /usr/lib/nagios/plugins/check_ssl_cert.py \
--host $HOSTADDRESS$ --port 443 \
--altnames $ARG1$
}
```
3. 应急方案:
- CA控制台应保存至少2个管理员联系方式
- DNS记录保持有可快速切换的CNAME备用方案
4. 性能优化:
```nginx
OCSP装订配置提升TLS握手速度
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /path/to/ca-bundle.pem;
5. 混合部署方案
对于既有固定主站又有动态客户子域的场景,可采用"通配符+多域名"组合模式:
*.example.com (通配符主体)
+ static-cdn.example.net (额外添加的SAN)
+ partner-api.example.org (额外添加的SAN)
这种架构既保证了主要业务的灵活性,又能为特殊需求提供独立的安全保障。
FAQ高频问题解答
Q:已部署的多域名SSL如何新增网站?
A:典型流程分三步走:
1) CA控制台提交变更请求添加新SAN →
2) CA重新签发含新域的CRT文件 →
3) Web服务器重载配置文件。多数商业CA允许5次免费重新签发/年。
Q:主域(Common Name)和SAN的技术区别?
A:虽然现代浏览器已平等对待两者(Chrome58+),但最佳实践是:
- Common Name填写最高频访问的域 →
- SAN列表包含所有其他需要保护的变体 →
Q:跨国业务需要注意什么?→
A:特别注意两点合规要求:
1) GeoTrust等国际CA签发的泛欧型证书要确认包含.id等特殊国别域 →
2) China SSL等国内机构签发的多域证可能需要单独备案每个二级域 →
Q Let's Encrypt限制怎么破?→
A: ACME自动化方案的两种扩展方法:
方法一)分布式签发架构 →
主服务器负责*.example.com的通配符证 →
各区域节点自行申请本区子域(m.europe-example.com等)
方法二)CAA记录授权 →
example.com IN CAA issue "letsencrypt.org; validationmethods=dns-01"
europe-example IN CAA issue "digicert.cn; account=12345"
TAG:ssl证书多域名多网站,ssl证书域名解析,多域名ssl证书价格,ssl单域名,域名开启ssl证书无法访问