ข้อผิดพลาด ssl_error_bad_mac_alert เกิดขึ้นใน Mozilla Firefox เมื่อพยายามเข้าชมเว็บไซต์ที่ปลอดภัยบางแห่ง ในบางกรณี เกิดขึ้นเมื่อพยายามส่งอีเมลผ่านอินเทอร์เฟซ IMAP ไปยัง Gmail
จากการวิเคราะห์รายงานผู้ใช้หลายกรณี พบว่าปัญหานี้อาจเกิดจากการตรวจสอบ SSL ล้มเหลว ทำให้เบราว์เซอร์โยนข้อผิดพลาดและบล็อกการเข้าถึงเว็บไซต์ แก้ไขได้โดยเข้าไปในเมนู Firefox Preference ขั้นสูง และเพิ่มเว็บไซต์เข้าไปในรายการ Insecure FallBack Hosts
สาเหตุอีกอย่างคือการเชื่อมต่อเครือข่ายที่บล็อกการสื่อสารระหว่างเบราว์เซอร์กับเซิร์ฟเวอร์ภายนอก แก้ไขได้โดยทำ power-cycling กับ router หรือ modem บังคับให้เครือข่ายเริ่มต้นใหม่
สถานการณ์หนึ่งที่ทำให้เบราว์เซอร์ทำให้ใบรับรอง SSL ไม่ถูกต้องและโยนข้อผิดพลาด คือ วันที่และเวลาของระบบไม่ถูกต้อง ผู้ใช้หลายคนรายงานว่าแก้ไขได้หลังตั้งค่าวันที่และเวลาให้ถูกต้อง
การตั้งค่าคอมพิวเตอร์เก่าบางรุ่น ต้องการการตั้งค่า Firefox ขั้นสูงบางอย่าง เพื่อเชื่อมต่อกับเว็บเซิร์ฟเวอร์ SSL3 ได้โดยไม่มีข้อผิดพลาด หากเป็นกรณีนี้ แก้ไขได้โดยตั้งค่า security.ssl3 เป็น True ในแท็บ Advanced Preferences
1. เพิ่มเว็บไซต์ในรายการ Insecure FallBack Hosts
หากแน่ใจว่าเว็บไซต์ SSL ที่พบปัญหานั้นปลอดภัยสมบูรณ์ สามารถป้องกันไม่ให้ SSL_Error_Bad_Mac_Alert แสดงซ้ำได้ โดยเข้าถึงไฟล์ config ของ Firefox และเพิ่ม SSL ที่เชื่อถือได้เข้าไปในรายการ Insecure FallBack Hosts
วิธีนี้จะยกเว้นเว็บไซต์ที่ไว้ใจจากการตรวจสอบ SSL ที่ก่อให้เกิดปัญหาเดิม ผู้ใช้หลายคนยืนยันว่าวิธีนี้แก้ไขปัญหาได้ถาวร
สำคัญ: ควรทำกับเว็บไซต์ SSL ที่เชื่อถือได้เพียงอย่างเดียว ไม่ควรเพิ่มเว็บไซต์ที่น่าสงสัยเข้าไปในรายการ Insecure FallBack Hosts
ขั้นตอน:
- เปิด Firefox พิมพ์ 'about:config' ในแถบที่อยู่ กด Enter เปิดเมนู Advanced Preferences
- ที่หน้าต่าง Proceed with Caution คลิก Accept the Risk and Continue
- ในเมนู Advanced Preferences วาง security.tls.insecure_fallback_hosts ในแถบค้นหา กด Enter
- เมื่อแสดงผล คลิกไอคอน Edit ของรายการ security.tls.insecure_fallback_hosts (ด้านขวา)
- ในกล่องข้อความที่ปรากฏ ใส่ URL ของเว็บไซต์ที่มีปัญหา กด Enter
- รีสตาร์ท Firefox ทดสอบว่าปัญหาแก้ไขแล้วหรือยัง
หากยังมีข้อผิดพลาด security.tls.insecure_fallback_hosts เดียวกัน หรือต้องการวิธีที่ไม่ทำให้ระบบอยู่ในความเสี่ยง ให้ลองวิธีถัดไป
2. Power-Cycling Router / Modem
ปัญหานี้อาจเกิดจากความไม่สอดคล้องของเครือข่าย เครือข่ายอาจค้างอยู่ในสถานะ limbo บล็อกความสามารถของคอมพิวเตอร์ในการสื่อสารกับเว็บเซิร์ฟเวอร์ภายนอกผ่านเบราว์เซอร์
หากเป็นกรณีนี้ แก้ไขได้โดยทำ power-cycling กับ router การดำเนินการนี้ต่างจากการรีเซ็ต router — จะไม่ส่งผลต่อข้อมูลประจำตัวและการตั้งค่าที่ตั้งไว้ก่อนหน้า
ขั้นตอน power-cycling: กดปุ่ม ON / OFF ปิดอุปกรณ์เครือข่ายไว้อย่างน้อย 30 วินาที หากต้องการความมั่นใจ ให้ถอดสายไฟจากปลั๊กไฟด้วย จะบังคับให้เครือข่ายเริ่มต้นใหม่ตอนบูทครั้งต่อไป
หมายเหตุ: อย่าสับสนระหว่างปุ่มปิด/เปิดกับปุ่มรีเซ็ต ปุ่มรีเซ็ตจะรีเซ็ตการตั้งค่าเครือข่ายและข้อมูลประจำตัวที่กำหนดไว้ทั้งหมด
หากทำแล้วยังมีปัญหา ให้ลองวิธีถัดไป
3. ตั้งค่าเวลาและวันที่ให้ถูกต้อง
สาเหตุอีกอย่างที่ทำให้ Firefox โยนข้อผิดพลาด security.tls.insecure_fallback_hosts error คือ วันที่และเวลาไม่สอดคล้อง อาจทำให้ใบรับรองความปลอดภัยไม่ถูกต้อง บังคับให้เบราว์เซอร์ขัดจังหวะการเชื่อมต่อ
ขั้นตอนตั้งค่า:
- กด Windows key + R พิมพ์ 'timedate.cpl' กด Enter เปิดหน้าต่าง Date and time

