สารบัญ
1. ทำไมต้องย้าย SSL จาก GoDaddy
หลายคนซื้อโดเมนหรือ SSL Certificate จาก GoDaddy ตอนเริ่มต้น แต่เมื่อย้าย Hosting มาใช้ผู้ให้บริการอื่นที่ใช้ DirectAdmin เป็น Control Panel ก็จำเป็นต้องนำ SSL มาติดตั้งใหม่บนเซิร์ฟเวอร์ปลายทาง
สาเหตุหลักที่ต้องย้าย SSL ได้แก่:
- ย้าย Hosting มายัง AsiaGB หรือผู้ให้บริการที่ใช้ DirectAdmin
- SSL ที่ซื้อยังไม่หมดอายุ ไม่อยากซื้อใหม่ก่อนเวลา
- GoDaddy ออก Certificate มาแล้วแต่ยังไม่ได้ติดตั้ง
- ต้องการใช้ SSL เดียวกันบนหลาย Server
SSL Certificate ที่ซื้อไว้กับ GoDaddy สามารถนำมาติดตั้งบนเซิร์ฟเวอร์ใดก็ได้ ตราบใดที่คุณมี Private Key ที่สร้างไว้ตอนทำ CSR
2. สิ่งที่ต้องเตรียมก่อนย้าย
ก่อนเริ่มกระบวนการย้าย SSL ควรเตรียมสิ่งต่อไปนี้ให้พร้อม:
| รายการ | รายละเอียด | จำเป็น |
|---|---|---|
| บัญชี GoDaddy | สำหรับดาวน์โหลด Certificate | ✅ บังคับ |
| Private Key (.key) | สร้างตอนทำ CSR ต้องเก็บไว้เอง | ✅ บังคับ |
| SSL Account ใน DirectAdmin | Admin หรือ Reseller เปิดให้ Domain มี SSL | ✅ บังคับ |
| FTP/SSH Access | กรณีต้องการตรวจสอบไฟล์ | ⚪ ไม่บังคับ |
| OpenSSL | กรณีต้องแปลงรูปแบบไฟล์ | ⚪ ถ้ามี .pfx |
Private Key ต้องสร้างและเก็บไว้ในระบบของคุณเอง GoDaddy ไม่มี Private Key ของคุณ ถ้าหาย Private Key ต้องทำ Reissue ใหม่
3. ดาวน์โหลด SSL Certificate จาก GoDaddy
ทำตามขั้นตอนต่อไปนี้เพื่อดาวน์โหลด SSL จาก GoDaddy:
เข้า GoDaddy Account
ล็อกอินที่ godaddy.com แล้วไปที่ My Products > SSL Certificates หรือ Security > SSL Certificates
เลือก Certificate ที่ต้องการ
คลิก Manage หรือ Setup ข้าง Certificate ที่ต้องการดาวน์โหลด ถ้ายังไม่ได้ Activate อาจต้อง Submit CSR ก่อน
ดาวน์โหลด Certificate
คลิก Download แล้วเลือก Server Type เป็น Apache หรือ Other จะได้ไฟล์ .zip มา แตกไฟล์จะเจอ .crt และ bundle.crt
เปิดไฟล์ด้วย Text Editor
เปิดไฟล์ .crt ด้วย Notepad หรือ VS Code เนื้อหาจะขึ้นต้นด้วย -----BEGIN CERTIFICATE-----
4. ไฟล์ SSL จาก GoDaddy มีอะไรบ้าง
เมื่อดาวน์โหลด SSL จาก GoDaddy (เลือก Server Type: Apache) คุณจะได้ไฟล์เหล่านี้:
| ชื่อไฟล์ | บทบาท | ใช้กับ DirectAdmin |
|---|---|---|
<domain>.crt | Domain Certificate หลัก | ใส่ในช่อง "Certificate" |
gd_bundle-g2-g1.crt | CA Bundle / Intermediate Chain | ใส่ในช่อง "CA Root Certificate" |
<domain>.key | Private Key (ถ้า GoDaddy สร้าง CSR ให้) | ใส่ในช่อง "Private Key" |
จะได้ไฟล์ .pem แทน .crt แต่เนื้อหาเหมือนกัน ใช้งานกับ DirectAdmin ได้โดยตรง
5. แปลงไฟล์ SSL (กรณีจำเป็น)
กรณีที่ GoDaddy ส่งไฟล์มาในรูปแบบ .pfx (PKCS#12) หรือถ้าคุณเคยใช้งาน Windows IIS มาก่อน จำเป็นต้องแปลงก่อนใช้กับ DirectAdmin
แปลง .pfx เป็น .crt + .key ด้วย OpenSSL
# ดึง Certificate ออกจาก .pfx
openssl pkcs12 -in certificate.pfx -nokeys -clcerts -out domain.crt
# ดึง Private Key ออกจาก .pfx (จะถามรหัสผ่าน pfx)
openssl pkcs12 -in certificate.pfx -nocerts -nodes -out private.key
# ดึง CA Bundle ออกจาก .pfx
openssl pkcs12 -in certificate.pfx -nokeys -cacerts -out ca_bundle.crt
ตรวจสอบว่า Private Key ตรงกับ Certificate
# สองค่านี้ต้องเหมือนกัน ถ้าไม่ตรง = ผิด Key
openssl x509 -noout -modulus -in domain.crt | md5sum
openssl rsa -noout -modulus -in private.key | md5sum
ดาวน์โหลด Git Bash หรือใช้ WSL (Windows Subsystem for Linux) ก็สามารถรันคำสั่ง OpenSSL ได้
6. ติดตั้ง SSL บน DirectAdmin ทีละขั้นตอน
เมื่อได้ไฟล์ .crt, CA Bundle และ Private Key ครบแล้ว ทำตามขั้นตอนต่อไปนี้:
เข้า DirectAdmin Control Panel
ล็อกอินเข้า DirectAdmin ที่ URL ที่ผู้ให้บริการ Hosting กำหนด (เช่น yourdomain.com:2222)
ไปที่ SSL Management
จาก Dashboard คลิก Account Manager หรือ Domain Administration แล้วเลือก SSL Certificates
เลือก "Paste a pre-generated certificate and key"
คลิก Tab หรือ Radio Button ที่ระบุว่า Paste a pre-generated certificate and key แทนที่จะ Generate ใหม่
วาง Private Key
เปิดไฟล์ .key ด้วย Text Editor คัดลอกทั้งหมด (รวม -----BEGIN RSA PRIVATE KEY-----) แล้ววางในช่อง Private Key
วาง Certificate
เปิดไฟล์ .crt หลัก คัดลอกแล้ววางในช่อง Certificate (ไม่ใช่ CA Bundle)
วาง CA Bundle
เปิดไฟล์ bundle.crt / gd_bundle.crt คัดลอกทั้งหมดแล้ววางในช่อง CA Root Certificate ขั้นตอนนี้สำคัญมาก ถ้าขาด Browser จะแสดง Chain Error
บันทึกและ Restart Web Server
คลิก Save DirectAdmin จะ Restart Apache/httpd โดยอัตโนมัติ รอประมาณ 10-30 วินาที
DirectAdmin รุ่นใหม่ (1.6+) มี Let's Encrypt integration ในตัว ถ้าต้องการใช้ Commercial SSL จาก GoDaddy ให้เลือก "Use a Custom Certificate" แทน
7. ตรวจสอบการติดตั้ง SSL
หลังติดตั้งแล้ว ควรตรวจสอบให้มั่นใจว่า SSL ทำงานถูกต้อง:
ตรวจสอบผ่าน Browser
- เปิดเว็บไซต์ด้วย
https://yourdomain.com - ต้องเห็นไอคอน 🔒 ในแถบ Address
- คลิกที่ไอคอนกุญแจ เลือก "Certificate is valid" ตรวจดูวันหมดอายุและ Issuer ต้องเป็น GoDaddy หรือ Starfield
ตรวจสอบด้วยเครื่องมือออนไลน์
ใช้ SSL Checker เพื่อตรวจสอบ Certificate Chain ให้ครบ:
- SSL Labs: ssllabs.com/ssltest — วิเคราะห์ละเอียด ได้ Grade A-F
- AsiaGB SSL Checker: asiagb.com/ssl-checker.html — ตรวจสอบรวดเร็ว
- What's My Chain Cert: whatsmychaincert.com — ตรวจ Chain โดยเฉพาะ
ตรวจสอบด้วย OpenSSL (Command Line)
# ตรวจ SSL Certificate บน Server
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com
# ตรวจ Chain (ต้องได้ Verify return code: 0)
openssl s_client -connect yourdomain.com:443 -CApath /etc/ssl/certs 2>/dev/null | grep "Verify return"
| ผลการตรวจสอบ | ความหมาย | แก้ไข |
|---|---|---|
| ✅ Grade A หรือ A+ | SSL ทำงานสมบูรณ์ | — |
| ⚠️ Chain Incomplete | ขาด CA Bundle | ใส่ CA Bundle ใน DirectAdmin |
| ❌ Certificate Expired | SSL หมดอายุ | ต่ออายุหรือซื้อใหม่ |
| ❌ Hostname Mismatch | โดเมนไม่ตรง CN | ตรวจว่าติดตั้ง Certificate ถูก Domain |
| ❌ Self-Signed | ยังใช้ Self-Signed อยู่ | SSL ติดตั้งไม่สำเร็จ ลองใหม่ |
8. แก้ปัญหาที่พบบ่อย
Browser แสดง "Your connection is not private"
สาเหตุที่พบบ่อยและวิธีแก้:
- ขาด CA Bundle: กลับไปเพิ่ม CA Bundle ในช่อง "CA Root Certificate" ใน DirectAdmin
- Certificate ยังไม่ได้ Activate: ตรวจสอบว่า GoDaddy ส่ง Email ยืนยันและ SSL Status เป็น "Active" แล้ว
- DNS ยังชี้ไป Server เดิม: รอ DNS Propagation 1-24 ชั่วโมง
DirectAdmin แจ้ง "Key does not match certificate"
Private Key ที่วางไม่ตรงกับ Certificate ที่ออกมา แก้โดยตรวจสอบ Modulus ให้ตรงกัน (ดูคำสั่งในหัวข้อที่ 5) หรือทำ Reissue ใหม่บน GoDaddy แล้วสร้าง CSR ใหม่จาก DirectAdmin
อย่าวาง CA Bundle ในช่อง "Certificate" และอย่าวาง Certificate ในช่อง "CA Root Certificate" ต้องใส่ถูกช่อง มิฉะนั้น SSL จะทำงานผิดพลาดแบบที่ SSL Checker จับยาก
SSL ติดตั้งแล้วแต่ HTTP ยังเข้าได้
ต้องเพิ่ม Redirect HTTP → HTTPS ใน .htaccess:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Mixed Content Error (ไอคอนกุญแจมีเครื่องหมาย ⚠️)
เกิดจากมีลิงก์หรือรูปภาพในหน้าเว็บที่ยังใช้ HTTP แก้โดย:
- ค้นหาและแก้ URL ใน HTML/CSS ที่ขึ้นต้นด้วย
http://เป็นhttps:// - ถ้าใช้ WordPress ติดตั้งปลั๊กอิน Really Simple SSL หรือ Better Search Replace
- เพิ่ม Header
Content-Security-Policy: upgrade-insecure-requests
9. ต่ออายุ SSL ครั้งหน้า ซื้อที่ไหนดี
เมื่อ SSL จาก GoDaddy ใกล้หมดอายุ คุณมีตัวเลือก 2 ทาง:
| ตัวเลือก | ข้อดี | ข้อเสีย |
|---|---|---|
| ต่ออายุกับ GoDaddy | ไม่ต้องย้ายไฟล์ใหม่ (ถ้า Key เดิม) | ราคาสูง ต้อง Manual ติดตั้งเอง |
| ซื้อใหม่กับ AsiaGB | ราคาดีกว่า ทีมงานไทยช่วยติดตั้ง ไม่ต้องย้ายไฟล์ข้ามผู้ให้บริการ | ต้องขอ Reissue หรือซื้อใหม่ |
AsiaGB ให้บริการ SSL Certificate หลายระดับ เริ่มต้น 1,000 บาท/ปี สำหรับ DV SSL พร้อมทีมงานภาษาไทย ช่วยติดตั้งบน DirectAdmin ฟรี และ Uptime 99%
ซื้อ SSL Certificate กับ AsiaGB
ทีมงานภาษาไทย ช่วยติดตั้งบน DirectAdmin ฟรี เริ่มต้น 1,000 บาท/ปี · SSD Storage · Uptime 99%
ดูแพ็กเกจ SSL10. FAQ คำถามที่พบบ่อย
ต้องใช้ 3 ส่วนหลัก: (1) Certificate File (.crt) ที่ GoDaddy ออกให้ (2) CA Bundle หรือ Intermediate Certificate และ (3) Private Key (.key) ที่สร้างตอนทำ CSR ซึ่งต้องเก็บไว้เองตั้งแต่ต้น
ไม่ได้ครับ Private Key เป็นส่วนสำคัญที่ขาดไม่ได้ ถ้าหายต้องสร้าง CSR ใหม่และขอ Reissue SSL จาก GoDaddy (ฟรี ยังอยู่ในช่วงอายุ) แล้วดาวน์โหลดและติดตั้งใหม่ทั้งชุด
GoDaddy ส่ง SSL เป็นไฟล์ .crt (PEM format จริงๆ แค่เปลี่ยนนามสกุล) และ bundle.crt ซึ่งใช้กับ DirectAdmin ได้โดยตรงโดยไม่ต้องแปลงรูปแบบ ยกเว้นถ้า Server Type เดิมเป็น IIS จะได้ .pfx ซึ่งต้องแปลงก่อน
มักเกิดจากลืมใส่ CA Bundle (Intermediate Certificate) ทำให้ certificate chain ไม่ครบ แก้โดยนำ CA Bundle มาใส่ในช่อง "CA Root Certificate" ใน DirectAdmin ด้วย แล้ว Restart Apache
ถ้าต้องการความสะดวกและราคาคุ้มค่า แนะนำซื้อใหม่กับ AsiaGB เพราะทีมงานช่วยติดตั้งบน DirectAdmin ฟรี Uptime 99% รองรับภาษาไทย ไม่ต้องย้ายไฟล์ข้ามผู้ให้บริการอีกต่อไป
ได้ครับ แต่ต้องแปลงก่อนด้วย OpenSSL: ดึง Certificate ด้วย openssl pkcs12 -in cert.pfx -nokeys -clcerts -out domain.crt และ Private Key ด้วย openssl pkcs12 -in cert.pfx -nocerts -nodes -out private.key แล้วนำไปติดตั้งบน DirectAdmin ได้เลย
11. สรุป
การย้าย SSL จาก GoDaddy มาติดตั้งบน DirectAdmin ไม่ใช่เรื่องยาก หากเตรียมไฟล์ครบ 3 ส่วน ได้แก่ Certificate (.crt), CA Bundle และ Private Key (.key) ขั้นตอนสำคัญที่ต้องระวัง คือ:
- ต้องวางไฟล์ถูกช่องใน DirectAdmin
- ห้ามลืมใส่ CA Bundle — ไม่งั้น Chain จะไม่ครบ Browser แสดง Warning
- ถ้าได้ .pfx ต้องแปลงด้วย OpenSSL ก่อน
- หลังติดตั้งให้ตรวจสอบด้วย SSL Checker เพื่อยืนยัน Grade และ Chain
สำหรับการต่ออายุครั้งต่อไป แนะนำพิจารณาซื้อ SSL กับ AsiaGB เพื่อความสะดวกในการติดตั้งบน DirectAdmin และรับการสนับสนุนเป็นภาษาไทยตลอด 24 ชั่วโมง