SSL证书支持多个域名吗?多域名证书与通配型证书有什么不同吗?

WoSign针对多域名需求,推出多域名SSL证书,一个证书支持多个域名的SSL安全加密,解决传统SSL证书仅支持单域名的限制,适用于独立主机企事业单位及虚拟主机服务提供商。

目前的SSL证书是不支持多域名的,一个SSL证书绑定一个域名。WoSign针对广大用户对支持多域名的需求,全球独家推出了多域名SSL证书(Multi-Domain Certificate),也就是说:一个多域名SSL证书可以同时用于同一台物理服务器上的所有网站域名的SSL安全加密。

一般来讲,SSL证书是绑定域名的,一个SSL证书对应一个域名,一个Web服务器的SSL加密需要一个独立的端口(缺省SSL端口为443)。目前,在一台物理服务器上(只有1个IP地址),如果要想对多个网站都使用SSL,则只有一个网站可以使用443端口,如:https://www.wosign.com,而此服务器上的其他网站就只能使用其他不同的端口,如:https://www.evssl.cn/,否则会提示证书域名不符而出现警告窗口,如下图1所示(IE6):

而多域名SSL证书则是在一个SSL证书中含有多个CN字段(公用名称),如下图2所示,支持多个不同域名。超快SSL和超真SSL都支持多域名,多域名SSL证书至少要买3个域名的证书,最多支持100个域名,支持1-3年有效期的证书。

多域名SSL证书与通配型证书是不同的,通配型SSL证书支持 *.domain.com,即支持同一域名下的所有子域,而多域名证书则是任何域名,不仅限于子域,因为一般一个单位有多个域名和一台虚拟主机上有多个不同的用户的域名,如:domain.com、domain.cn、domain.com.cn、domain.net、domain.net.cn、mydomain.com、domain.us等等。

多域名SSL证书的推出,对于有独立主机的企事业单位来讲,可以让本单位所拥有的所有域名都能部署SSL证书,这样就不会出现以往为secure.domain.com申请了SSL,但用户输入https://www.domaimn.com就提示安全警告的问题;也不需要申请多个SSL证书了,如为 mail.domain1.com 和 mail.domain2.com 分别申请SSL证书;更加方便的是,再也不用在访问时指定不同的SSL端口了(如:https://mail.domain2.com:448/)。

多域名SSL证书的推出,对于虚拟主机服务提供商来讲,就可以拓展业务销售SSL证书给现有的虚拟主机用户了。 以前由于一台主机只有一个443端口,也就是只能有一个虚拟主机用户可以正常使用SSL,而其他用户则只能使用用户不喜欢的加不同的端口号了。但有了多域名SSL证书,虚拟主机服务提供商可以把需要部署SSL证书的用户集中到一台服务器上,最多可以为100个用户(域名)提供SSL部署,使得所有虚拟主机用户都可以直接使用https://www.domain.com了。这不仅大大方便了用户,也为虚拟主机服务提供商提供了新的增值服务收入来源。

请同时参考:多域名证书安装指南



