文档中心
IIS鏈嶅姟鍣ㄥ浣曞悓鏃跺畨瑁呬袱涓猄SL璇佷功锛熷疄鎴樻搷浣滄寚鍗?txt
时间 : 2025-09-27 16:19:49浏览量 : 1

****
在日常的网络安全运维中,我们经常遇到一个服务器需要承载多个域名的情况。比如公司官网(www.example.com)和后台管理系统(admin.example.com)部署在同一台IIS服务器上,但这两个域名可能需要不同的SSL证书(比如一个用了DigiCert,另一个用了Let's Encrypt)。这时候就需要在IIS上同时绑定两个SSL证书。
本文会用“大白话”+实际案例,手把手教你如何在IIS服务器上配置多个SSL证书,并解释背后的技术原理。
一、为什么需要两个SSL证书?
1. 多域名需求
假设你的服务器托管了以下两个网站:
- 官网:`www.example.com`(使用商业证书,如Symantec)
- 客户门户:`portal.example.com`(使用免费证书,如Let's Encrypt)
如果只绑定一个证书,另一个域名访问时会报错“证书不匹配”,用户体验极差。
2. 不同安全级别需求
比如:
- 对外服务的网站需要EV证书(绿色地址栏显示公司名)。
- 内部测试环境用自签名证书即可。
这时候就需要分开配置。
二、技术原理:SNI扩展是关键
过去的老浏览器(如IE6/Windows XP)不支持SNI(Server Name Indication),导致一台服务器只能绑一个SSL证书。但现在99%的现代浏览器都支持SNI,它的工作原理很简单:
> 用户访问网站时,浏览器会先“问”服务器:“我要访问portal.example.com,你的证书是啥?”
> 服务器根据域名返回对应的证书,而不是一股脑把所有证书都丢给浏览器。
这就实现了“一个IP对应多个SSL证书”。
三、实操步骤:在IIS上绑定两个SSL证书
环境准备
- Windows Server + IIS 8+(本文以IIS 10为例)
- 两个域名的SSL证书文件(.pfx或.crt格式)
步骤1:导入证书到服务器
1. 打开【开始菜单】→【运行】→输入`mmc` → 【文件】→【添加/删除管理单元】→选择【证书】→【计算机账户】。
2. 在“个人”文件夹右键→【所有任务】→【导入】,分别导入两个PFX文件。
> ?? *注:如果是.crt文件,需先右键安装到“受信任的根颁发机构”。*
步骤2:在IIS中绑定域名和证书
1. 打开IIS管理器 → 选择目标网站 → 右侧点击【绑定】。
2. 添加HTTPS绑定 → 关键点来了!:
- 主机名填写具体域名(如`www.example.com`)。
- SSL证书选择对应的那个(如下图)。

3. 重复上述步骤为第二个域名(如`portal.example.com`)绑定另一个证书。
验证是否成功
- 浏览器访问`https://www.example.com` → 点击地址栏锁图标 → 查看证书信息是否正确。
- 再访问`https://portal.example.com` → 确认显示的另一个证书。
四、常见问题排查
? 问题1:访问第二个域名仍提示“不安全”
可能原因:未正确填写“主机名”(留空会默认使用第一个绑定的证书)。
? *解决*:检查IIS绑定时是否填了完整域名。
? 问题2:旧设备无法访问(Android 4.x等)
可能原因:这些设备不支持SNI。
? *解决*:
1. 给老旧设备单独分配一个IP+独立端口(如8443)。
2. IIS中新增站点绑定到该IP:8443 → SSL选旧版兼容性高的TLS协议。
五、高级技巧:通配符和多域名合体方案
如果想更灵活:
1. 通配符+单域名组合:
- `*.example.com`覆盖所有子域 + `another.com`单独买一张单域证。
2. SAN多主体备用名:
一张SAN证可包含多个域名 (适合中小规模)。
****
通过SNI技术+IIS的主机名绑定功能,我们可以轻松实现一台服务器挂载多个SSL证。关键记住三点:
1?? SNI让浏览器和服务器能“对暗号”匹配证;
2?? IIS绑定时务必填对主机名;
3?? XP/旧安卓用户需额外兼容处理。
如果你的业务涉及多域或多子域场景,赶紧动手试试吧! ??
TAG:iis两个ssl证书,一个iis可以配几个ssl,ssl证书多个域名,ssl证书绑定域名还是ip,iis绑定多个证书,iis绑定https证书