IIS绑定域名与HTTPS证书
先确定 HTTPS 在哪里结束
适用于 Windows Server 2022/2025 上由 IIS 直接提供 HTTPS 的站点。文中的 example.com 和 203.0.113.10 是保留的演示域名与地址,操作时必须替换。先确认域名 A 记录指向正确入口;配置了 AAAA 时,IPv6 入口也必须可用。若前面还有代理或负载均衡,先确定客户端连接到哪一层,公网证书与 IIS 源站证书可能分别配置。

把带私钥的 PFX 导入本机
- 准备可信来源的 PFX/P12 文件及其密码,确认证书包含目标域名、有效期正常,并带有对应私钥。按 Windows+R,运行
certlm.msc,打开“证书(本地计算机)”,不要误用当前用户的证书管理器。 - 在“个人 → 证书”中右键“所有任务 → 导入”,选择 PFX,输入密码,将证书放入“个人”存储。无业务需要时,不勾选“标记此密钥为可导出”。
- 打开导入后的证书,确认常规页提示存在对应私钥,在详细信息中检查“使用者可选名称”覆盖域名,并记录指纹和到期日。只有公钥文件且本机没有匹配私钥时,不能靠改后缀得到可用 PFX,应取得配套材料或重新签发。
- 检查“证书路径”是否正常。缺少中间证书时,将签发机构提供的中间证书补入本地计算机“中间证书颁发机构”;不要随意把网站证书放进“受信任的根证书颁发机构”。
在目标站点增加 HTTPS 绑定
打开 IIS 管理器,选中目标“网站 → 绑定 → 添加”。类型选 https,端口填 443,主机名填 example.com,选择对应 SSL 证书。IP 地址使用本机实际持有的地址或“全部未分配”;NAT 环境的公网 IP 不一定属于本机网卡,不能直接照抄。
同一个 IP 的 443 端口承载多个域名时,应为各站点填写正确主机名并勾选“要求服务器名称指示”(SNI),让 TLS 握手按域名选择证书。检查其他站点是否存在相同绑定;兼容不支持 SNI 的旧客户端时,需另行规划独立 IP 等方案。若一个证书覆盖多个域名,各个实际使用的域名仍要有匹配的绑定。
保存前记录原有 IP、端口、主机名、SNI 状态和证书指纹,便于回退。随后检查系统防火墙、外围规则与 NAT 是否允许所需的 TCP 443。
从外部确认实际提供的证书
在外部客户端用完整 HTTPS 域名访问。页面应为目标站点,浏览器不应出现证书警告;查看连接详情,核对域名、到期日、证书链以及实际证书是否与本次绑定一致。直接访问 IP 不能代替域名验证,也不能证明 SNI 正确。
需要在 DNS 切换前指定入口核查时,可以在已安装 curl 的 Windows 客户端 PowerShell 或命令提示符中执行以下示例。先替换域名和 IP;-q 必须是第一个参数,以忽略默认 curl 配置。命令保留证书校验、绕过代理,并设置连接 5 秒、总计 20 秒超时:
curl.exe -q --noproxy "*" --connect-timeout 5 --max-time 20 --resolve example.com:443:203.0.113.10 -I https://example.com/
证书错误应先修复名称、有效期或信任链,不能添加跳过校验的参数。如果 TLS 已通过但 HEAD 请求返回 405,改用浏览器验证页面,不能把该状态码当成证书失败。
续期后再查一次绑定
导入新证书不等于所有绑定已经更新。逐个打开相关 HTTPS 绑定,核对选中的证书指纹和到期日,必要时改选新证书并保存;从外部再次验收。多节点、IPv4/IPv6 或代理入口要分别检查,避免部分访问路径仍提供旧证书。
证书不在下拉列表中,先查本地计算机“个人”存储及私钥;显示其他域名证书,先查入口、主机名与 SNI;部分客户端不信任,检查中间链及客户端信任环境。新配置有误时恢复原绑定;只有旧证书仍有效且可信时,它才适合作为回退证书。验收完成前保留原有配置记录与可用证书。