<think>嗯,用户想了解如何配置一个SSL证书支持多个域名,也就是SAN证书的配置方法。我需要先回忆一下SAN是什么,SAN是Subject Alternative Name的缩写,允许一个证书包含多个域名,这样就不用为每个域名单独申请证书了。 首先,用户可能已经知道基本的证书申请流程,但现在需要扩展到多域名。根据之前的引用,openssl可以用来生成包含SAN的证书,比如引用[1]提到使用openssl设置SAN的方法。所以,我应该先考虑使用openssl生成CSR时如何包含多个域名。 生成CSR的时候需要配置文件,里面指定subjectAltName字段,这里要列出所有需要支持域名。例如,在openssl的配置文件中添加一个扩展部分,包括DNS.1, DNS.2等。用户可能不熟悉如何编辑这个配置文件,所以需要详细说明步骤,包括创建包含SAN的配置文件,并在生成CSR时引用它。 然后,签名步骤也需要包含SAN扩展,否则生成的证书可能不会包含这些信息。引用[2]中的命令是使用openssl x509进行签名,但可能需要在签名时指定扩展文件,确保SAN信息被正确包含进去。这里需要提醒用户,在签名过程中使用-extfile参数来包含扩展配置。 另外,用户可能还关心如何验证证书是否正确包含了多个域名。这时候可以用openssl x509 -text命令查看证书的详细信息,检查subjectAltName部分是否有所有域名。 还有,用户可能对自动化工具如certbot感兴趣,引用[4]提到certbot可以自动配置Nginx的SSL证书,包括过DNS挑战来验证多个域名。如果用户使用Let's Encrypt,certbot可以方便地生成包含多个SAN的证书,只需要在命令中指定多个-d参数即可。不过,SAN证书常有域名数量限制,比如Let's Encrypt允许最多100个域名,这一点需要提醒用户。 在Nginx配置方面,用户需要将生成的证书路径和私钥路径正确指定,并设置301跳转强制HTTPS,这部分可以引用引用[3]和[4]中的步骤,比如拼接证书链和配置Nginx的SSL参数。 用户可能的疑问包括:如何处理多个不同域名是否需要每个域名都指向同一服务器?是的,证书中的域名必须解析到服务器的IP,否则无法过验证。另外,如果使用配符证书,可能需要不同的配置,但SAN证书配符证书不同的概念,这里需要区分清楚。 最后,常见问题部分需要考虑,比如证书的有效期、续签流程,以及多域名证书的管理维护。例如,使用certbot自动续期时,确保所有域名都正确更新。 总结步骤应该是:生成CSR时包含SAN配置,签名证书时包含扩展,配置Web服务器使用该证书,验证证书信息,并考虑使用自动化工具简化流程。同时,提醒用户注意域名数量限制和验证方法的选择。</think>### 如何配置SSL证书支持多域名(SAN证书SSL证书过**主题备用名称(SAN)**扩展可支持多个域名,以下是具体配置方法: --- #### 一、使用OpenSSL手动生成SAN证书 1. **创建配置文件** 新建文件`san.cnf`,包含以下内容(重点在`[req_ext]`段定义SAN): ```conf [req] distinguished_name = req_distinguished_name req_extensions = req_ext prompt = no [req_distinguished_name] CN = Common Name # 主域名 [req_ext] subjectAltName = @alt_names [alt_names] DNS.1 = domain1.com DNS.2 = domain2.com DNS.3 = *.sub.domain3.com # 支持配符子域名 ``` 2. **生成私钥和CSR** 执行命令生成包含SAN的CSR: ```bash openssl req -newkey rsa:2048 -nodes -keyout server.key \ -out server.csr -config san.cnf ``` 3. **签名证书** 使用CA证书签名时需包含SAN扩展(过`-extfile`参数引用配置文件): ```bash openssl x509 -req -in server.csr -CA ca-cert.pem -CAkey ca-key.pem \ -out server.crt -days 365 -CAcreateserial -extensions req_ext \ -extfile san.cnf ``` 签名完成后,过`openssl x509 -in server.crt -text -noout`验证SAN字段是否包含所有域名[^1][^2]。 --- #### 二、使用Certbot自动化工具(推荐Let's Encrypt) 1. **安装Certbot** ```bash snap install --classic certbot ln -s /snap/bin/certbot /usr/bin/certbot # 确保路径可用 ``` 2. **申请多域名证书** 过`-d`参数指定所有域名: ```bash certbot certonly --nginx -d domain1.com -d domain2.com -d *.sub.domain3.com ``` *若80端口未开放,改用DNS验证*: ```bash certbot certonly --manual --preferred-challenges=dns -d domain1.com -d domain2.com ``` 3. **Nginx配置示例** ```nginx server { listen 443 ssl; server_name domain1.com domain2.com; ssl_certificate /etc/letsencrypt/live/domain1.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/domain1.com/privkey.pem; # 强制HTTPS跳转 if ($scheme != "https") { return 301 https://$host$request_uri; } } ``` 证书路径常位于`/etc/letsencrypt/live/`目录下[^3][^4]。 --- #### 三、注意事项 1. **域名所有权验证** 所有域名必须解析到当前服务器IP,否则验证失败。 2. **证书有效期** Let's Encrypt证书有效期为90天,建议配置自动续期: ```bash certbot renew --quiet --post-hook "systemctl reload nginx" ``` 3. **SAN限制** 单个证书最多支持100个域名(Let's Encrypt限制),超量需拆分多个证书。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值