วิธีแก้ไขข้อผิดพลาด “SSL Handshake ล้มเหลว” & “Cloudflare 525”
เผยแพร่แล้ว: 2022-12-05คุณต้องการทราบวิธีการแก้ไขข้อผิดพลาด “ SSL Handshake Failed ” & “Cloudflare 525” หรือไม่? เมื่อมีการติดตั้งใบรับรอง Secure Sockets Layer (SSL) บนไซต์ WordPress ของคุณ เป็นไปได้ที่จะรับประกันการสื่อสารที่ปลอดภัยระหว่างผู้ใช้และไซต์โดยใช้ HTTPS
มีหลายสิ่งผิดพลาดได้ในขณะตรวจสอบใบรับรอง SSL และสร้างการเชื่อมต่อระหว่างเซิร์ฟเวอร์ของเว็บไซต์ของคุณกับเบราว์เซอร์ของผู้เข้าชม
ไม่ต้องกังวลหากคุณพบข้อความแสดงข้อผิดพลาด “SSL Handshake Failed” และไม่แน่ใจว่าหมายถึงอะไร
นี่เป็นข้อผิดพลาดทั่วไปที่ไม่ได้ให้ข้อมูลมากนัก อย่างไรก็ตาม แม้จะน่าหงุดหงิด แต่ก็เป็นไปได้ที่จะแก้ไขข้อผิดพลาดโดยทำตามขั้นตอนง่ายๆ
บทความนี้จะอธิบายเกี่ยวกับ SSL Handshake, ขั้นตอน SSL Handshake, ข้อผิดพลาด SSL Handshake Failed และสาเหตุ จากนั้นจะให้เจ็ดวิธีในการแก้ไขข้อผิดพลาด
SSL Handshake คืออะไร?
ในระหว่างการจับมือ SSL อุปกรณ์บนเครือข่าย เช่น เบราว์เซอร์และเซิร์ฟเวอร์ จะแลกเปลี่ยนอัลกอริทึมที่เข้ารหัส คีย์ และข้อมูลอื่นๆ เกี่ยวกับการเชื่อมต่อก่อนที่จะแลกเปลี่ยนข้อมูล
เมื่อเบราว์เซอร์และเซิร์ฟเวอร์ทำการจับมือกัน พวกเขาอาจขอดูใบรับรอง SSL ของกันและกันเพื่อยืนยัน
เพื่อสร้างการเชื่อมต่อที่ปลอดภัย ต้องสร้างแฮนด์เชค SSL ก่อน ซึ่งเป็นเหตุผลว่าทำไมการรู้ว่าแฮนด์เชค SSL คืออะไรและต้องทำอย่างไรในกรณีที่ล้มเหลวจึงมีความสำคัญ
การจับมือกันของ SSL เกิดขึ้นเมื่อไคลเอนต์และเซิร์ฟเวอร์ตั้งค่าอัลกอริทึมการเข้ารหัสและคีย์ลับที่จะใช้สำหรับการสื่อสารที่ปลอดภัยและแลกเปลี่ยนและตรวจสอบใบรับรองดิจิทัล
ไคลเอนต์และเซิร์ฟเวอร์ที่ทำงานบนเครือข่ายสามารถสื่อสารได้อย่างปลอดภัยด้วยความช่วยเหลือของโปรโตคอล SSL และ TLS โปรโตคอล TLS ได้แทนที่ SSL แต่ SSL เป็นคำที่ใช้บ่อยกว่า
ขั้นตอนการจับมือ SSL
ในการจับมือ SSL ขั้นตอนที่แน่นอนจะขึ้นอยู่กับเวอร์ชันของ SSL ที่ไคลเอนต์และเซิร์ฟเวอร์ใช้ แต่โดยทั่วไปแล้วควรปฏิบัติตามขั้นตอนต่อไปนี้:
- สวัสดีจากลูกค้า: ข้อความ “ สวัสดีลูกค้า ” มีข้อมูลเกี่ยวกับการเข้ารหัส รวมถึงเวอร์ชัน SSL ที่ไคลเอ็นต์สื่อสารกับเซิร์ฟเวอร์ นอกจากนี้ยังมีรายละเอียดเกี่ยวกับอัลกอริทึมการเข้ารหัสที่ไคลเอนต์รองรับ ซึ่งเรียกว่า “ cipher suites ”
- สวัสดี คือการตอบกลับของเซิร์ฟเวอร์: ข้อความ “ สวัสดีเซิร์ฟเวอร์ ” ประกอบด้วยข้อมูลสำคัญ เช่น ชุดการเข้ารหัสที่เลือกและใบรับรองดิจิทัล นอกจากนี้ยังอาจรวมถึงคำขอใบรับรองของไคลเอ็นต์
- ไคลเอนต์ตรวจสอบใบรับรองของเซิร์ฟเวอร์ : นอกจากนี้ ยังส่งข้อมูลหลายไบต์ รวมทั้งหนึ่งไบต์ที่ช่วยให้ทั้งไคลเอนต์และเซิร์ฟเวอร์คำนวณรหัสลับที่จะใช้ในการเข้ารหัสข้อความที่ตามมาและข้อความที่ "เสร็จสิ้น" เซิร์ฟเวอร์ที่ส่งคำขอใบรับรองไปยังไคลเอนต์จะส่งสตริงไบต์ที่เข้ารหัสพร้อมกับคีย์ส่วนตัวและใบรับรองดิจิทัล
- เซิร์ฟเวอร์ตรวจสอบใบรับรองของไคลเอ็นต์: ต้องดำเนินการตรวจสอบไคลเอ็นต์เพื่อให้ขั้นตอนนี้เกิดขึ้น
- “ฉันเสร็จแล้ว” ลูกค้ากล่าว: ในข้อความ “เสร็จแล้ว” ลูกค้าระบุว่าส่วนหนึ่งของการจับมือเสร็จสิ้นแล้ว
- เซิร์ฟเวอร์พูดว่า “ฉันก็เสร็จแล้วเหมือนกัน”: เมื่อส่งข้อความ “เสร็จแล้ว” เซิร์ฟเวอร์แสดงว่าได้เสร็จสิ้นการจับมือบางส่วนแล้ว
ด้วยรหัสลับเดียวกันที่ใช้ร่วมกันในขั้นตอนที่สาม เซิร์ฟเวอร์และไคลเอนต์สามารถแลกเปลี่ยนข้อความที่เข้ารหัสสำหรับเซสชันที่เหลือ การเข้ารหัสแบบสมมาตรเรียกว่าสิ่งนี้
หากทุกอย่างราบรื่นก็จะดำเนินการตามขั้นตอนข้างต้น แต่ถ้าไม่ล่ะ? ในหัวข้อต่อไปนี้ เราจะอธิบายว่าข้อความแสดงข้อผิดพลาด “SSL Handshake Failed” คืออะไร และวิธีการแก้ไข
SSL Handshake ล้มเหลวคืออะไร?
ข้อความแสดงข้อผิดพลาด SSL Handshake Failed เกิดขึ้นเมื่อไม่สามารถสร้างการเชื่อมต่อที่ปลอดภัยระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ได้
ข้อผิดพลาดนี้อาจเกิดขึ้นได้จากสาเหตุเหล่านี้:
- ลูกค้าใช้วันที่หรือเวลาที่ไม่ถูกต้อง
- การกำหนดค่าของไคลเอนต์เบราว์เซอร์ทำให้เกิดข้อผิดพลาด
- บุคคลที่สามในฝั่งไคลเอนต์กำลังสกัดกั้นการเชื่อมต่อ
- เวอร์ชัน SSL ไม่เหมือนกันบนไคลเอ็นต์และเซิร์ฟเวอร์
- ไคลเอนต์และเซิร์ฟเวอร์กำลังใช้ชุดการเข้ารหัสที่แตกต่างกัน
- มีใบรับรองที่ไม่ถูกต้องบนไคลเอนต์หรือเซิร์ฟเวอร์
ข้อความแสดงข้อผิดพลาด SSL Handshake Failed ปรากฏขึ้นแตกต่างกันไปขึ้นอยู่กับแอปพลิเคชันไคลเอนต์หรือเซิร์ฟเวอร์ที่คุณพยายามเชื่อมต่อ
ในทางกลับกัน หากคุณใช้ Cloudflare ข้อผิดพลาด SSL Handshake Failed จะปรากฏเป็นข้อผิดพลาด Cloudflare 525
เมื่อระบุสาเหตุของข้อผิดพลาด SSL Handshake Failed แล้ว เราจะหารือเกี่ยวกับวิธีการแก้ไขในส่วนถัดไป
วิธีแก้ไข SSL Handshake ล้มเหลว
สาเหตุที่เป็นไปได้หลายประการอาจทำให้เกิดข้อความแสดงข้อผิดพลาด "SSL Handshake ล้มเหลว" ดังนั้นจึงเป็นไปไม่ได้ที่จะให้วิธีแก้ปัญหาง่ายๆ
ด้วยเหตุนี้ คุณจึงสามารถใช้วิธีการต่างๆ เพื่อสำรวจและแก้ไขปัญหาที่อาจเกิดขึ้นได้ทีละขั้นตอน สามารถใช้เจ็ดวิธีในการแก้ไขข้อผิดพลาด SSL Handshake Failed:
วิธีที่ 1: อัปเดตวันที่และเวลาของระบบของคุณ
ปัญหาแรกที่เราจะพูดถึงคือหนึ่งในสาเหตุที่ไม่น่าจะเป็นไปได้มากที่สุด ถึงกระนั้น การแก้ไขโดยตรงหากเป็นปัญหาเกี่ยวกับนาฬิกาของคอมพิวเตอร์ของคุณ
วันที่และเวลาที่ไม่ถูกต้องอาจรบกวนการจับมือ SSL หากระบบของคุณใช้วันที่และเวลาที่ไม่ถูกต้อง
หากตั้งนาฬิการะบบให้แตกต่างจากเวลาจริง เช่น ถ้าเวลาในอนาคตไกลเกินไป อาจรบกวนการตรวจสอบใบรับรอง SSL
เป็นไปได้ว่านาฬิกาในคอมพิวเตอร์ของคุณถูกตั้งค่าไม่ถูกต้อง อาจเกิดจากความผิดพลาดของมนุษย์หรือการทำงานผิดพลาดในการตั้งค่าของคุณ
สมมติว่าคุณกำลังประสบปัญหาเกี่ยวกับเวลาของระบบ ในกรณีนั้น เป็นความคิดที่ดีที่จะตรวจสอบให้แน่ใจว่าถูกต้องและอัปเดตหากจำเป็น
ทำตามขั้นตอนเหล่านี้เพื่อทำสิ่งนี้:
- ไปที่ เวลาและภาษา ในการตั้งค่า Windows ของคุณ
- ไป ที่ Date & time คลิก Sync now และเปิด Set time Automatic
หากนาฬิกาของคุณแสดงข้อมูลที่ถูกต้อง สามารถสันนิษฐานได้อย่างปลอดภัยว่านี่ไม่ใช่แหล่งที่มาของข้อความแสดงข้อผิดพลาด “SSL Handshake Failed”
วิธีที่ 2: ตรวจสอบเพื่อดูว่าใบรับรอง SSL ของคุณถูกต้องหรือไม่
ใบรับรอง SSL มีวันหมดอายุเพื่อให้แน่ใจว่าข้อมูลการตรวจสอบยังคงเป็นปัจจุบัน โดยทั่วไปใบรับรองเหล่านี้มีระยะเวลาใช้งานได้ตั้งแต่หกเดือนถึงสองปี
เบราว์เซอร์จะตรวจพบใบรับรอง SSL ที่ถูกเพิกถอนหรือหมดอายุ และการจับมือ SSL จะไม่สามารถดำเนินการให้เสร็จสมบูรณ์ได้
เมื่อใบรับรอง SSL บนเว็บไซต์ของคุณได้รับการติดตั้งมานานกว่าหนึ่งปี อาจถึงเวลาที่ต้องออกใหม่
เครื่องมือตรวจสอบใบรับรอง SSL เช่น Qualys สามารถดูสถานะใบรับรอง SSL ของคุณได้
ทำตามขั้นตอนเหล่านี้เพื่อใช้เครื่องมือนี้:
- ป้อนชื่อโดเมนของคุณในช่อง ชื่อโฮสต์
- คลิกที่ปุ่ม ส่ง
คุณจะได้รับผลลัพธ์บางอย่างหลังจากที่ตัวตรวจสอบวิเคราะห์การกำหนดค่า SSL ของไซต์ของคุณแล้ว เมื่อใช้หน้าผลลัพธ์ คุณสามารถระบุได้ว่าใบรับรองยังคงถูกต้องหรือไม่ และถูกเพิกถอนด้วยเหตุผลใดก็ตาม
คุณต้องอัปเดตใบรับรอง SSL ของคุณเพื่อแก้ไขข้อผิดพลาดการจับมือกัน และเพื่อความปลอดภัยของเว็บไซต์และร้านค้า WooCommerce ของคุณ
วิธีที่ 3: กำหนดค่าเบราว์เซอร์ของคุณเพื่อรองรับโปรโตคอล SSL/TLS ล่าสุด
มีความเป็นไปได้ที่ข้อผิดพลาด “SSL handshake ล้มเหลว” เป็นผลมาจากการกำหนดค่าเบราว์เซอร์ผิดพลาด ลองเปลี่ยนไปใช้เบราว์เซอร์อื่น หากดูเหมือนว่ามีปัญหากับเบราว์เซอร์ใดเบราว์เซอร์หนึ่ง
ไม่ว่าในกรณีใด สิ่งนี้สามารถใช้เป็นจุดเริ่มต้นในการจำกัดขอบเขตของปัญหาให้แคบลง นอกจากนี้ คุณสามารถลองปิดใช้งานปลั๊กอินทั้งหมดและรีเซ็ตเบราว์เซอร์ของคุณเป็นการตั้งค่าเริ่มต้น
โปรโตคอลไม่ตรงกันเป็นอีกหนึ่งปัญหาที่เป็นไปได้เกี่ยวกับเบราว์เซอร์ ไม่มีโปรโตคอลที่สนับสนุนซึ่งกันและกันสำหรับเซิร์ฟเวอร์ที่รองรับ TLS 1.2 เท่านั้น และเบราว์เซอร์ที่รองรับได้เฉพาะ TLS 1.0 จะมีการล้มเหลวอย่างหลีกเลี่ยงไม่ได้ในการจับมือ SSL เนื่องจากสิ่งนี้
เพื่อให้แน่ใจว่าเบราว์เซอร์ของคุณรองรับโปรโตคอล SSL/TLS ล่าสุด คุณควรกำหนดค่า ทำตามขั้นตอนเหล่านี้เพื่อทำสิ่งนี้:
- คลิกที่ ตัวเลือกอินเทอร์เน็ต ใน แผงควบคุม เพื่อเปิด คุณสมบัติอินเทอร์เน็ต
- ไปที่แท็บ ขั้นสูง
- ทำเครื่องหมายที่ช่องถัดจาก ใช้ TLS 1.2
หมายเหตุ : โดยทั่วไป ไม่แนะนำให้ทำเครื่องหมายที่ช่องถัดจาก Use SSL 2.0 และ Use SSL 3.0
- คลิกที่ปุ่ม Apply จากนั้นคลิกปุ่ม OK เพื่อบันทึกการเปลี่ยนแปลง
- ตรวจสอบเพื่อดูว่าข้อผิดพลาดได้รับการแก้ไขแล้วหรือไม่
วิธีที่ 4: ปิดใช้งานปลั๊กอินหรือส่วนขยายที่ติดตั้งล่าสุด
มีความเป็นไปได้สูงที่ส่วนขยายและปลั๊กอินของเบราว์เซอร์อาจมีโค้ดที่เป็นอันตราย เนื่องจากนักพัฒนาที่ไม่รู้จักมักจะพัฒนาสิ่งเหล่านี้
ดังนั้น หากคุณเพิ่งติดตั้งหนึ่งในนั้นและพบข้อผิดพลาด SSL handshake คุณควรถอนการติดตั้งและล้างแคชและคุกกี้ของคุณเป็นขั้นตอนแรก
เมื่อทำสำเร็จแล้ว ให้เชื่อมต่อกับเว็บไซต์เดิมอีกครั้งและตรวจสอบว่าคุณสามารถสร้างการเชื่อมต่อที่ปลอดภัยได้
ทำตามขั้นตอนเหล่านี้เพื่อถอนการติดตั้งส่วนขยายใน Chrome:
- คลิกที่ ไอคอนเมนู ที่มุมขวาบนของเบราว์เซอร์
- คลิกที่ การตั้งค่า
- คลิกที่ตัวเลือก ส่วนขยาย
- เลือกส่วนขยายที่คุณเพิ่งติดตั้งและคลิกที่ Remove
วิธีที่ 5: โปรโตคอลไม่ตรงกัน
ปัญหาการจับมือกันของ SSL มักเกิดจากโปรโตคอลที่ไม่ตรงกันระหว่างไคลเอ็นต์และเซิร์ฟเวอร์
เพื่อให้การจับมือกันประสบความสำเร็จ เว็บเซิร์ฟเวอร์และเบราว์เซอร์ต้องรองรับโปรโตคอล SSL/TLS เวอร์ชันที่แน่นอน
มีบางครั้งที่ข้อผิดพลาด SSL handshake เกิดขึ้นเมื่อเซิร์ฟเวอร์ทำงานบนโปรโตคอลเวอร์ชันที่สูงกว่าเวอร์ชันไคลเอ็นต์มาก
ในกรณีของเซิร์ฟเวอร์ที่ใช้ TLS 1.3 แต่เป็นเบราว์เซอร์ที่ใช้ TLS 1.1 การจับมือ SSL มีแนวโน้มที่จะล้มเหลวเนื่องจากเซิร์ฟเวอร์ไม่รองรับ TLS เวอร์ชันเก่า
ในการแก้ไขปัญหานี้ คุณควรรีเซ็ตเบราว์เซอร์เป็นการตั้งค่าเริ่มต้นและใช้งานโดยไม่มีส่วนขยายใดๆ ทำตามขั้นตอนเหล่านี้ในเบราว์เซอร์ Chrome ของคุณ:
- คลิกที่ ไอคอนเมนู ที่มุมขวาบนของเบราว์เซอร์
- คลิกที่ การตั้งค่า
- คลิกที่ตัวเลือก รีเซ็ตและล้างข้อมูล
- คลิกที่ตัวเลือก คืนค่าการตั้งค่าเป็นค่าเริ่มต้นดั้งเดิม
วิธีที่ 6: หยุดชั่วคราว Cloudflare เพื่อทดสอบใบรับรอง SSL ของคุณ
หากคุณใช้ Cloudflare ข้อผิดพลาด “SSL handshake ล้มเหลว” อาจเกิดจากปัญหาการเชื่อมต่อระหว่างคลาวด์กับเว็บไซต์ของคุณ การปิดใช้งานชั่วคราวเป็นวิธีที่สะดวกที่สุดในการทดสอบนี้
โชคดีที่ Cloudflare มีคุณสมบัติ "หยุดชั่วคราว" ซึ่งสามารถใช้เมื่อใดก็ได้เพื่อปิดใช้งานบริการชั่วคราว
ขอแนะนำให้คุณล้างแคชของเบราว์เซอร์หลังจากดำเนินการนี้แล้ว เพื่อให้สามารถเข้าถึงเว็บไซต์ของคุณได้อีกครั้ง
คุณควรติดต่อ Cloudflare เพื่อระบุสาเหตุของข้อผิดพลาด SSL handshake และดูว่าได้รับการแก้ไขแล้วหรือไม่
ขณะที่คุณรอการตอบกลับ ตรวจสอบให้แน่ใจว่าได้ปิดใช้งาน CDN เพื่อให้ผู้ใช้รายอื่นสามารถเข้าถึงเว็บไซต์ของคุณได้เช่นกัน
อีกทางหนึ่ง หากข้อผิดพลาด SSL ยังคงอยู่ ปัญหาน่าจะเกิดจากข้อผิดพลาดในการกำหนดค่าบนเซิร์ฟเวอร์ของคุณ
วิธีที่ 7: ตรวจสอบให้แน่ใจว่า Cipher Suites Match
หากคุณยังไม่ได้ระบุสาเหตุของความล้มเหลวของแฮนด์เชค SSL อาจเกี่ยวข้องกับความไม่ตรงกันระหว่างชุดการเข้ารหัส
ตามคำอธิบายโดยย่อ ชุดการเข้ารหัสคือชุดของอัลกอริทึมสำหรับการเชื่อมต่อเครือข่าย SSL และ TLS ที่ปลอดภัย รวมถึงการเข้ารหัสข้อมูลการแลกเปลี่ยนคีย์ การเข้ารหัสจำนวนมาก และการตรวจสอบข้อความ
ในกรณีที่ชุดการเข้ารหัสของเซิร์ฟเวอร์เข้ากันไม่ได้กับชุดรหัสที่ Cloudflare ใช้ อาจนำไปสู่ข้อความ “SSL Handshake Failed”
อีกครั้ง การทดสอบเซิร์ฟเวอร์ SSL ของ Qualys เป็นเครื่องมือที่มีค่าสำหรับการพิจารณาว่ามีความไม่ตรงกันระหว่างชุดรหัสหรือไม่
ทำตามขั้นตอนเหล่านี้เพื่อใช้เครื่องมือนี้:
- ป้อนชื่อโดเมนของคุณในช่อง ชื่อโฮสต์
- คลิกที่ปุ่ม ส่ง
หลังจากนั้น คุณจะพบกับหน้าสรุปการวิเคราะห์ ในส่วน Cipher Suites คุณจะพบข้อมูลการเข้ารหัส
เมื่อใช้หน้านี้ คุณสามารถกำหนดรหัสลับและโปรโตคอลที่เซิร์ฟเวอร์รองรับได้ คุณควรให้ความสนใจเป็นพิเศษกับผู้ที่มีสถานะ "อ่อนแอ" ส่วนนี้ยังมีคำอธิบายโดยละเอียดเกี่ยวกับอัลกอริทึมที่ประกอบกันเป็นชุดการเข้ารหัส
เพื่อแก้ไขปัญหานี้ คุณสามารถใช้เครื่องมือ Qualys SSL/TLS Capabilities of Your Browser เพื่อเปรียบเทียบผลลัพธ์กับการสนับสนุนของเบราว์เซอร์ของคุณ
บทสรุป
บทความนี้อธิบายว่า SSL Handshake คืออะไร ขั้นตอน SSL Handshake คืออะไร ข้อผิดพลาด SSL Handshake Failed คืออะไร และอะไรเป็นสาเหตุ จากนั้นจะให้เจ็ดวิธีในการแก้ไขข้อผิดพลาด
โปรดยอมรับคำขอบคุณอย่างจริงใจของเราที่สละเวลาอ่านบทความนี้ คุณสามารถส่งคำถามและความคิดเห็นในส่วนความคิดเห็น
คุณจะสามารถรับการแจ้งเตือนเกี่ยวกับบทความล่าสุดของเราหากคุณติดตามเพจ Facebook และ Twitter ของเรา