信任来自IIS的自签名证书

信任来自IIS的自签名证书,iis,certificate,ssl-certificate,iis-8,Iis,Certificate,Ssl Certificate,Iis 8,我有一个外部托管的iis Web服务器,在那里我运行我的网站。我想将自签名证书添加到此网站并在本地客户端上信任它,以从浏览器中删除“不安全连接” 到目前为止,我所做的工作如下 在IIS中创建了自签名证书:服务器证书->创建自签名证书。证书颁发给服务器名,例如“ABCD01” 使用自签名证书创建了具有https绑定的网站 使用以下命令从IIS导出自签名证书:服务器证书->导出。这导致了一个.pfx文件 已在本地客户端上导入.pfx证书文件:管理计算机证书->受信任的根证书颁发机构->导入 将主机名

我有一个外部托管的iis Web服务器,在那里我运行我的网站。我想将自签名证书添加到此网站并在本地客户端上信任它,以从浏览器中删除“不安全连接”

到目前为止,我所做的工作如下

  • 在IIS中创建了自签名证书:服务器证书->创建自签名证书。证书颁发给服务器名,例如“ABCD01”
  • 使用自签名证书创建了具有https绑定的网站
  • 使用以下命令从IIS导出自签名证书:服务器证书->导出。这导致了一个.pfx文件
  • 已在本地客户端上导入.pfx证书文件:管理计算机证书->受信任的根证书颁发机构->导入
  • 将主机名(ABCD01)和ip添加到主机文件:C:\Windows\System32\drivers\etc\hosts

  • 当我尝试在firefox(使用)中打开网站时,我仍然得到“您的连接不安全”。我遗漏了什么?

    有多个问题:

  • IIS证书生成器使用SHA1签名算法创建自签名证书,该算法在现代浏览器中已过时。您必须使用不同的工具来创建测试证书。例如,使用PowerShell
    New SelfSignedCertificate
    cmdlet,您可以在其中指定签名算法。请看这篇文章以获得一个示例:
  • 新的自签名证书` -DnsName“ABCD01”` -CertStoreLocation“cert:\LocalMachine\My”` -FriendlyName“测试开发证书”` -text扩展名“2.5.29.37={text}1.3.6.1.5.5.7.3.1”` -密钥使用数字签名、密钥加密、数据加密` -提供程序“Microsoft RSA SChannel加密提供程序”` -哈希算法“SHA256”
  • IIS证书生成器无法使用Google Chrome中所需的SAN(使用者替代名称)证书扩展生成证书。您必须使用不同的工具来创建测试证书。请看上面的例子以供参考

  • Google Chrome使用内置的Windows证书存储建立信任,而FireFox使用自己的证书存储。因此,在将证书添加到Windows证书存储之后,您必须手动将测试证书导入FireFox


  • 您使用的浏览器是什么?顺便说一句,你不需要在PFX中导出证书,你需要在没有私钥的情况下以
    .CER
    格式导出它。我正在使用Firefox或ChromeI。我已经写了一篇非常详细的演练,介绍了如何在Windows上为IIS创建自签名证书。它应该回答您的所有问题,并为您提供测试和调试结果的方法。请参阅我在其中详细描述了如何信任证书的“尝试”回答。它也适用于firefox。谢谢你的解释!正如您所解释的,我将证书更改为SHA256。Firefox的问题正如您所解释的,是单独的证书存储。在2019年为所有找到这个答案的人更新:IIS证书生成器现在使用更安全的SHA256RSA算法。您可以通过转到
    服务器证书->您的证书->查看->详细信息-/code>@Crypt32检查证书的算法如何将DnsName设置为本地主机?谢谢
    New-SelfSignedCertificate `
        -DnsName "ABCD01" `
        -CertStoreLocation "cert:\LocalMachine\My" `
        -FriendlyName "test dev cert" `
        -TextExtension "2.5.29.37={text}1.3.6.1.5.5.7.3.1" `
        -KeyUsage DigitalSignature,KeyEncipherment,DataEncipherment `
        -Provider "Microsoft RSA SChannel Cryptographic Provider" `
        -HashAlgorithm "SHA256"