
SAN Certificate คืออะไร
SAN Certificate (Subject Alternative Names Certificate) หรือที่รู้จักในชื่อ Multi-Domain SSL หรือ UCC (Unified Communications Certificate) คือ SSL Certificate หนึ่งใบที่สามารถครอบคลุมหลายโดเมนหรือหลาย Hostname ที่แตกต่างกันโดยสิ้นเชิงได้ในใบเดียว
ตัวอย่างเช่น บริษัทที่มีหลายเว็บไซต์อาจใช้ SAN Certificate ใบเดียวครอบคลุม:
example.com
example.co.th
example.net
shop.example.com
api.example.com
another-brand.com
ทั้งหมดนี้ถูกระบุเป็น Subject Alternative Names ใน Certificate เดียวกัน แทนที่จะต้องซื้อ SSL Certificate แยกกัน 6 ใบ
SAN Certificate ต่างจาก Wildcard SSL อย่างไร
คำถามที่พบบ่อยที่สุดคือความแตกต่างระหว่าง SAN Certificate และ Wildcard SSL ซึ่งมีความแตกต่างสำคัญดังนี้:
| หัวข้อ | SAN Certificate | Wildcard SSL |
|---|---|---|
| ครอบโดเมนต่างกัน | ✓ ได้ (example.com + another.com + shop.net) | ✗ ได้เฉพาะ Subdomain เดียวกัน |
| จำนวน Subdomain | จำกัดตาม SAN entries ที่ซื้อ | ไม่จำกัด Subdomain ใน domain เดียวกัน |
| ตัวอย่างการครอบ | example.com, another.com, shop.net | *.example.com (ครอบทุก Subdomain) |
| เพิ่ม domain ภายหลัง | ต้อง reissue Certificate | ไม่ต้องเปลี่ยน Certificate |
| ราคา (AsiaGB) | ขึ้นกับจำนวน SAN entries | เริ่มต้น 5,000 บาท/ปี |
| เหมาะกับ | มีหลายโดเมนต่างกัน เช่น .com + .co.th + .net | มีหลาย Subdomain ของ domain เดียวกัน |
กระบวนการออก SAN Certificate ทำงานอย่างไร
เมื่อ CA (Certificate Authority) ออก SAN Certificate ขั้นตอนจะคล้ายกับ SSL ธรรมดาแต่มีขั้นตอนพิเศษเพิ่มเติม
- สร้าง CSR (Certificate Signing Request) — ระบุ Primary Domain (Common Name) พร้อมกับ SAN entries ทุกโดเมนที่ต้องการครอบ
- Domain Validation (DV SAN) — CA จะตรวจสอบสิทธิ์การเป็นเจ้าของโดเมนทุกโดเมนที่ระบุเป็น SAN entries ไม่ใช่แค่ Primary Domain
- Organization Validation (OV/EV SAN) — นอกจาก Domain Validation ยังต้องยืนยันตัวตนองค์กรด้วย
- ออก Certificate — เมื่อผ่านการตรวจสอบครบทุกโดเมนแล้ว CA จะออก Certificate ที่ระบุ SAN entries ทั้งหมดในไฟล์เดียว
- ติดตั้งบน Server — ติดตั้ง Certificate ไฟล์เดียวนี้บน Web Server ซึ่งจะครอบคลุมทุกโดเมนที่ระบุ
การ Validate แต่ละโดเมนใน SAN entries สามารถทำได้ 3 วิธี ได้แก่ DNS Validation (เพิ่ม TXT Record), HTTP Validation (วาง Verification File บนเว็บ) หรือ Email Validation (รับ Email ยืนยันจากที่อยู่ที่กำหนด) CA ส่วนมากอนุญาตให้ใช้วิธีต่างกันสำหรับแต่ละโดเมนใน Certificate เดียวกัน
| ประเภท SAN Certificate | เวลาออก Certificate | การตรวจสอบ | เหมาะกับ |
|---|---|---|---|
| DV SAN | ไม่กี่นาที | ตรวจสิทธิ์โดเมนอย่างเดียว | เว็บไซต์ทั่วไป, Blog, E-Commerce |
| OV SAN | 1–3 วันทำการ | ตรวจสิทธิ์โดเมน + ยืนยันองค์กร | ธุรกิจ, ระบบองค์กร |
| EV SAN | 3–7 วันทำการ | ตรวจสิทธิ์โดเมน + ยืนยันองค์กรอย่างเข้มงวด | ธนาคาร, สถาบันการเงิน, รัฐบาล |
ประโยชน์หลักของ SAN Certificate
การใช้ SAN Certificate แทนการซื้อ SSL หลายใบมีข้อได้เปรียบหลายประการ:
- ประหยัดค่าใช้จ่าย — SAN Certificate 1 ใบ 5 โดเมน อาจถูกกว่าซื้อ DV SSL แยก 5 ใบ
- การจัดการง่ายกว่า — ต่ออายุครั้งเดียว แทนที่จะต้องติดตามวันหมดอายุ 5 ใบแยกกัน
- ใช้กับโดเมนต่างกันโดยสิ้นเชิง — สิ่งที่ Wildcard SSL ทำไม่ได้เลย
- รองรับ Internal Domain — บาง SAN Certificate สามารถใส่ internal hostname เช่น mail.internal หรือ IP address ได้ด้วย
- ลดการจัดการ Server — ไม่ต้องจัดการ Certificate หลายใบบนเซิร์ฟเวอร์เดียวกัน
เมื่อไหร่ควรใช้ SAN Certificate
SAN Certificate เหมาะกับกรณีเหล่านี้:
- บริษัทที่มีหลาย TLD — เช่น example.com, example.co.th, example.net, example.org ต้องการให้ทุกเวอร์ชัน HTTPS หมดทั้งหมด
- E-commerce ที่มีหลายแบรนด์ — หนึ่งบริษัทที่มีหลายร้านค้าแยก domain
- Microsoft Exchange / Office 365 On-premise — ต้องการ Certificate ที่ครอบ mail.company.com, autodiscover.company.com, owa.company.com พร้อมกัน (UCC)
- บริษัท SaaS ที่มี domain สำหรับลูกค้า — ลูกค้าแต่ละรายใช้ custom domain ต่างกัน
เคล็ดลับ: ถ้ามีหลาย Subdomain ของ domain เดียวกัน เช่น shop.example.com, api.example.com, blog.example.com แนะนำให้ใช้ Wildcard SSL (*.example.com) ซึ่งครอบทุก Subdomain ได้โดยไม่มีขีดจำกัด SAN Certificate เหมาะสำหรับโดเมนที่ต่างกันอย่างสิ้นเชิงมากกว่า
วิธีตรวจสอบ SAN ใน Certificate ที่มีอยู่
ตรวจสอบ SAN entries ในคำสั่ง OpenSSL:
openssl s_client -connect example.com:443 2>/dev/null | \
openssl x509 -noout -text | grep -A 10 "Subject Alternative Name"
ผลลัพธ์จะแสดง DNS entries ทั้งหมดที่อยู่ใน Certificate เช่น DNS:example.com, DNS:example.co.th, DNS:www.example.com
SAN Certificate กับ Let's Encrypt
Let's Encrypt รองรับ SAN Certificate ฟรี สามารถสร้าง Certificate ที่ครอบได้ถึง 100 domain ใน Certificate เดียว ผ่านคำสั่ง Certbot:
certbot certonly --webroot \
-w /var/www/example \
-d example.com \
-d example.co.th \
-d shop.example.com \
--email [email protected] \
--agree-tos
อย่างไรก็ตาม Let's Encrypt ให้เฉพาะ DV SSL ถ้าต้องการ OV หรือ EV SAN Certificate ต้องซื้อจาก CA เช่น DigiCert หรือ GeoTrust ซึ่ง AsiaGB ให้บริการอยู่
SAN Certificate กับ IP Address
SAN Certificate สามารถระบุ IP Address เป็น SAN entry ได้ด้วย เรียกว่า IP SAN หรือ IP SSL เหมาะสำหรับระบบที่ต้องการ HTTPS เพื่อเข้า IP โดยตรง เช่น internal API server, monitoring dashboard โดยไม่ต้องผ่านชื่อ domain แต่ Let's Encrypt ไม่รองรับ IP SAN ต้องซื้อ paid SSL เท่านั้น
คำถามที่พบบ่อย (FAQ)
SAN Certificate 1 ใบครอบได้กี่โดเมน?
ขึ้นอยู่กับ Certificate ที่ซื้อและ CA ที่ออก SAN Certificate ทั่วไปมักให้ 3–250 SAN entries ต่อใบ โดยมีราคาเพิ่มตามจำนวน domain ที่เพิ่มขึ้น Let's Encrypt ให้ได้สูงสุด 100 domain ต่อ Certificate
เพิ่ม domain เข้า SAN Certificate ที่มีอยู่แล้วได้ไหม?
ได้ แต่ต้อง Reissue Certificate ใหม่ กระบวนการ Reissue คือการขอ Certificate ใหม่ที่มี SAN entries เพิ่มขึ้น Certificate เดิมจะถูก Revoke โดยอัตโนมัติเมื่อ Certificate ใหม่ออกแล้ว ส่วนมากไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับ Reissue ภายในอายุที่ซื้อมา แต่ต้องตรวจสอบกับ CA ก่อน
SAN Certificate รองรับ Wildcard ใน SAN entries ด้วยได้ไหม?
ได้ SAN Certificate สามารถมีทั้ง exact domain และ wildcard ผสมกันได้ เช่น example.com + *.example.com + another.com + *.another.com ใน Certificate เดียว Certificate แบบนี้เรียกว่า Multi-Domain Wildcard SSL และมีราคาสูงกว่าปกติ
การติดตั้ง SAN Certificate บน Web Server
หลังจาก CA ออก SAN Certificate ให้แล้ว ขั้นตอนการติดตั้งบน Web Server จะคล้ายกับ SSL ทั่วไปแต่มีจุดที่ต้องระวังเพิ่มเติม โดยเฉพาะเรื่องการ Configure Virtual Host ให้รองรับหลายโดเมนในเซิร์ฟเวอร์เดียวกัน
การติดตั้งบน Apache Web Server
ใน Apache แต่ละโดเมนที่อยู่ใน SAN Certificate ต้องมี Virtual Host Block ของตัวเอง โดยทั้งหมดชี้ไปยังไฟล์ Certificate เดียวกัน ตัวอย่างการตั้งค่าสำหรับ 2 โดเมนในใบเดียว
<VirtualHost *:443>
ServerName example.com
SSLEngine on
SSLCertificateFile /etc/ssl/certs/san-certificate.crt
SSLCertificateKeyFile /etc/ssl/private/san-certificate.key
SSLCertificateChainFile /etc/ssl/certs/ca-bundle.crt
</VirtualHost>
<VirtualHost *:443>
ServerName example.co.th
SSLEngine on
SSLCertificateFile /etc/ssl/certs/san-certificate.crt
SSLCertificateKeyFile /etc/ssl/private/san-certificate.key
SSLCertificateChainFile /etc/ssl/certs/ca-bundle.crt
</VirtualHost>
การติดตั้งบน Nginx Web Server
ใน Nginx ใช้ server_name directive ระบุหลายโดเมนใน Server Block เดียวได้เลย ซึ่งง่ายกว่า Apache สำหรับกรณีที่หลายโดเมนชี้ไปเนื้อหาเดียวกัน
server {
listen 443 ssl;
server_name example.com example.co.th;
ssl_certificate /etc/ssl/certs/san-certificate.crt;
ssl_certificate_key /etc/ssl/private/san-certificate.key;
}
| ไฟล์ที่ได้รับจาก CA | ใช้ทำอะไร | ชื่อ Directive บน Apache/Nginx |
|---|---|---|
| certificate.crt | ตัว Certificate หลัก (มี SAN entries) | SSLCertificateFile / ssl_certificate |
| private.key | Private Key (เก็บเป็นความลับ) | SSLCertificateKeyFile / ssl_certificate_key |
| ca-bundle.crt | Intermediate CA Chain | SSLCertificateChainFile / (ใน nginx รวมกับ .crt ได้) |
ข้อควรระวังและข้อจำกัดของ SAN Certificate
แม้ SAN Certificate จะให้ประโยชน์มาก แต่มีข้อจำกัดที่ต้องเข้าใจก่อนตัดสินใจเลือกใช้ เพื่อไม่ให้เกิดปัญหาในภายหลัง
- ต้อง Reissue เมื่อเพิ่มโดเมน — ไม่สามารถเพิ่มโดเมนใหม่ได้แบบ Real-time ต้องขอ Reissue ทุกครั้ง ซึ่งต่างจาก Wildcard SSL ที่ครอบ Subdomain ใหม่ได้ทันที
- ถ้า Certificate ถูก Revoke ทุกโดเมนได้รับผลกระทบ — เนื่องจากทุกโดเมนอยู่ในใบเดียวกัน ถ้า Private Key หลุดและต้อง Revoke Certificate ทุกโดเมนจะหยุดทำงานพร้อมกัน
- ราคาเพิ่มตามจำนวน SAN entries — ต่างจาก Wildcard ที่ราคาคงที่ไม่ว่าจะมี Subdomain กี่ตัว
- Domain Validation ทุกโดเมน — ต้อง Validate สิทธิ์การเป็นเจ้าของทุกโดเมนที่ระบุ ถ้าโดเมนใดที่เพิ่มใน SAN ไม่ผ่าน Validation CA จะไม่ออก Certificate ให้
- ไม่รองรับ Wildcard ระดับลึก — SAN Certificate รองรับ *.example.com แต่ไม่รองรับ *.*.example.com (ไม่มี CA ใดรองรับ Multi-level Wildcard)
สรุปการเลือกใช้: ถ้ามีโดเมนต่างกันอย่างสิ้นเชิง (ต่าง TLD, ต่างแบรนด์) ใช้ SAN Certificate — ถ้ามีหลาย Subdomain ของโดเมนเดียวกัน ใช้ Wildcard SSL — ถ้ามีทั้งสองแบบ ใช้ Multi-Domain Wildcard SSL ที่รองรับทั้ง SAN entries และ Wildcard ในใบเดียว
การเปรียบเทียบค่าใช้จ่ายจริง: SAN Certificate vs ซื้อแยก
หลายองค์กรยังไม่แน่ใจว่า SAN Certificate คุ้มค่ากว่าซื้อ SSL แยกกันหรือไม่ ตัวอย่างการคำนวณต้นทุนจริงสำหรับองค์กรที่มี 5 โดเมน
| สถานการณ์ | ตัวเลือก | ค่าใช้จ่าย | งานบริหารจัดการ |
|---|---|---|---|
| 5 โดเมนต่างกัน (ต่าง TLD) | DV SSL แยก 5 ใบ (RapidSSL) | 5 × 1,000 = 5,000 บาท/ปี | 5 วันหมดอายุ, 5 ใบ |
| 5 โดเมนต่างกัน (ต่าง TLD) | SAN Certificate 5 entries | ราคาตามจำนวน SAN | 1 วันหมดอายุ, 1 ใบ |
| 10 Subdomain โดเมนเดียว | DV SSL แยก 10 ใบ | 10 × 1,000 = 10,000 บาท/ปี | 10 วันหมดอายุ |
| 10 Subdomain โดเมนเดียว | Wildcard SSL (RapidSSL) | 5,000 บาท/ปี ไม่จำกัด Subdomain | 1 วันหมดอายุ, 1 ใบ |
นอกจากค่าใช้จ่าย ต้นทุนแฝงที่มักถูกมองข้ามคือเวลาที่ใช้บริหารจัดการ Certificate หลายใบ ถ้าลืมต่ออายุแม้ใบเดียว เบราว์เซอร์จะแสดงคำเตือน "Your connection is not private" ซึ่งส่งผลโดยตรงต่อความน่าเชื่อถือของแบรนด์และอัตราการใช้งานเว็บไซต์
การ Monitor วันหมดอายุ SAN Certificate
เนื่องจาก SAN Certificate ครอบคลุมหลายโดเมน การปล่อยให้หมดอายุจะกระทบทุกโดเมนในใบเดียวกันพร้อมกัน จึงต้องวางระบบ Monitor และแจ้งเตือนล่วงหน้าให้รัดกุมกว่า SSL แบบธรรมดา
- ตั้งแจ้งเตือนล่วงหน้า 60 วัน — ถ้าต้อง Reissue เพิ่มโดเมนก็ทำได้ในช่วงนี้พร้อมกันเลย
- ใช้ SSL Monitoring Tools เช่น UptimeRobot, StatusCake หรือ UptimeKuma ที่ตรวจ SSL expiry อัตโนมัติ
- ตรวจสอบด้วย OpenSSL เพื่อดูวันหมดอายุและรายชื่อโดเมนทั้งหมดใน Certificate
# ตรวจสอบวันหมดอายุ
echo | openssl s_client -connect example.com:443 2>/dev/null \
| openssl x509 -noout -dates
# ตรวจสอบ SAN entries ทั้งหมด
echo | openssl s_client -connect example.com:443 2>/dev/null \
| openssl x509 -noout -text | grep -A5 "Subject Alternative"
AsiaGB มีบริการ SSL Certificate ครบวงจร ตั้งแต่ DV SAN Certificate สำหรับเว็บไซต์ทั่วไป ไปจนถึง OV และ EV SAN Certificate สำหรับองค์กรและสถาบันการเงิน ทีมงานพร้อมแนะนำ SAN entries ที่เหมาะสมกับโครงสร้างโดเมนของคุณ และช่วย Reissue เมื่อต้องเพิ่มโดเมนใหม่
ต้องการ SSL Certificate สำหรับหลายโดเมน?
AsiaGB ให้บริการ SSL Certificate ครบทุกประเภท DV SSL เริ่มต้น 1,000 บาท/ปี Wildcard SSL 5,000 บาท/ปี และ Multi-Domain SAN Certificate จาก RapidSSL, GeoTrust, DigiCert
ดู SSL Certificate ทั้งหมด