使用s_client的代理身份验证

标签 proxy openssl proxy-authentication

注意:这不是openssl s_client using a proxy的副本,因为我对代理身份验证特别感兴趣,而不是使用代理的能力。

我正在使用openssl s_client检查目标服务器的证书,以了解连接的工作方式/位置。因为我在公司代理后面,所以我可以使用-proxy标志指定代理服务器,但是我需要将身份验证详细信息(用户名/密码)传递给该代理-而且我还没有弄清楚该怎么做。

openssl s_client -proxy my.proxy.server:8080 -connect my.target.host

成功连接到代理服务器,但是可以理解的是,会导致s_client: HTTP CONNECT failed: 407 Unauthorized错误。

user:pass@my.proxy.serverhttp://user:pass@my.proxy.server的形式传递代理服务器均会导致s_client: -proxy argument malformed or ambiguous错误。

如何将代理身份验证传递给s_client?我很难相信它支持代理但不支持经过身份验证的代理。

我正在使用openssl版本1.1.1a。

最佳答案

您可以使用从内部网逃脱https://github.com/quaddy-services/escape-from-intranet#introduction
并指定
主机= my.proxy.server
端口= 8080
在应用程序中使用

openssl s_client -proxy localhost:3128 -connect my.target.host
并且您本地运行的应用程序将使用您的凭据丰富实际的代理调用。
(如果您有透明代理,则需要在“决策”菜单中将默认代理决策切换为“代理”)

关于使用s_client的代理身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56109030/

相关文章:

c++ - 在 DLL 中转发导出函数的问题

ruby - OpenSSL、RVM、Brew、冲突错误

android - 如何在 ANDROID 应用程序中使用 openSSL 库

android - 如何使用与android studio的代理连接

java - Jersey 客户端是否支持 NTLM 代理

python - 有没有办法在Linux中通过Python启用tor作为系统代理设置

c - 如何在 win32 API 中使用代理连接到远程服务器?

php - 您必须启用 openssl 扩展才能通过 https 下载文件

google-chrome - Chrome 要求对我打开的每个页面进行代理身份验证,IE 不会

extjs - 使代理使用扩展的 Ext.data.Operation