เลือก SSL/TLS Mode บน Cloudflare ให้ถูกต้อง
เมื่อเปิด Proxy (ไอคอนเมฆสีส้ม) บน Cloudflare การเชื่อมต่อจะแบ่งเป็นสองช่วง ช่วงแรกคือจากเบราว์เซอร์ของผู้ใช้ไปยัง Cloudflare และช่วงที่สองคือจาก Cloudflare ไปยังเซิร์ฟเวอร์ต้นทาง (Origin) ของคุณ ค่า SSL/TLS Mode เป็นตัวกำหนดว่าช่วงที่สองจะเข้ารหัสหรือไม่ และจะตรวจใบรับรองของเซิร์ฟเวอร์เข้มงวดแค่ไหน
การเลือกโหมดผิดทำให้เกิดได้ทั้งปัญหาความปลอดภัย (ผู้ใช้เห็นแม่กุญแจ แต่ข้อมูลวิ่งไปเซิร์ฟเวอร์แบบไม่เข้ารหัส) และปัญหาเว็บเข้าไม่ได้ เช่น Redirect วนไม่จบ บทความนี้อธิบายแต่ละโหมดและขั้นตอนไปให้ถึง Full (strict) ซึ่งเป็นโหมดที่แนะนำ หากยังไม่ได้ย้าย DNS มาที่ Cloudflare ดู ทำ DNS ใช้เองด้วย Cloudflare ก่อน
สิ่งที่ต้องเตรียม
- บัญชี Cloudflare ที่เพิ่มโดเมนแล้ว และ Record ของเว็บเปิด Proxy (สถานะ Proxied)
- สิทธิ์ติดตั้งใบรับรองบนเซิร์ฟเวอร์ต้นทาง เช่น ผ่าน Plesk, DirectAdmin หรือ SSH
- รู้ว่าเว็บเซิร์ฟเวอร์ของคุณเป็น Nginx, Apache, LiteSpeed หรือ IIS
เปรียบเทียบแต่ละโหมด
| โหมด | ผู้ใช้ถึง Cloudflare | Cloudflare ถึง Origin | ตรวจใบรับรอง Origin | คำแนะนำ |
|---|---|---|---|---|
| Off | HTTP | HTTP | ไม่ตรวจ | ห้ามใช้กับเว็บจริง |
| Flexible | HTTPS | HTTP | ไม่ตรวจ | ใช้เฉพาะชั่วคราวเมื่อ Origin ยังไม่มี SSL เลย |
| Full | HTTPS | HTTPS | ไม่ตรวจความถูกต้อง รับใบ Self-signed หรือหมดอายุได้ | ดีกว่า Flexible แต่ยังโดนดักกลางทางได้ |
| Full (strict) | HTTPS | HTTPS | ตรวจว่าใบยังไม่หมดอายุ ชื่อตรง และออกโดย CA ที่เชื่อถือได้หรือ Cloudflare Origin CA | โหมดที่แนะนำ |
นอกจากนี้ Cloudflare มีตัวเลือก Strict (SSL-Only Origin Pull) ที่บังคับให้เชื่อมต่อ Origin ด้วย HTTPS เสมอแม้ผู้ใช้เข้ามาทาง HTTP ใช้ในกรณีเฉพาะ และแพ็กเกจที่เปิดให้ใช้อาจต่างกัน
หมายเหตุ: โหมด Flexible ทำให้ผู้ใช้เห็นแม่กุญแจบนเบราว์เซอร์ แต่ข้อมูลที่กรอก เช่นรหัสผ่าน ถูกส่งจาก Cloudflare ไปเซิร์ฟเวอร์แบบข้อความธรรมดาผ่านอินเทอร์เน็ต จึงไม่ควรใช้กับเว็บที่มีการ Login หรือฟอร์ม
ขั้นตอนที่ 1: ตรวจว่า Origin มีใบรับรองที่ใช้ได้
ทดสอบเชื่อมต่อตรงไปที่ IP ของเซิร์ฟเวอร์โดยข้าม Cloudflare (แทน 203.0.113.10 ด้วย IP จริง)
curl -svo /dev/null --resolve example.com:443:203.0.113.10 https://example.com 2>&1 | grep -E "subject:|expire date:|issuer:|SSL certificate verify"
ถ้าได้บรรทัด SSL certificate verify ok. พร้อมวันหมดอายุในอนาคต แปลว่าพร้อมใช้ Full (strict) ได้ทันที ถ้าเจอ self-signed certificate หรือ certificate has expired ให้ทำขั้นตอนที่ 2 ก่อน
ขั้นตอนที่ 2: ติดตั้งใบรับรองบน Origin (เลือกอย่างใดอย่างหนึ่ง)
ทางเลือก A: Let's Encrypt
ใช้ได้กับทุกโหมดและทำงานได้แม้วันหนึ่งปิด Proxy ดูวิธีตามแผงควบคุมที่ใช้ เช่น Certbot บน Nginx หรือ Let's Encrypt บน DirectAdmin การตรวจสอบแบบ HTTP-01 ทำงานผ่าน Proxy ของ Cloudflare ได้ตามปกติ ตราบใดที่ไม่มีกฎบังคับ Redirect ที่ขวางเส้นทาง /.well-known/acme-challenge/
ทางเลือก B: Cloudflare Origin Certificate
- ใน Cloudflare Dashboard เลือกโดเมน ไปที่ SSL/TLS แล้วเลือก Origin Server
- กด Create Certificate เลือกให้ Cloudflare สร้าง Private Key ใส่ชื่อ
example.comและ*.example.comอายุใบค่าเริ่มต้นคือ 15 ปี - คัดลอก Origin Certificate และ Private Key ไปติดตั้งบนเซิร์ฟเวอร์ Private Key จะแสดงครั้งเดียว ต้องเก็บทันที
ใบนี้เชื่อถือได้เฉพาะเมื่อผ่าน Cloudflare เท่านั้น ถ้าปิด Proxy ผู้ใช้จะเห็นคำเตือนใบรับรองไม่ถูกต้อง
ขั้นตอนที่ 3: เปลี่ยนโหมดเป็น Full (strict)
- ใน Cloudflare Dashboard เลือกโดเมน แล้วไปที่ SSL/TLS และ Overview
- กด Configure ที่หัวข้อ SSL/TLS encryption (หน้าจอรุ่นเก่าแสดงเป็นปุ่มเลือกโหมดทันที)
- หากเปิด Automatic SSL/TLS อยู่ Cloudflare จะเลือกโหมดให้เองตามผลตรวจ Origin ถ้าต้องการกำหนดเอง ให้เลือก Custom แล้วเลือก Full (strict)
- บันทึก การเปลี่ยนมีผลภายในไม่กี่วินาที
ขั้นตอนที่ 4: บังคับ HTTPS ที่ Cloudflare
ไปที่ SSL/TLS แล้วเลือก Edge Certificates เปิด Always Use HTTPS เมื่อใช้ Full (strict) แล้ว จะบังคับ Redirect ที่ Origin ด้วยก็ได้ ไม่เกิดวนซ้ำ ส่วน HSTS ให้เปิดหลังจากมั่นใจว่าทุก Subdomain ใช้ HTTPS ได้แล้วเท่านั้น เพราะเบราว์เซอร์จะจำค่าไว้และย้อนกลับยาก
ตรวจสอบผลลัพธ์
curl -sI http://example.com | head -n 3
curl -sI https://example.com | grep -iE "^HTTP|^server|cf-ray"
คำสั่งแรกควรได้ 301 ไปยัง https:// คำสั่งที่สองควรได้ HTTP/2 200 พร้อม server: cloudflare และบรรทัด cf-ray แปลว่าผ่าน Cloudflare และเชื่อม Origin สำเร็จ
ปัญหาที่พบบ่อย
ERR_TOO_MANY_REDIRECTS
เกิดจากใช้ Flexible ขณะที่ Origin บังคับ Redirect ไป HTTPS Cloudflare เชื่อม Origin ด้วย HTTP แล้ว Origin ตอบกลับให้ไป HTTPS วนซ้ำไม่จบ แก้โดยติดตั้งใบรับรองบน Origin แล้วเปลี่ยนเป็น Full (strict) ไม่ควรแก้ด้วยการปิด Redirect ที่ Origin
Error 525 SSL handshake failed
Cloudflare เชื่อม Origin ที่พอร์ต 443 ได้แต่ Handshake ไม่สำเร็จ มักเพราะไม่มีใบรับรองติดตั้งอยู่บน Virtual Host นั้น หรือพอร์ต 443 ไม่ได้เปิด ตรวจ Firewall ของเซิร์ฟเวอร์ และหากเซิร์ฟเวอร์มี Security Group หรือ Firewall ภายนอกจากฝั่งผู้ให้บริการ ให้เปิดพอร์ตนั้นเพิ่มด้วย
Error 526 Invalid SSL certificate
เกิดเฉพาะโหมด Full (strict) เมื่อใบรับรองบน Origin หมดอายุ ชื่อไม่ตรง หรือเป็น Self-signed ให้ต่ออายุหรือออกใบใหม่ตามขั้นตอนที่ 2 ดูวิธีเฝ้าวันหมดอายุได้ที่ ตรวจสอบวันหมดอายุ SSL Certificate
รูปหรือสคริปต์บางส่วนไม่โหลดหลังเปลี่ยนเป็น HTTPS
หน้าเว็บยังอ้างถึงไฟล์ด้วย http:// ดู แก้ปัญหา Mixed Content บน WordPress
หากทำตามขั้นตอนแล้วยังติดปัญหา สามารถติดต่อทีมงานซัพพอร์ตของ THAI DATA CLOUD ได้ที่ https://thaidata.cloud/contact/ โดยแจ้งชื่อโดเมน สิ่งที่ทำไปแล้ว และข้อความ Error ที่พบ เพื่อให้ทีมงานตรวจสอบได้รวดเร็วขึ้น
- Categories:
- Cloud
- Tags:
- Cloud
- Cloud Server
Related Posts
หมวดหมู่ที่น่าสนใจ
- Account Settings
- AD Server
- AI
- Alibaba Cloud
- Anti-Spam Gateway
- AWS Amazon Web Services
- Campaign
- CentOS/AlmaLinux
- Cloud
- Cloud Backup
- Cloud Communication
- Cloud Migration
- Cloud Security
- Cloud Server Management
- Cloud Solution
- Cloud Solution for Government
- Cloud Solutions by Industry
- Cloud Storage
- Cloud VPS App Plus +
- Cloud VPS DirectAdmin
- Cloud VPS Plesk
- CSR
- Cyber Security
- Cybersecurity
- Data Sovereignty
- Database Server
- DDoS
- Digital Tranformation
- Digital Transformation
- Direct Mail
- Directadmin
- Domainname
- Ecommerce
- ERP
- Generative AI
- Getting Started
- Google Cloud
- Google G Suite
- Huawei Cloud
- IT News
- Linux Server
- Managed Cloud Services
- Managed Service Provider
- Manual
- Microsoft
- Microsoft 365
- Microsoft Azure
- News
- On-premise
- Private Mail Server
- Promotion
- Recommend Solution (Enterprise)
- Server
- Sovereign Cloud
- THAI DATA CLOUD Platform
- Ubuntu
- Ubuntu
- Uncategorized
- VMware
- VPS Server
- Web Design
- Web Hosting
- Web Hosting (DirectAdmin)
- Web Hosting (Plesk)
- Web Technologies
- Windows Server
- Wordpress
- Zimbra
- เรื่องราวความประทับใจ
- โซลูชันสำหรับธุรกิจการผลิตและยานยนต์
- โซลูชันสำหรับธุรกิจการศึกษา
- โซลูชันสำหรับธุรกิจการเงิน
- โซลูชันสำหรับธุรกิจขนส่งและกระจายสินค้า
- โซลูชันสำหรับธุรกิจค้าปลีก
- โซลูชันสำหรับธุรกิจท่องเที่ยว
- โซลูชันสำหรับธุรกิจบริการสุขภาพและโรงพยาบาล
- โซลูชันสำหรับธุรกิจประกันภัย
- โซลูชันสำหรับธุรกิจพลังงานและสาธารณูปโภค
- โซลูชันสำหรับธุรกิจสื่อสารมวลชนและเอ็นเตอร์เทนเมนท์
- โซลูชันสำหรับธุรกิจอสังหาริมทรัพย์
- โซลูชันสำหรับธุรกิจเทคโนโลยี


