go version: go1.14.6 darwin/amd64
go env excerpts:
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/wschnei2/Library/Caches/go-build"
GOENV="/Users/wschnei2/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/wschnei2/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
Attempted to do go install ./awsproviderlint and failed with x509 error.
Also got same error with http.Get("https://www.google.com")
The problem appears to be how Go handles the certificate chains from my corporate proxy that does re-encryption.
The certificate itself does not include the full chain, only the immediate parent.
Go is picking up the system root certificates, which includes the corporate proxy's root CA cert.
The problem is there is an intermediate cert between the root CA and cert in the chain:
Root->Intermediate 1->Intermediate 2->server cert
The 'intermediate 1' cert is registered in the MacOS System keychain and browsers have no problem with the same sites.
go version: go1.14.6 darwin/amd64
go env excerpts:
Attempted to do
go install ./awsproviderlintand failed with x509 error.Also got same error with
http.Get("https://www.google.com")The problem appears to be how Go handles the certificate chains from my corporate proxy that does re-encryption.
The certificate itself does not include the full chain, only the immediate parent.
Go is picking up the system root certificates, which includes the corporate proxy's root CA cert.
The problem is there is an intermediate cert between the root CA and cert in the chain:
Root->Intermediate 1->Intermediate 2->server cert
The 'intermediate 1' cert is registered in the MacOS System keychain and browsers have no problem with the same sites.