【问题标题】:go get accept selfsigned certificate from distant host去接受来自远程主机的自签名证书
【发布时间】:2015-09-15 00:18:57
【问题描述】:

我希望能够从我的 Stash 服务器使用一个不错的 URL 发送 go get。我的存储服务器只能通过 HTTPS 工作。问题是我与 stash 一起使用的 SSL 证书是自签名的,任何go get 到我的服务器都会给我以下错误:

x509: certificate signed by unknown authority

有没有办法从go get 授权自签名证书?

【问题讨论】:

    标签: ssl go


    【解决方案1】:

    使用go get -insecure https://xxxxx

    来自go get -h

    -insecure 标志允许从存储库中获取并解析 使用 HTTP 等不安全方案的自定义域。谨慎使用。

    【讨论】:

    • 请注意,当然,没有办法知道您允许的是您自己的自签名证书还是攻击者的自签名证书,这使得它有点毫无意义!
    • 非常感谢!当我阅读帮助时,我必须跳过此标志...@elithrar 我知道,但是当您是学生时很难获得 CA 的签名证书,哈哈。感谢您的分析,我真的没有这样想。
    • @Ganitzsh 即使作为学生,获得正确的(域验证)证书也绝对不难。您无需提供任何正式 ID。像 Namecheap 或 Gandi 这样的地方非常便宜。
    • 感谢您的提示,这是我第一次遇到 SSL 和证书方面的真正问题。一开始很难理解。
    • 似乎不赞成使用 GOINSECURE(这在我的情况下甚至不起作用,但是哦)
    【解决方案2】:

    go get -insecure 已被弃用。从 go 1.14 开始,执行此操作的正确方法是将 GOINSECURE environment variable 设置为以逗号分隔的域列表,您希望从中忽略证书。例如

    GOINSECURE=example.com go get example.com/some/pkg
    

    【讨论】:

      猜你喜欢
      • 2011-11-26
      • 1970-01-01
      • 2015-12-25
      • 1970-01-01
      • 1970-01-01
      • 2017-04-18
      • 2018-06-23
      • 2021-05-21
      • 1970-01-01
      相关资源
      最近更新 更多