ใช้ OpenSSL s_client ที่ติดตั้งไว้และรองรับ -proxy สำหรับ HTTP CONNECT endpoint ที่ได้รับอนุญาต:

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

แทนที่ที่อยู่พร็อกซีและใช้ชื่อปลายทางที่ตั้งใจไว้อย่างสม่ำเสมอ หากต้องการทดสอบปลายทางสาธารณะผ่านพร็อกซีที่เลือกได้ ให้เลือก HTTP candidate จาก รายการพร็อกซี HTTP -connect เลือกเป้าหมาย, -servername ส่ง SNI ให้ TLS virtual host ของเป้าหมาย และ -verify_hostname ตรวจสอบตัวตน SNI เพียงอย่างเดียวไม่ใช่การตรวจสอบชื่อโฮสต์ ตรวจสอบ คู่มือของรุ่นที่ติดตั้ง เมื่อต้องปรับตัวเลือก

-showcerts แสดงสิ่งที่ server ส่งมา ไม่ได้ประกาศว่า chain เชื่อถือได้ -verify_return_error ทำให้ verification errors จบ handshake มิฉะนั้น diagnostic client อาจทำงานต่อหลังเกิดข้อผิดพลาด สำหรับบริการส่วนตัวให้ใช้ CA material ที่ได้รับอนุมัติ แทนการเชื่อ certificate ที่ดาวน์โหลดมาแบบสุ่ม

ผลลัพธ์ขั้นตอน
407Proxy authentication ก่อน TLS ของปลายทาง
CONNECT target ถูกปฏิเสธนโยบายปลายทางของพร็อกซี
ได้รับ certificate และพยายามตรวจสอบแล้วการแลกเปลี่ยน TLS ของปลายทางผ่าน tunnel ที่ยอมรับ

เมื่อใช้ OpenSSL 3.x กับพร็อกซี HTTP ที่ยืนยันตัวตนด้วย Basic ให้ใช้ s_client proxy-account options โดยคงการตรวจสอบปลายทางไว้

SOCKS-only endpoint ไม่มี HTTP proxy interface ที่คำสั่งนี้ใช้ เมื่อมี authorized TLS interception certificate ที่แสดงอาจออกโดยตัวกลางนั้น เปรียบเทียบ ผู้ออกและ trust arrangement ที่ตั้งใจไว้ ก่อนสรุปว่าความแตกต่างเกิดจากเว็บไซต์เสีย

บทความที่เกี่ยวข้อง