วิธีแก้ปัญหา SSL Error บน Cloudflare ที่พบบ่อยที่สุด

ปัญหา SSL Error บน Cloudflare เป็นสิ่งที่ผู้ใช้งานพบเจอได้บ่อยครั้ง ตั้งแต่ ERR_TOO_MANY_REDIRECTS, Mixed Content, ไปจนถึง SSL Handshake Failed บทความนี้รวบรวมปัญหาที่พบบ่อยที่สุดและวิธีแก้ไขอย่างตรงจุด

ปัญหาที่ 1: ERR_TOO_MANY_REDIRECTS

โดยทั่วไปเกิดจากการตั้งค่า SSL Mode ใน Cloudflare ไม่สอดคล้องกับการตั้งค่า Redirect บนเซิร์ฟเวอร์

สาเหตุที่พบบ่อย:

  • Cloudflare SSL Mode ตั้งเป็น Flexible แต่เซิร์ฟเวอร์ตั้ง Force HTTPS Redirect ไว้
  • WordPress ตั้งค่า URL เป็น HTTPS แต่ Cloudflare อยู่ใน Flexible Mode
  • มีการตั้ง Redirect Loop ซ้ำซ้อนกันหลายชั้น

วิธีแก้ไข:

  1. เข้า Cloudflare Dashboard → SSL/TLS → Overview
  2. เปลี่ยน SSL Mode จาก Flexible เป็น Full หรือ Full (Strict)
  3. หากยังไม่มี SSL Certificate บนเซิร์ฟเวอร์ ให้ติดตั้ง Cloudflare Origin Certificate หรือ Let’s Encrypt ก่อน

ปัญหาที่ 2: Mixed Content Warning

Mixed Content เกิดขึ้นเมื่อหน้าเว็บ HTTPS โหลดสิ่งที่เป็น HTTP เช่น รูปภาพ, CSS หรือ JavaScript ทำให้ Browser แสดงคำเตือนหรือบล็อค Content

วิธีแก้ไขด้วย Cloudflare:

Cloudflare มีคุณสมบัติ Automatic HTTPS Rewrites ที่จะเปลี่ยน URL จาก HTTP เป็น HTTPS โดยอัตโนมัติ:

  1. ไปที่ Cloudflare Dashboard → SSL/TLS → Edge Certificates
  2. เปิดใช้งาน Automatic HTTPS Rewrites
  3. สำหรับ WordPress สามารถติดตั้ง Plugin Really Simple SSL เพื่อแก้ไข Mixed Content เพิ่มเติม

ปัญหาที่ 3: SSL Handshake Failed

SSL Handshake Failed เกิดขึ้นเมื่อ Cloudflare ไม่สามารถเชื่อมต่อ SSL ไปยัง Origin Server ได้

สาเหตุและวิธีแก้ไข:

สาเหตุ วิธีแก้ไข
Certificate หมดอายุ ต่ออายุ Certificate บนเซิร์ฟเวอร์
TLS Version โบราณ เปิดใช้ TLS 1.2+ บนเซิร์ฟเวอร์
Cipher Suite ไม่ตรงกัน อัปเดต OpenSSL หรือ Web Server
Port 443 ปิดอยู่ เปิด Port 443 ใน Firewall
SSL Certificate ไม่ตรงกับโดเมน ตรวจสอบ SAN (Subject Alternative Name)

ปัญหาที่ 4: Error 525 SSL Handshake Failed

Error 525 เป็น Error Code ของ Cloudflare เอง แสดงว่า Cloudflare ไม่สามารถ Handshake SSL กับ Origin Server ได้

  • สาเหตุหลัก: Cloudflare SSL Mode เป็น Full (Strict) แต่ Origin ไม่มี SSL Certificate หรือ Certificate หมดอายุ
  • วิธีแก้ไข: ติดตั้ง Cloudflare Origin Certificate หรือ Let’s Encrypt บน VPS

ปัญหาที่ 5: Error 526 Invalid SSL Certificate

