如何在 IIS (Windows Server) 上安装 SSL 证书

Jacki

本指南介绍如何在 Windows Server 上运行的 IIS(Internet 信息服务)Web 服务器上颁发和安装 SSL 证书。

内容:

要从外部证书颁发机构 (CA) 创建 SSL/TLS 证书,您需要生成证书签名请求(企业社会责任)。您可以从 IIS GUI 中创建 CSR:

    1. 打开 Internet 信息服务管理器控制台 (InetMgr.exe);
    2. 选择您的 Windows 主机并转至服务器证书部分;
    3. 从右侧的“操作”菜单中,选择创建证书请求;
    4. 填写证书信息=:
      1. 通用名– 指定您的客户端将连接到的站点(网络服务器)的 FQDN。例如:reports.woshub.com。如果您想为域创建通配符证书,请输入*.woshub.com
      2. 组织– 指定您的组织的名称。对于组织验证 (OV) 和扩展验证 (EV) 证书,请输入官方组织名称。个人可以使用域验证 (DV) SSL 证书。在这种情况下,您必须提供证书所有者的全名;
      3. 组织单位– 您组织内负责证书的部门的内部名称;
      4. 城市/地区
      5. 州/省
      6. 国家/地区– 两个字母的国家代码。

    5. 选择加密服务提供商和密钥长度。我们建议使用Microsoft RSA SChannel 加密提供程序密钥长度至少为2048 位;
    6. 指定保存CSR请求的文件名;
    7. 您应该得到一个以以下内容开头的文本文件BEGIN NEW CERTIFICATE REQUEST并以END NEW CERTIFICATE REQUEST线。

将您的 CSR 文件提交给有权颁发 SSL 证书的组织。如果您使用的是基于 Microsoft 的内部证书颁发机构,请上传 CSR、签署证书,然后下载 CER 文件。

如何在 Windows IIS 中安装 SSL/TLS 证书

从 CA 收到 SST/TLS 证书文件 (*.CER) 后,您可以继续将其安装在 IIS 中。

打开 IIS 管理器控制台,转到“证书”部分,然后选择完成证书请求。

请注意,本文介绍了如何安装从 Microsoft 收到的 *.CER 格式的 DER/base64 编码 X.509 证书。如果您已获得证书*.CRT如果您的证书颁发机构提供了该格式,您将无法将其导入并安装在 IIS 中。

您需要做的是将 CRT 证书转换为 PFX 格式。最简单的方法是使用开放式SSL工具,可在任何 Linux 发行版中使用。您将需要证书 (*.crt) 和私钥 (*.key) 文件。要进行转换,请运行以下命令。

$ openssl pkcs12 -export -out target.pfx -inkey source.key -in source.crt

获得 PFX 格式的证书后,您可以通过“导入”菜单将其导入。如果您有 PFX 格式的证书文件,您可以通过以下方式将其上传到您的 Windows 证书存储区:进口菜单。

推荐阅读:使用 Zabbix 监控网站 SSL/TLS 证书过期

您还可以直接从 Windows 进行 CRT 证书转换:

  1. 双击您的 CRT 文件;
  2. 前往细节选项卡并单击复制到文件;
  3. 选择Base-64 编码的 X.509(.CER); </li>
  4. 指定 CER 证书文件的保存路径。

选择包含您从证书颁发机构收到的 SSL 证书的 *.crt 文件。指定 SSL 证书的友好名称以及要放置证书的证书存储(个人或虚拟主机)。

完成后,新的 SSL 证书应出现在 IIS 中的可用证书列表中。

将 SSL 证书绑定到 IIS 网站

现在您需要将证书绑定到 IIS 网站、端口和/或 IP 地址。在 IIS 控制台中找到您的网站,然后选择编辑绑定

点击添加并填写以下信息:

  • 类型:https
  • IP地址:选择All Unassigned或绑定 SSL 证书的特定 IP 地址(您可以在 IIS Web 服务器的同一端口和 IP 地址上运行多个网站)
  • 端口号:443
  • 主机名:指定为其颁发证书的主机的名称
  • SSL 证书:从列表中查找并选择您安装的 SSL 证书

此时,您还可以为 IIS 网站启用 HTTP/3 和 QUIC 支持。

现在重新启动 IIS 网站(选择管理网站 -> 重新启动或使用iisreset命令)。

尝试使用浏览器在浏览器中打开 IIS 网站https://前缀。如果证书安装正确,浏览器地址栏中将出现一个绿色的挂锁。这意味着连接是安全的。单击挂锁图标可查看有关 SSL 证书的信息。

接下来,配置 IIS 规则,将所有对站点的 HTTP 请求重定向到 HTTPS URL 地址。

对于 Windows Server 上的 IIS 站点,您可以使用免费的 Let's Encrypt SSL 证书。