如何将 SSL 证书从 NGINX Web 服务器迁移到 IIS?

如何将 SSL 证书从 NGINX Web 服务器迁移到 IIS?

我曾经在我的 Linux 服务器中托管过一个网站。我从 GoDaddy 购买了 SSL 证书,https://www.example.com该网站运行良好。

今天,我想将网站从 Linux 服务器移至 Windows Server 2012 R2。我已完成配置,使其http://www.example.com指向 Windows 服务器的公共 IP,并且网站正常运行。

现在,我需要将SSL证书绑定到网站才能https://www.example.com工作。

我也遇到过同样的问题这一页pixelloa建议use the MMC snapin to import the cert into PERSONAL, click it and grab the serial # line. Go to dos, run certutil -repairstore my "paste the serial 3 in here" (you need the quotes) then refresh MMC with personal certs。但是,在选择后,certutil弹出Select a smart card device窗口,cancel我得到了这个:

在此处输入图片描述

所以我被困在这里了。有人有解决办法吗?

也许我应该在设置 Windows Server 之前在 Linux Server 中执行某些操作?我是否必须购买另一个 SSL 证书?

答案1

您应该能够撤销当前证书并要求您的证书提供商为您的新私钥提供新证书,而无需任何额外费用。

答案2

听起来你真正需要做的就是将证书从 Apache 站点迁移到 IIS 站点。网络解决方案(对于 Apache,但对于 nginx 或任何其他 Web 服务器来说类似)将允许您这样做:

  1. 在 Apache 服务器上找到证书、中间密钥和私钥文件。运行以下命令,在需要的地方替换路径和文件名。您需要输入稍后需要记住的密码。

openssl pkcs12 -export -in certificate_file -inkey private_key_file -certfile intermediate_file -out CertificateAndKey.pfx

  1. 将生成的“CertificateAndKey.pfx”文件复制到 IIS 服务器上。
  2. 单击“开始”,选择“运行”。输入“mmc”,按“确定”。
  3. 在 MMC 控制台中,单击“文件”菜单,然后选择“添加/删除管理单元”。
  4. 单击“添加”按钮,然后从列表中选择“证书”并单击“添加”。
  5. 从下一个菜单中,选择“计算机帐户”。单击“下一步”,选择“本地计算机”,然后单击“完成”。单击“关闭”,然后单击“确定”。您将返回主 MMC 控制台。
  6. 展开“证书(本地计算机)”树并单击“个人”子文件夹。右键单击并选择“所有任务”>“导入”。
  7. 按照向导操作,选择默认选项。您将需要第二步中的密码。证书现在将被导入并可供 IIS 使用。
  8. 加载 IIS 管理控制台,右键单击需要安装证书的网站,选择“属性”和“目录安全”。
  9. 单击“服务器证书”按钮,从选项中选择“分配现有证书”。
  10. 从列表中选择新导入的证书。完成向导。
  11. 证书将在网站上安装并运行。可能需要重新启动 IIS 才能完成此过程。

相关内容