Error 526 เกิดขึ้นเมื่อ Cloudflare SSL Mode เป็น Full (Strict) แต่ Certificate บน Origin Server ไม่ถูกต้องหรือไม่ได้รับการรับรองจาก CA ที่ Cloudflare เชื่อถือ

  • สาเหตุ: Self-signed Certificate, Certificate หมดอายุ, หรือ Certificate ไม่ตรงกับโดเมน
  • วิธีแก้ไข: ใช้ Cloudflare Origin Certificate หรือ Let’s Encrypt แทน Self-signed Certificate, หรือลด Mode ลงเป็น Full (ไม่เข้มงวด Strict)

ปัญหาที่ 6: NET::ERR_CERT_AUTHORITY_INVALID

Error นี้มักเกิดขึ้นเมื่อเข้าถึง IP Address โดยตรง (Bypass Cloudflare) และ Cloudflare Origin Certificate ถูกติดตั้งอยู่

Cloudflare Origin Certificate ใช้ได้เฉพาะเมื่อรับ Traffic ผ่าน Cloudflare Proxy เท่านั้น Browser ทั่วไปจะไม่เชื่อถือหากเข้าถึงโดยตรง

วิธีแก้ไข:

  • ติดตั้ง Let’s Encrypt หรือ Certificate จาก CA ที่เชื่อถืออื่น หากต้องการเข้าถึง IP โดยตรง
  • ใช้ Cloudflare Always Use HTTPS เพื่อบังคับเส้นทางผ่าน Cloudflare

ปัญหาที่ 7: Certificate หมดอายุ (Certificate Expired)

เรียกดู Certificate Expiry ด้วยคำสั่งนี้บน VPS:

# ตรวจสอบ Certificate Expiry Date
echo | openssl s_client -servername yourdomain.com -connect yourdomain.com:443 2>/dev/null | openssl x509 -noout -dates

# หรือใช้ Certbot
sudo certbot certificates

หากเป็น Let’s Encrypt ให้รัน Renew ทันที:

sudo certbot renew --force-renewal

ปัญหาที่ 8: Cloudflare Universal SSL ไม่ออกใบในที

หลังเพิ่มโดเมนใหม่ใน Cloudflare Cloudflare Universal SSL อาจใช้เวลาสักครู่กว่าจะออก Certificate ให้

  • ตรวจสอบสถานะได้ที่ Cloudflare Dashboard → SSL/TLS → Edge Certificates
  • ตรวจสอบว่า Universal SSL เปิดอยู่หรือไม่
  • รอ 15-60 นาทีหลังเพิ่มโดเมน หรือสูงสุด 24 ชั่วโมง
  • หากยังไม่ออก ลอง Disable และ Enable Universal SSL ใหม่

เครื่องมือตรวจสอบ SSL

เครื่องมือออนไลน์ที่อ้างอิงสำหรับตรวจสอบ SSL:

  • SSL Labs (ssllabs.com/ssltest) — วิเคราะห์ SSL Configuration อย่างละเอียด
  • Why No Padlock (whynopadlock.com) — ตรวจหา Mixed Content
  • SSL Checker (sslshopper.com) — ตรวจ Certificate Chain
  • Cloudflare Dashboard Diagnostics — ตรวจสอบปัญหา SSL ที่ตรวจพบโดย Cloudflare

สรุปแนวทางป้องกันปัญหา SSL

เพื่อป้องกันปัญหา SSL Error บน Cloudflare ให้ปฏิบัติตามแนวทางนี้:

  1. ตั้ง SSL Mode เป็น Full (Strict) เสมอ ไม่ใช้ Flexible
  2. ติดตั้ง Certificate ที่ถูกต้องบน VPS เสมอ (Cloudflare Origin Certificate หรือ Let’s Encrypt)
  3. เปิด Automatic HTTPS Rewrites เพื่อแก้ Mixed Content
  4. ตรวจสอบวันหมดอายุ Certificate เป็นประจำ
  5. ไม่ตั้ง Force Redirect HTTPS ซ้ำกันทั้งใน Cloudflare และใน Web Server

การตั้งค่า SSL ที่ถูกต้องบน Cloudflare ร่วมกับ VPS จะช่วยลดโอกาสเกิดปัญหาเหล่านี้ หากทำตามแนวทางอย่างถูกต้อง เว็บไซต์ของคุณจะมีความปลอดภัยและไม่มีปัญหา SSL เกิดขึ้นอีก