การจับมือ SSL ล้มเหลว: 11 สาเหตุและวิธีแก้ไข
· ทีม CSR.plus

- •การจับมือล้มเหลวเกือบทุกครั้งเกิดจากหนึ่งใน 11 สาเหตุ: ใบรับรอง การเข้ารหัส SNI โปรโตคอล หรือชั้นเครือข่าย
- •วินิจฉัยตามลำดับ: หมดอายุ การตรงกันของชื่อโฮสต์ ความสมบูรณ์ของเชน แล้วจึงเวอร์ชัน TLS และการเข้ารหัส
- •การจับมือส่วนใหญ่แก้ได้ด้วยเชนกลางที่ถูกต้องหรือชุดการเข้ารหัสที่รองรับ
เกิดอะไรขึ้นเมื่อการจับมือล้มเหลว
ระหว่างการจับมือ TLS ไคลเอนต์และเซิร์ฟเวอร์ต้องตกลงเรื่องเวอร์ชันโปรโตคอล ชุดการเข้ารหัส และเชนใบรับรองที่ถูกต้อง ความล้มเหลวในขั้นใดก็ตัดการเชื่อมต่อ จุดล้มเหลวทั่วไป: ใบรับรองหมดอายุ โฮสต์ไม่ถูกครอบคลุม เชนไม่สมบูรณ์ (เซิร์ฟเวอร์ส่งใบเท่านั้นโดยไม่มีกลาง) เวอร์ชัน TLS ไม่รองรับ การเข้ารหัสไม่ตรงกัน ไม่มี SNI หรือไฟร์วอลล์/NAT ทิ้ง ClientHello
วินิจฉัยภายในหนึ่งนาที
รัน openssl s_client -connect yourdomain.com:443 -servername yourdomain.com แล้วอ่านผลลัพธ์ "Verify return code: 0" หมายถึงเชนดี "unable to get local issuer certificate" ชี้ว่าใบรับรองกลางหาย "no peer certificate available" หรือบรรทัดว่างหลัง CONNECTED หมายถึงเซิร์ฟเวอร์ไม่เคยจบการจับมือ — ปัญหาโปรโตคอลหรือการเข้ารหัส ข้อผิดพลาดคอนโซลเบราว์เซอร์เพิ่มมุมมองฝั่งไคลเอนต์
แก้ 5 สาเหตุที่พบบ่อยที่สุด
1) กลางหาย: ดาวน์โหลดชุด CA และต่อใบ+กลางตามลำดับที่ถูกต้อง 2) การเข้ารหัสไม่ตรงกัน: เปิดชุดทั่วไป เช่น TLS_AES_256_GCM_SHA384 (TLS 1.3) หรือ ECDHE-RSA-AES256-GCM (TLS 1.2) 3) เวอร์ชัน TLS: เปิด TLS 1.2 และ 1.3 ปิดรุ่นเก่ากว่า 4) โฮสต์/SNI: ตรวจว่าใบรับรองครอบคลุมโฮสต์ที่แน่นอนและเปิด SNI 5) เครือข่าย: ตรวจพอร์ต 443 เปิด และโหลดบาลานเซอร์หรือ CDN ไม่จบ TLS ด้วยการตั้งค่าของตัวเอง
FAQ
ทำไมการจับมือล้มเหลวในเบราว์เซอร์แต่ใช้ curl ได้?
ไคลเอนต์แต่ละตัวรองรับเวอร์ชัน TLS และชุดการเข้ารหัสต่างกัน ถ้า curl ได้แต่เบราว์เซอร์เก่าไม่ได้ แสดงว่าไคลเอนต์ไม่รองรับเวอร์ชันที่เจรจา — เปิด TLS 1.2 เป็นอย่างต่ำ
ไฟร์วอลล์ทำให้การจับมือล้มเหลวได้ไหม?
ได้ ไฟร์วอลล์และ NAT บางตัวทิ้งแพ็กเก็ต ClientHello ขนาดใหญ่หรือบล็อกพอร์ต TCP อย่างเงียบ ๆ ทดสอบด้วยพอร์ตที่ไม่มาตรฐานหรือจับแพ็กเก็ตเพื่อยืนยัน
UptimeRobot
ตรวจสอบ SSL และความพร้อมใช้งานฟรี
UptimeRobot เฝ้าดูใบรับรองและ endpoint ของคุณตลอด 24 ชั่วโมง — 50 จุดตรวจในแผนฟรี
ลิงก์พันธมิตร — เราอาจได้รับค่าคอมมิชชันโดยไม่มีค่าใช้จ่ายเพิ่มเติมกับคุณ
เครื่องมือ SSL/TLS ฟรี
ตรวจสอบใบรับรองของคุณในไม่กี่วินาที