无法让 Chrome 信任我的自签名 ssl 证书

问题描述 投票:0回答:1

背景

  • 我尝试为我的网站开发一个 ServiceWorker
  • 由于我的证书不受信任(自签名),ServiceWorker 注册失败
  • 我在本地使用的网址是https://mypage.local

我试图让我的浏览器信任我的证书

  • 使用 --ignore-certificate-errors --unsafely-treat-insecure-origin-as-secure=https://mypage.local/ --allow-insecure-localhost 等标志启动 chrome
  • 创建根 CA 并将其作为受信任的 CA 安装在我的操作系统(Windows)中
  • 使用该根 CA 创建新的服务器证书并将其用于本地网站(新证书已交付)
  • Firefox 告诉我 SSL_ERROR_BAD_CERT_DOMAIN。除了 CN 之外,我还向证书添加了 SAN 条目
  • 我通过 https://www.sslshopper.com/csr-decoder.html 验证了我的证书,并且字段正确

证书仍然不受信任,我仍然在 Firefox 中收到 SSL_ERROR_BAD_CERT_DOMAIN

知道我仍然做错了什么或者如何进一步调试我的问题吗?

ssl ssl-certificate self-signed certificate-authority subject-alternative-name
1个回答
0
投票

就我而言,问题是我的证书没有 SAN 条目(主题备用名称),只有 CN(通用名称),该名称已被弃用(参见示例此处)。

我写道,我在问题的“我尝试过的内容”一章中添加了 SAN 条目,但 @steffen-ullrich 向我指出(对我的问题发表评论),人们在创建证书时经常忘记从 CSR 复制这些 SAN 条目。这正是问题所在。

因此,如果您遇到此类问题,请确保添加 SAN 条目并且它们能够进入证书

帮助我创建根 CA 和证书(旧进程)的来源

在这个 bug 研究过程中,我意识到自 OpenSSL v1.1.1 以来,使用根 CA 和 SAN 条目创建证书的过程变得更加容易,尤其是 OpenSSL v3。不幸的是,我找到和使用的资源解释了我现在经历的旧过程。

这里是描述新的、更简单的方法的其他来源

© www.soinside.com 2019 - 2024. All rights reserved.