- ไปที่แท็บ Date and Time คลิก Change date and time

- ใช้ปฏิทินและช่องเวลาตั้งค่า Date และ Time ให้ถูกต้อง

- รีสตาร์ทคอมพิวเตอร์ เข้าเว็บไซต์เดิมทดสอบ
หากยังมีข้อผิดพลาด ssl_error_bad_mac_alert ให้ลองวิธีถัดไป
4. ตั้งค่า Security.SSL3 เป็น TRUE
หากพบปัญหากับเครื่องเก่าที่ไม่ได้เปิดเผยต่อสาธารณะ อาจเจอข้อผิดพลาด ssl_error_bad_mac_alert กับเว็บเซิร์ฟเวอร์ SSL3 หลายแห่ง จนกว่าจะเข้าไปใน Advanced Preferences ของ Firefox และเปิดใช้งาน Security.SSL3
หากสังเกตว่าข้อผิดพลาดเริ่มเกิดหลัง Firefox อัปเดตตัวเอง อาจเป็นเพราะ Security.SSL3 ถูกปิดโดยค่าเริ่มต้น
ขั้นตอนตรวจสอบว่า Security.SSL3 เปิดใช้งานอยู่:
- เปิด Firefox พิมพ์ 'about:config' กด Enter เข้า Advanced Preferences
- ที่หน้าต่าง Proceed with Caution คลิก Accept the Risk and Continue
- ใช้เมนูค้นหาค้นหา security.ssl3 กด Enter
- เลื่อนลงล่างสุด หา security.ssl3
หมายเหตุ: หากมีตัวเลือก string, boolean, float ให้เลือก boolean - ตั้งค่า security.ssl3 เป็น true บันทึกการเปลี่ยนแปลง รีสตาร์ท Firefox
- เข้าเว็บไซต์ที่เคยมีปัญหา ทดสอบว่าแก้ไขแล้วหรือยัง