如何避免使用自签名证书进行主机重定向导致的 HSTS 错误?

如何避免使用自签名证书进行主机重定向导致的 HSTS 错误?

我在 Windows Hosts 文件中创建了此记录

127.0.0.1 a.domain.name
127.0.0.1 b.domain.name
127.0.0.1 c.domain.name

在哪里
127.0.0.1- 我的服务器的 IP
[a,b,c].域名- 我需要将域名重定向到我的服务器

那么,我需要如何创建自签名证书才能获得浏览器的信任并避免 HSTS 错误?

答案1

需要澄清的是:只有手动信任此证书的浏览器才会信任自签名证书。其他浏览器都会收到警告。

在 Windows 中,您可以运行 powershell 命令New-SelfSignedCertificate -CertStoreLocation cert:\localmachine\my -DnsName *.test.com -FriendlyName "star_test_com-2020" -NotAfter (Get-Date).AddYears(2)为 test.com 创建有效期为两年的自签名通配符证书。

然后,您可以在开始菜单中搜索以manage computer certificates导出证书,以便在其他计算机上使用。如果您只想在客户端上信任证书,则需要导出的副本没有私钥。如果您想从服务器出示证书,则需要导出一份副本私钥。

为了使您自己的计算机信任该证书,该证书必须存在于Trusted Root Certification Authorities证书管理器中。您可以Personal用鼠标右键单击它并将其从存储中复制到那里。

为了使 (Windows/Microsoft) 服务能够提供证书,它通常需要存在于 LocalMachine\Personal 存储中。


但是:如果你想公开提供服务,你需要使用 CA 签名的证书。通过以下方式绝对是最便宜且最简单的让我们加密,但我没有在 Windows 服务器上使用它们的经验。另一种方法是向商业 CA 付费购买证书。

相关内容