SSL (Secure Sockets Layer) คืออะไร
SSL เป็นโปรโตคอลความปลอดภัยมาตรฐานที่พัฒนาโดย Netscape ในปี 1995 เพื่อสร้างช่องทางการสื่อสารที่เข้ารหัสระหว่างเซิร์ฟเวอร์และไคลเอ็นต์ (เช่น เว็บเซิร์ฟเวอร์กับเบราว์เซอร์, เมลเซิร์ฟเวอร์กับไคลเอ็นต์อีเมล) ปัจจุบันถูกแทนที่โดย TLS (Transport Layer Security) แต่คำว่า "SSL" ยังใช้เรียกกันทั่วไป
การทำงานของ SSL/TLS
- Handshake (การ serre มือ): ไคลเอ็นต์เชื่อมต่อเซิร์ฟเวอร์ → เซิร์ฟเวอร์ส่ง SSL Certificate (มี Public Key)
- การตรวจสอบใบรับรอง: เบราว์เซอร์ตรวจสอบว่า Certificate น่าเชื่อถือ (ออกโดย CA ที่เชื่อถือได้) และไม่หมดอายุ
- แลกเปลี่ยนคีย์: ไคลเอ็นต์สร้าง Pre-Master Secret เข้ารหัสด้วย Public Key ส่งให้เซิร์ฟเวอร์
- สร้าง Session Keys: ทั้งสองฝ่ายสร้าง Symmetric Keys จาก Pre-Master Secret
- การสื่อสารที่เข้ารหัส: ใช้ Session Keys เข้ารหัสข้อมูล (AES, ChaCha20) และตรวจสอบความสมบูรณ์ (HMAC)
SSL Certificate (ใบรับรอง SSL) คืออะไร
ไฟล์ข้อมูลที่ผูก Public Key กับข้อมูลตัวตนขององค์กร/เว็บไซต์ ออกโดย Certificate Authority (CA) ที่น่าเชื่อถือ ประกอบด้วย:
- ชื่อโดเมน (Domain Name / CN)
- ชื่อองค์กร (Organization)
- Public Key
- วันที่ออก / หมดอายุ
- ลายเซ็นดิจิทัลของ CA
ประเภท SSL Certificate
| ประเภท | การตรวจสอบ | เหมาะสำหรับ |
|---|---|---|
| DV (Domain Validated) | ยืนยันสิทธิ์โดเมนเท่านั้น | เว็บไซต์ทั่วไป, บล็อก |
| OV (Organization Validated) | ยืนยันองค์กร + โดเมน | ธุรกิจ, อีคอมเมิร์ซ |
| EV (Extended Validation) | ตรวจสอบอย่างเข้มงวด แสดงชื่อบริษัทใน Address Bar | ธนาคาร, องค์กรใหญ่ |
| Wildcard | ครอบคลุม Subdomain ทั้งหมด (*.example.com) | มี Subdomain หลายตัว |
SSL ป้องกันอะไรได้บ้าง
- การแอบอ่าน (Eavesdropping) - ข้อมูลเข้ารหัส ไม่สามารถอ่านได้
- การปลอมแปลงข้อมูล (Tampering) - ตรวจสอบความสมบูรณ์ด้วย MAC/AEAD
- การปลอมแปลงตัวตน (Spoofing/Impersonation) - Certificate ยืนยันตัวตนเซิร์ฟเวอร์
- Man-in-the-Middle (MitM) - โจมตีไม่สามารถแทรกตัวระหว่างการเชื่อมต่อได้
SSL vs HTTPS vs TLS
- SSL - โปรโตคอล (รุ่นเก่า SSL 1.0, 2.0, 3.0 - ทั้งหมด Deprecated แล้ว)
- TLS - โปรโตคอลรุ่นใหม่ (TLS 1.0, 1.1, 1.2, 1.3 - ปัจจุบันใช้ 1.2/1.3)
- HTTPS = HTTP + TLS/SSL (พอร์ต 443)
การติดตั้ง SSL บนเซิร์ฟเวอร์
- สร้าง CSR (Certificate Signing Request) และ Private Key
- ส่ง CSR ให้ CA (Let's Encrypt, DigiCert, GlobalSign, ฯลฯ)
- CA ออก Certificate → นำไปติดตั้งบน Web Server (Nginx, Apache, IIS)
- ตั้งค่า Redirect HTTP → HTTPS, HSTS, OCSP Stapling
สรุป: SSL/TLS เป็นรากฐานของความปลอดภัยอินเทอร์เน็ตปัจจุบัน ใช้ใน HTTPS, SMTPS, FTPS, และโปรโตคอลอื่นๆ ทุกเว็บไซต์ควรใช้ TLS 1.2 หรือ 1.3 พร้อม Certificate ที่ถูกต้อง