【问题标题】:Download SSL Corproate Proxy Cert via Linux CLI通过 Linux CLI 下载 SSL 企业代理证书
【发布时间】:2017-05-22 17:44:04
【问题描述】:

如何下​​载代理的 SSL 证书并使用 Linux 命令行将其保存到文件中。

可以通过 openssl 工具下载 ssl 证书:https://superuser.com/questions/97201/how-to-save-a-remote-server-ssl-certificate-locally-as-a-file。但这在重写 SSL 证书的公司代理之后不起作用。我想下载代理的 ssl 证书。将 HOST 和 PORT 更改为我的代理的主机和端口也不起作用。

使用我的浏览器下载证书是可行的,但我需要在 bash 脚本中执行此操作。

【问题讨论】:

标签: linux ssl proxy


【解决方案1】:

您只能从连接中提取实际在连接内部发送的证书。在 MITM 代理中,您想要拥有的根 CA 通常不会被发送,因为它预计会在本地安装为受信任的,类似于公共根 CA。您可以在浏览器中提取此 MITM CA 的原因是浏览器已经在 CA 存储中将此 CA 视为受信任的,因此可以将其导出。

【讨论】:

  • 谢谢,这解释了为什么当我在代理服务器上使用 openssl s_client 时它说:“没有可用的对等证书”。
【解决方案2】:

如前所述,here、openssl 1.1.0 及更高版本支持-proxy 参数,因此您可以使用类似命令(jcenter.bintray.com 只是要连接的示例主机)获取代理的证书

openssl s_client -showcerts -proxy $https_proxy -connect jcenter.bintray.com:443

有关如何将证书导入 JVM 密钥库和系统证书的更完整示例,另请参阅 this script。

【讨论】:

  • https_proxy 包含协议名称,即 openssl 不接受的https://。正确的命令是openssl s_client -showcerts -proxy ${https_proxy/*:\/\//} -connect jcenter.bintray.com:443。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-02
  • 2020-10-04
  • 2013-11-01
  • 2016-07-12
  • 1970-01-01
  • 2015-11-15
相关资源
最近更新 更多