登录
首页 >  Golang >  Go问答

使用编程将 SSL 证书添加到浏览器存储中

来源:stackoverflow

时间:2024-03-04 14:18:31 258浏览 收藏

哈喽!今天心血来潮给大家带来了《使用编程将 SSL 证书添加到浏览器存储中》,想必大家应该对Golang都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习Golang,千万别错过这篇文章~希望能帮助到你!

问题内容

我有一个用 Go 编写的应用程序,它需要 Web 浏览器(最好是 Firefox)安装自签名证书。

当然,我可以向最终用户提供有关如何安装证书的说明,但这远非理想。

理想情况下,我想以编程方式添加证书 - 使用 Firefox API、命令行、注册表破解或其他方法。当然,我希望有一个跨平台解决方案,但即使只是 Windows 也只是一个开始。


解决方案


我迟到了,但您可以以编程方式将自签名或不受信任的根证书添加到广泛分发的 firefox(不依赖于任何用户的浏览器)。以下是我在 ubuntu 18.04 和 firefox 85.0 上的工作情况:

  1. 将证书(带有 pem 格式的 .crt 扩展名)添加到 /usr/local/share/ca-certificates 或 /usr/share/ca-certificates。两者都可以,但您需要更新下面 json 中的安装位置。
  2. sudo update-ca-certificates
  3. 使用以下代码创建此 json 文件:/usr/lib/firefox/distribution/policies.json
{
    "policies": {
        "Certificates": {
            "ImportEnterpriseRoots": true,
            "Install": [
                "/usr/local/share/ca-certificates/<$NAMEOFYOURCERT.crt>"
      ]
    }
  }
}

您确实可以跳过步骤 1/2,并将policies.json 文件中的安装位置指向证书所在的位置,但这可以确保您的操作系统也信任该证书,而不仅仅是 firefox。

将这些指令编写成操作系统安装的引导脚本或一次性脚本以交给用户运行(如果您信任他们),这非常简单。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>