ssl新闻资讯

文档中心

2涓煙鍚峉SL璇佷功鎬庝箞缁戝畾锛熸墜鎶婃墜鏁欎綘瀹炵幇澶氬煙鍚岺TTPS鍔犲瘑

时间 : 2025-09-27 15:39:03浏览量 : 3

22涓煙鍚峉SL璇佷功鎬庝箞缁戝畾锛熸墜鎶婃墜鏁欎綘瀹炵幇澶氬煙鍚岺TTPS鍔犲瘑

在网站运维中,我们经常遇到一个服务器需要同时支持多个域名的情况。比如主站用`example.com`,而博客用`blog.example.com`,或者公司有多个品牌分别使用不同域名。这时就需要为多个域名配置SSL证书,确保每个域名的通信都是HTTPS加密的。本文将详细介绍2个域名SSL证书的绑定方法,并给出具体操作示例。

一、多域名SSL证书的3种实现方式

1. 单域名证书重复申请(最不推荐)

为每个域名单独购买和部署SSL证书。例如:

- `example.com` 装一个证书

- `blog.example.com` 再装一个证书

缺点:管理麻烦、成本翻倍、容易遗漏更新

2. SAN证书(推荐方案)

一张证书包含多个"主题备用名称"(Subject Alternative Name),例如:

```

主域名: example.com

备用名: blog.example.com

优势

- 一次部署搞定所有域名

- 浏览器显示统一的企业名称(OV/EV证书)

- Let's Encrypt等机构免费支持

3. 通配符证书(适合子域名场景)

用`*.example.com`覆盖所有同级子域名,但不能跨主域(无法包含other-site.com)

二、实战演示:Nginx配置双域名HTTPS

假设我们需要同时保护:

- 官网 www.company.com

- API接口 api.company.com

步骤1:生成CSR文件时添加SAN

使用OpenSSL生成请求文件(关键在`req_extensions`部分):

```bash

openssl req -new -newkey rsa:2048 -nodes \

-keyout company.key -out company.csr \

-config <(

cat <

[req]

default_bits = 2048

prompt = no

default_md = sha256

distinguished_name = dn

req_extensions = san

[dn]

C = CN

ST = Beijing

L = Beijing

O = Company Ltd

CN = www.company.com

[san]

subjectAltName = @alt_names

[alt_names]

DNS.1 = www.company.com

DNS.2 = api.company.com

EOF

)

```

步骤2:向CA提交包含SAN的CSR

无论是购买商业证书还是申请Let's Encrypt免费证书,都需要确保:

1. DigiCert等商业CA的控制面板中有"添加备用名称"选项

2. Certbot工具使用`-d`参数指定多个域名:

certbot certonly --nginx -d www.company.com -d api.company.com

步骤3:Nginx服务器配置示例

```nginx

server {

listen 443 ssl;

server_name www.company.com;

ssl_certificate /path/to/fullchain.pem;

ssl_certificate_key /path/to/private.key;

SSL其他配置...

}

server_name api.company.com;

ssl_certificate /path/to/fullchain.pem;

同一份证书文件!

关键点:两个虚拟主机引用相同的证书文件,Nginx会根据访问的域名自动匹配对应内容。

三、常见问题解决方案

Q1: Chrome提示"证书不匹配"错误?

检查SAN是否完整包含所有访问的域名。用以下命令验证:

openssl x509 -in certificate.crt -text -noout | grep DNS

Q2: IIS如何绑定多域名证书?

1. IIS管理器 → "服务器证书" → "完成证书申请"

2. 站点绑定HTTPS时选择同一个导入的SAN证书

Q3: Let's Encrypt最多支持多少SAN?

当前限制100个域名/张证书,但建议不超过10个以便于管理。

四、安全最佳实践

1. 定期轮换密钥:即使使用SAN证书,也应每年更换私钥

2. HSTS预加载:对主域提交HSTS可保护所有子域

3. OCSP装订:减少客户端验证延迟的命令示例:

```nginx

ssl_stapling on;

ssl_stapling_verify on;

通过以上方法,您可以高效地为多个域名部署SSL加密。相比单独管理多张证书,SAN方案能降低80%的管理工作量。当您下次需要新增shop.company.com时,只需重新生成包含新SAN的CSR即可!

TAG:2个域名ssl证书怎么绑定,一个域名可以申请多个ssl证书吗,一个域名两个证书,两个域名,二级域名怎么绑定ssl证书,2个域名可以绑定一个服务器吗