核心限制:IIS 原生不支持国密算法
在开始配置之前,必须明确一个关键事实:Microsoft IIS 原生不支持国密系列算法(SM2/SM3/SM4)。在标准 Windows Server + IIS 环境下直接导入 PFX 证书,IIS 将无法识别证书的私钥类型。如果已经在服务器上完成了国密专用 SSL 网关的部署和配置,则可以将 PFX 证书导入网关使用。
PFX 格式在 IIS 国密场景中的作用
PFX(PKCS#12)是 IIS 和 Windows 服务器通用的证书格式,它将**证书公钥、私钥和完整的证书链**打包进一个二进制文件,并使用密码保护。对于国密证书:
国密 SSL 证书采用 SM2 算法体系,通常需要签名证书和加密证书两对公私钥。
如果您的国密网关要求以单一文件形式上传证书,需要先将这两个证书合并为一个 PFX 文件,合并顺序为:域名证书 > 中间证书 > 根证书。
证书转换提醒:如果您的国密证书以其他格式(如 PEM、TXT)提供,需要先使用 OpenSSL 工具转换为 PFX 格式。转换命令示例:
bash
openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile ca.crt
转换时务必确保私钥与证书相匹配,并牢记设置的 PFX 密码。
配置步骤(在国密网关环境下)
确认服务器已安装并配置好国密专用 SSL 网关(如深信服、安恒、奇安信等国产安全厂商产品)后,按以下步骤操作:
1. 打开 IIS 管理器,在左侧连接树中选择服务器名称,双击“服务器证书”。
2. 在右侧 “操作” 面板中,单击 “导入”。
3. 在“导入证书”对话框中,浏览并选中 .pfx 证书文件,输入对应的 PFX 密码,选择证书存储位置为 “个人”,点击“确定”完成导入。
4. 将导入的证书与网站绑定:展开左侧网站列表,右键目标站点,选择 “编辑绑定”,点击 “添加”,类型选择 https,端口 443,SSL 证书下拉框中选择刚导入的证书名称,点击“确定”。
完成以上操作后,可访问 `https://您的域名` 验证是否正常启用 HTTPS 加密访问。
综上所述,IIS 本身不具备国密算法支持能力,需要配合国密专用网关等外部工具实现。如果部署过程中遇到证书链不完整或浏览器提示“证书不受信任”等问题,建议检查中间证书是否已正确导入到“中间证书颁发机构”存储区,并使用 SSL 检测工具验证信任链完整性。