เข้าใจ SSL Mode ของ Cloudflare
ความสับสนที่พบได้บ่อยที่สุดเมื่อตั้งค่า WordPress บน Cloudflare คือการเลือก SSL Mode ที่ถูกต้อง Cloudflare มี 4 ตัวเลือก SSL Mode ที่ต่างกัน แต่ละตัวมีข้อดีและข้อเสียของตัวเอง ในบทความนี้เราจะอธิบายความแตกต่างและวิธีเลือก SSL Mode ที่เหมาะสมสำหรับ WordPress บน Cloud VPS ของ de.co.th
SSL Mode ต่างๆ ของ Cloudflare
Cloudflare มี 4 ระดับของ SSL Mode ได้แก่ Off, Flexible, Full, และ Full (Strict) ส่วนที่สำคัญที่เลือก SSL Mode ที่ผิดจะทำให้เกิด Redirect Loop หรือข้อผิดพลาดอื่น ๆ
Off Mode: ไม่แนะนำเลย การปิด SSL ไว้ทั้งหมด ดังนั้นการเข้าชมจากผู้เข้าชมไปยัง Cloudflare จะไม่มีการเข้ารหัส ซึ่งเป็นความเสี่ยงต่อความปลอดภัยมากมาย
Flexible Mode: ใช้ HTTPS จาก Browser ไปยัง Cloudflare แต่ HTTP จาก Cloudflare ไปยังเซิร์ฟเวอร์ Cloud VPS ของ de.co.th นี่คือตัวเลือกที่ง่ายที่สุด แต่ไม่แนะนำสำหรับเว็บไซต์ที่ต้องการความปลอดภัยสูง
Full Mode: ใช้ HTTPS ทั้งสองด้าน (Browser ถึง Cloudflare และ Cloudflare ถึงเซิร์ฟเวอร์) แต่ Cloudflare ไม่ตรวจสอบความถูกต้องของ SSL Certificate ของเซิร์ฟเวอร์ นี่คือตัวเลือกที่แนะนำมากสำหรับ WordPress บน Cloud VPS ของ de.co.th
Full (Strict) Mode: ใช้ HTTPS ทั้งสองด้าน และ Cloudflare จะตรวจสอบความถูกต้องของ SSL Certificate ของเซิร์ฟเวอร์ นี่คือตัวเลือกที่ปลอดภัยที่สุด แต่ต้องให้เซิร์ฟเวอร์มี SSL Certificate ที่ถูกต้องและได้รับการรับรองจากผู้ให้บริการที่เชื่อถือได้
Full Strict Mode คืออะไร
Full (Strict) Mode เป็นตัวเลือก SSL ที่ปลอดภัยที่สุดของ Cloudflare โดยจะตรวจสอบความถูกต้องของ SSL Certificate ของเซิร์ฟเวอร์ (Cloud VPS ของ de.co.th) ให้แน่ใจว่า Certificate นั้นได้รับการรับรองจากผู้ให้บริการที่เชื่อถือได้ (CA) และยังไม่หมดอายุ
การใช้ Full Strict Mode จะป้องกันการโจมตี Man-in-the-Middle (MITM) ได้อย่างมีประสิทธิภาพ เพราะแม้ว่าผู้โจมตีจะขัดขวางการเชื่อมต่อระหว่าง Cloudflare และเซิร์ฟเวอร์ พวกเขาก็ไม่สามารถสร้าง SSL Certificate ที่ถูกต้องได้
ติดตั้ง Let’s Encrypt บน Cloud VPS ของ de.co.th
เพื่อใช้ Full (Strict) Mode ของ Cloudflare คุณต้องให้เซิร์ฟเวอร์ Cloud VPS ของ de.co.th มี SSL Certificate ที่ถูกต้อง วิธีที่แนะนำมากที่สุดคือการใช้ Let’s Encrypt ซึ่งเป็น CA ที่อิสระและให้ SSL Certificate ฟรี
หากคุณใช้ Plesk บน Cloud VPS ของ de.co.th คุณสามารถติดตั้ง SSL Certificate จาก Let’s Encrypt ได้อย่างง่ายดาย โดยไปที่ Certificates ใน Plesk Panel จากนั้นคลิก “Install” และเลือก Let’s Encrypt
หากคุณใช้เซิร์ฟเวอร์ Linux โดยตรง คุณสามารถติดตั้ง Certbot (ตัวแทนของ Let’s Encrypt) ได้โดยคำสั่ง:
sudo apt-get install certbot python3-certbot-apache
sudo certbot certonly --apache -d example.com
หลังจากติดตั้งเสร็จ Web Server (Apache หรือ Nginx) จะใช้ SSL Certificate นี้โดยอัตโนมัติ
ตั้งค่า Cloudflare ให้ใช้ Full Strict Mode
เมื่อเซิร์ฟเวอร์ Cloud VPS ของ de.co.th มี SSL Certificate ที่ถูกต้องแล้ว ให้ไปที่ Cloudflare Dashboard และคลิก SSL/TLS ในเมนูด้านซ้าย
ในส่วน Overview ให้เลือก “Full (Strict)” Mode ระบบ Cloudflare จะเริ่มใช้งาน Mode นี้ทันที หลังจากเปลี่ยน Mode แล้วให้ตรวจสอบว่า WordPress ของคุณยังทำงานได้ปกติหรือไม่
แก้ไข Redirect Loop
ปัญหาที่พบบ่อยเมื่อตั้งค่า SSL Mode ของ Cloudflare คือ Redirect Loop ซึ่งจะทำให้ WordPress ตกลูปไม่สิ้นสุด ปัญหานี้มักเกิดจากการตั้งค่า SSL Mode ที่ไม่ถูกต้อง
เพื่อแก้ไข Redirect Loop ให้ไปยังไฟล์ wp-config.php ของ WordPress และเพิ่มบรรทัดต่อไปนี้:
// Fix SSL issues with Cloudflare
if (isset($_SERVER['HTTP_CF_VISITOR'])) {
$cf_visitor = json_decode($_SERVER['HTTP_CF_VISITOR']);
if ($cf_visitor->scheme === 'https') {
$_SERVER['HTTPS'] = 'on';
}
}
if (!empty($_SERVER['HTTP_CF_CONNECTING_IP'])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP'];
}
นอกจากนี้ ให้ตรวจสอบว่า WordPress ถูกตั้งค่า SITEURL และ HOME URL ให้ใช้ HTTPS ใน wp-admin ของ WordPress
สรุป
การตั้งค่า SSL Mode ให้ถูกต้องเป็นสิ่งสำคัญมากสำหรับ WordPress บน Cloud VPS ของ de.co.th เมื่อใช้ Cloudflare Full (Strict) Mode ให้แน่ใจว่าเซิร์ฟเวอร์มี SSL Certificate ที่ถูกต้องจาก Let’s Encrypt และเตรียมตัวรับมือกับปัญหา Redirect Loop หากเกิดขึ้น หากทำตามขั้นตอนนี้อย่างถูกต้อง WordPress ของคุณจะปลอดภัยและเร็วขึ้น

