curl SSL证书问题:证书链中MITM代理的自签名证书

curl SSL证书问题:证书链中MITM代理的自签名证书

问题:

$ curl https://github.com/
curl: (60) SSL certificate problem: self signed certificate in certificate chain
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

背景:

我的机器在我公司的本地内网中,一些网站被我们公司的 MITM 代理拦截。

我知道在将该证书导出到文件后,我需要将该证书标记为受信任。我正在尝试使这个过程自动化,这样每当我支持公司的 MITM 代理时,我就可以让我的生活变得更轻松一些。

尝试用谷歌搜索这个主题很困难,并且主要产生了有关如何信任您已经下载的证书的结果,但这不是我在这种情况下需要的。如何下载我公司的 MITM 代理的自签名证书?

家庭作业:

这个问题与以下问题不同,因为,

问题:

如何下载我公司 MITM 代理的自签名证书?

在我以前的公司被拦截的网站是jsonplaceholder.typicode.com,所以我使用

openssl s_client -connect jsonplaceholder.typicode.com:443 -showcerts

为 zscaler 收集证书块。然而,通过这种方式收集的证书的有效期很短,稍后会自行过期。

在我现在的公司,被拦截的网站是 github.com。当我这样做时openssl s_client -connect github.com:443,我会得到:

$ openssl s_client -connect github.com:443
CONNECTED(00000003)
depth=2 C = CA, O = MY_COMPANY, CN = MY_COMPANY Root CA
verify error:num=19:self signed certificate in certificate chain
. . .
-----END CERTIFICATE-----
subject=C = US, ST = California, L = San Francisco, O = "GitHub, Inc.", CN = github.com

issuer=C = CA, ST = British Columbia, L = xxx, O = MY_COMPANY, CN = theissuer.my_company.com

但是我无法使用theissuer.my_company.com我公司的 MITM 代理的自签名证书:

$ openssl s_client -connect theissuer.my_company.com
140082197501248:error:2008F002:BIO routines:BIO_lookup_ex:system lib:../crypto/bio/b_addr.c:730:Name or service not known
connect:errno=22

$ openssl s_client -connect my_company.com
. . .
-----END CERTIFICATE-----
subject=C = CA, ST = British Columbia, L = xxx, O = MY_COMPANY, CN = www.my_company.com
issuer=C = US, O = DigiCert Inc, OU = www.digicert.com, CN = Thawte RSA CA 2018
```

那么,再次,
如何下载我公司 MITM 代理的自签名证书?

相关内容