将自签名证书添加到 Linux 版 Chromium 上的受信任 CA

将自签名证书添加到 Linux 版 Chromium 上的受信任 CA

我无法在 Chromium 中安装自签名 CA 证书并让它接受 TLS 连接。

Your connection is not private
Attackers might be trying to steal your information from XXX (for example, passwords, messages, or credit cards). Learn more
NET::ERR_CERT_INVALID

自签名证书和 Chromium for Linux 是否存在我不知道的问题?


细节:

我在 Ubuntu 上使用 Chromium (版本 95.0.4638.69(官方版本)基于 Ubuntu 构建,运行于 Ubuntu 18.04(64 位))。

有一个网站使用他们自己的 CA。当我访问它时,我收到有关 TLS 证书不受信任的常见消息。

我已经多次处理过这种情况,所以我将证书导出为Base64-enoded ASCII, single certificate并保存到磁盘。然后我转到 ChromiumSettings - Manage HTTPS/SSL certificates并将其导入Authorities,最后单击Trust this certificate for...

我重新启动了 Chromium,访问该网站,但仍然出现错误。

我在 Windows 版 Chrome(使用 Windows 密钥库)中执行了完全相同的步骤,一切顺利。为了以防万一,我还在 Linux 中尝试了 Windows 导出的服务器证书,但我得到了同样的错误,因为它们是相同的。

我检查过和其他网站,看看 Chromium 是否有问题,但我找不到任何有用的信息。似乎有人说某些 TLS 功能仅在 Linux 上失败,因此似乎该功能出于某种原因无法在软件中工作。

答案1

我在装有 Debian 的 Pi 上使用 Chromium,所以很相似。我将本地控制的 CA 服务器添加到 Linux 操作系统(/usr/local/share/ca-certificates/ 并运行 update-ca-certificates),它与 curl 之类的东西配合得很好。但 Chromium 给了我与上述相同的错误。

我使用 certutil 将相同的证书添加到 Chromium(重新启动 Chromium),现在可以正常工作:

https://chromium.googlesource.com/chromium/src.git/+/refs/heads/main/docs/linux/cert_management.md 如何向 Ubuntu 添加证书颁发机构(CA)?

我的命令行(作为 Chromium 用户,而不是 root 用户):

certutil -d sql:$HOME/.pki/nssdb -A -t ${TRUSTARGS} -n "Taz Root" -i taz_root_ca.crt

其中 taz_root_ca.crt 是 step-ca(我正在使用的本地 CA)生成的证书。奇怪的是,“昵称”与我输入的内容匹配,但:

$  certutil -d sql:$HOME/.pki/nssdb -L

Certificate Nickname                                         Trust Attributes
                                                             SSL,S/MIME,JAR/XPI

Cherry CA Root CA - Cherry CA                                CT,C,C

相关内容