下面我就详细的写一下多域名SSL证书的配置指南,能帮助您实现“一证多用”,覆盖多个域名或子域名的HTTPS加密需求:

一、多域名SSL证书简介

核心功能

单个证书支持多个域名(SAN:Subject Alternative Name),例如:

www.example.com、shop.example.com、blog.another.com

支持不同主域名(如 example.com 和 example.net)。

适用场景

同一服务器托管多个网站

跨子域名或跨主域名的业务系统

减少证书管理成本

与通配符证书的区别

通配符证书:覆盖单域名下的所有子域名(如 *.example.com)。

 多域名证书:自定义添加多个独立域名或子域名,灵活性更高。

二、申请多域名SSL证书

1. 生成CSR(证书签名请求

在生成CSR时,需指定所有需要绑定的域名(SAN列表):

bash

复制

openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr

在填写信息时,Common Name(CN) 填写主域名(如 example.com),其他域名在后续步骤中添加为SAN。

2. 提交申请并验证域名

向CA(如DigiCert、Sectigo)提交CSR,填写需要绑定的所有域名。

验证方式:通常通过DNS解析或文件验证,需为每个域名单独完成验证。

3. 获取并下载证书

审核通过后,CA会颁发包含所有域名的证书文件(通常包括 .crt 和中间证书链文件)。

三、配置多域名SSL证书

1. Apache服务器

修改虚拟主机配置文件(如 ssl.conf):

apache

复制

<VirtualHost *:443>

ServerName www.example.com

ServerAlias shop.example.com blog.another.com  # 可选,用于别名

SSLEngine on

SSLCertificateFile /path/to/your_domain.crt

SSLCertificateKeyFile /path/to/your_private.key

SSLCertificateChainFile /path/to/intermediate.crt

</VirtualHost>

重启服务:

bash

复制

systemctl restart apache2

2. Nginx服务器

修改Nginx配置文件(如 default-ssl.conf):

nginx

复制

server {

listen 443 ssl;

server_name www.example.com shop.example.com blog.another.com;

ssl_certificate /path/to/your_domain.crt;

ssl_certificate_key /path/to/your_private.key;

ssl_trusted_certificate /path/to/intermediate.crt;

其他SSL配置...

}

重启服务:

bash

复制

systemctl restart nginx

3. IIS服务器

(1)打开IIS管理器,选择服务器节点,进入“服务器证书”。

(2)导入证书(.pfx 文件),绑定到网站。

(3)在网站绑定的HTTPS设置中,选择证书并指定主机名(需启用SNI扩展)。

四、注意事项

1.域名数量限制:不同CA允许的SAN域名数量不同(通常为100~250个)。

2.新增域名:后续添加新域名需重新生成CSR并付费更新证书。

3.SNI支持:确保客户端浏览器支持SNI(Server Name Indication),否则需为每个域名分配独立IP。

4.通配符组合:部分证书支持“通配符+多域名”,如 *.example.com + blog.another.com。

五、常见问题

1:多域名证书能否后续添加新域名

需重新申请证书并支付费用,原有证书不会自动扩展。

2:证书过期后续订是否需要重新验证所有域名?

是的,续订时需重新验证所有绑定的域名。

3:Let's Encrypt支持多域名证书吗?

支持!使用以下命令:

bash

复制

certbot certonly --webroot -w /var/www/html -d example.com -d shop.example.com -d blog.another.com

六、总结

多域名SSL证书通过一个证书管理多个域名,显著简化部署和维护流程。关键步骤:

1.申请时明确所有需绑定的域名

2.配置时启用SNI并正确指定证书路径

3.定期检查域名列表和证书有效期,及时更新

通过上面合理规划域名列表,您可以实现高效、低成本的全站HTTPS加密!