我有一个自生成的 SSL 根 CA 证书
/usr/local/share/ca-certificates/skynet.crt
该文件为 PEM 格式。
将 skynet.crt 复制到后/usr/local/share/ca-certificates
,我运行
sudo update-ca-certificates
现在我还将证书添加到了 Firefox 根证书和 chrome 根证书中。
我可以使用该机构颁发的 SSL 证书 (skynet.crt) 在 https://localhost:5007 上运行网站。
如果我先运行网站,然后启动 chrome/firefox,并在地址栏中输入 https://localhost:5007,它在 Firefox 和 Chrome 上运行良好。
但是,当我从 JetBrains Rider 运行网站并在 https://locahost:5007 打开网站(在 Firefox 中)时,我在 KIO 客户端中收到错误:
我点击了详细信息,然后我得到了
我关闭错误详细信息,然后单击继续,出现此屏幕:
由于我不想要任何永久条目,因此我单击“仅当前会话”
它打开 chrome,然后我收到“安全连接失败”。
现在我当然会收到这个错误,因为 skynet 证书已经在 Firefox 商店中了。
但是为什么 KIO-Client 将其识别为无效证书?
它是否使用自己的证书存储?或者我是否需要执行比 update-ca-certificates 更多的操作,直到证书被接受?
或者有什么问题?
注意:如果我执行以下命令,我可以重现该问题:
kioclient5 exec https://localhost:5007
答案1
这似乎是 ubuntu 存储库中 Firefox 版本的问题。
修复此问题:
安装 Firefox 开发者版本。
备份 /usr/share/applications/firefox.desktop。
删除并清除系统 Firefox。
将备份复制到 /usr/share/applications/firefox.desktop
创建 /usr/bin/firefox 并包含内容
/bin/bash #!/bin/bash
exec -a "$0" "/opt/mozilla/firefox/firefox" "$@"
其中 /opt/mozilla/firefox 是您安装 Firefox 开发人员版本的位置。
chmod +x /usr/bin/firefox
完毕。
您现在可以开始
kioclient5 exec https://localhost:5007
而且它还能正常工作。