OpenSSL s_client attraverso un proxy HTTP con autenticazione di base
Usate le opzioni proxy_user e proxy_pass di OpenSSL mantenendo attiva la verifica del nome host di destinazione.
OpenSSL 3.x s_client offre opzioni proxy-user e per l’origine della password per un proxy HTTP CONNECT. Per un ambiente che esporta già 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
I nomi reali delle opzioni usano i caratteri di sottolineatura: -proxy_user e -proxy_pass. L’endpoint del proxy è host:port, mentre connect e servername identificano la destinazione.
proxy_pass usa la sintassi dell’origine della password di OpenSSL. env:PROXY_PASSWORD legge la variabile d’ambiente indicata; file:/path/to/file è un’altra forma di origine documentata. Una password nuda non è lo stesso formato di argomento.
Le opzioni mostrate richiedono la verifica del certificato e del nome host, con gli errori di verifica trattati come fatali. Fornite la configurazione CA adeguata, ad esempio un CAfile richiesto, per l’installazione e la destinazione.
Questa autenticazione del proxy è autenticazione di base. La connessione proxy mostrata è HTTP semplice, quindi la successiva stretta di mano TLS della destinazione non cifra quello scambio di accesso precedente. Non implementa una negoziazione proxy NTLM o Kerberos.