OpenSSL s_client através de um proxy HTTP com autenticação básica
Use as opções proxy_user e proxy_pass do OpenSSL mantendo ativa a verificação do nome do host de destino.
O OpenSSL 3.x s_client oferece opções de usuário de proxy e de origem de senha para um proxy HTTP CONNECT. Para um ambiente que já exporta PROXY_USER e PROXY_PASSWORD:
openssl s_client \
-proxy proxy.example.net:8080 \
-proxy_user "$PROXY_USER" \
-proxy_pass env:PROXY_PASSWORD \
-connect example.com:443 \
-servername example.com \
-verify_hostname example.com \
-verify_return_error
Os nomes reais das opções usam sublinhados: -proxy_user e -proxy_pass. O endpoint do proxy é host:port, enquanto connect e servername identificam o destino.
proxy_pass usa a sintaxe de origem de senha do OpenSSL. env:PROXY_PASSWORD lê a variável de ambiente indicada; file:/path/to/file é outra forma de origem documentada. Uma senha sem prefixo não é o mesmo formato de argumento.
As opções mostradas solicitam a verificação do certificado e do nome do host, com erros de verificação tratados como fatais. Forneça a configuração de CA adequada, como um CAfile obrigatório, para a instalação e o destino.
Esta autenticação de proxy é autenticação básica. A conexão de proxy mostrada é HTTP simples, então o handshake TLS posterior do destino não criptografa essa troca de login anterior. Ela não implementa uma negociação de proxy NTLM ou Kerberos.