Usa un OpenSSL s_client installato che supporti -proxy. Per un endpoint HTTP CONNECT autorizzato:

openssl s_client -proxy proxy.example:3128   -connect example.com:443 -servername example.com   -verify_hostname example.com -verify_return_error -showcerts

Sostituisci l’indirizzo del proxy e usa in modo coerente il nome della destinazione previsto. Per testare una destinazione pubblica tramite un proxy che puoi scegliere, seleziona un candidato HTTP da elenco dei proxy HTTP. -connect seleziona la destinazione, -servername invia SNI per il suo host virtuale TLS e -verify_hostname verifica l’identità. SNI da solo non verifica il nome host. Consulta il manuale della versione installata quando adatti le opzioni.

-showcerts mostra ciò che il server ha inviato, non dichiara che la catena sia attendibile. -verify_return_error fa terminare l’handshake in caso di errori di verifica; altrimenti il client diagnostico può continuare dopo gli errori. Per un servizio privato usa materiale CA approvato invece di fidarti di un certificato scaricato a caso.

RisultatoFase
407Autenticazione del proxy prima del TLS della destinazione.
Destinazione CONNECT negataPolitica della destinazione del proxy.
Certificato ricevuto e verifica tentataScambio TLS della destinazione attraverso il tunnel accettato.

Con OpenSSL 3.x e un proxy HTTP con autenticazione Basic, usa le opzioni dell’account proxy di s_client mantenendo la verifica della destinazione.

Un endpoint solo SOCKS non fornisce l’interfaccia proxy HTTP usata da questo comando. Con intercettazione TLS autorizzata, il certificato mostrato può essere emesso da quell’intermediario. Confronta il suo emittente e l’assetto di attendibilità previsto prima di attribuire la differenza a un sito guasto.

Articoli correlati