ทำไมเราต้องรู้วิธีตั้งค่า Multi-Level Subdomain แบบ “ฟรี”?
ขอใช้คำว่า MLS แทนคำว่า Multi-Level Subdomain
และใช้คำว่า ACM แทนคำว่า Advanced Certificate Manager
หลายคนที่ใช้ Cloudflare ก็เข้าใจว่า
แค่เพิ่ม subdomain ยังไงก็ได้ SSL ฟรีอยู่แล้วไม่ใช่เหรอ?
คำตอบคือ จริง แต่ๆๆๆๆ Cloudflare นั้นให้ SSL ฟรีก็จริง แต่มันก็มีข้อจำกัดด้านระดับของ wildcard certificate ซึ่งจะเริ่มเป็นปัญหาทันทีเมื่อคุณใช้ MLS เช่น
-
b.bius.work✅ -
a.b.bius.work❌
ในหลายกรณีเพื่อแก้ปัญหานี้ Cloudflare จะเสนอให้อัปเกรดไปใช้ ACM เพื่อออก certificate ที่ครอบคลุม subdomain หลายชั้นได้ แต่!
-
ไม่ใช่ทุกระบบที่ผมอยากจะจ่าย
-
ไม่ใช่ทุก use case ต้องใช้ ACM
-
และผมดันไปเจอวิธีตั้งค่าให้ใช้งานได้ โดยไม่เสียเงินเพิ่ม (เคยเอาไป report แล้ว cloudflare แจ้งว่าตั้งใจให้เป็นแบบนี้)
Multi-Level Subdomain (MLS) คืออะไร?
Multi-Level Subdomain คือ โครงสร้างโดเมนที่มี subdomain ซ้อนหลายชั้น อยู่หน้าโดเมนหลัก
ตัวอย่างโครงสร้าง
-
bius.workโดเมนหลัก (Root domain) -
b.bius.workSubdomain ระดับที่ 1 -
a.b.bius.workSubdomain ระดับที่ 2 (MLS)
โครงสร้างลักษณะนี้พบได้บ่อยในระบบจริง เช่น
-
แยก environment (
dev.api.example.com,staging.api.example.com) -
ระบบ multi-tenant
-
ระบบ microservices
แล้ว Advanced Certificate Manager (ACM) คืออะไร?
Advanced Certificate Manager คือ Add-on ของ Cloudflare
ที่ช่วยให้คุณสามารถออก SSL Certificate แบบ custom และ flexible มากขึ้น
ความสามารถหลักของ ACM:
-
ออก certificate ที่ครอบคลุม MLS
-
รองรับ wildcard หลายชั้น เช่น
*.*.example.com -
เหมาะกับระบบขนาดใหญ่ หรือ SaaS ที่มี subdomain จำนวนมาก