
DKIM (DomainKeys Identified Mail) เป็นหนึ่งในเครื่องมือสำคัญที่สุดในการทำให้เมลของคุณถึง Inbox ตามที่วัตถุประสงค์ ถ้าตั้งค่า SPF เพียงอย่างเดียวและปล่อยไว้ DKIM ที่ไม่มี เมลของคุณจะมีความเสี่ยงสูงที่จะตกเข้า Spam Folder โดยไม่ว่าจะตั้งค่า SPF ให้ถูกต้องเพียงใด บน AsiaGB Hosting ตั้งค่า DKIM นั้นง่ายมาก — เพียงคลิกเปิด 1 สวิตช์ใน DirectAdmin แล้วเสร็จสิ้น บทความนี้จะแสดงให้เห็นแต่ละขั้นตอนอย่างละเอียด
2024-2026: Google และ Yahoo บังคับใช้ DKIM สำหรับผู้ส่ง 5,000+ เมล/วัน — หากไม่มี DKIM ร่วมกับ SPF และ DMARC เมลของคุณจะถูก Reject หรือตก Spam โดยอัตโนมัติ ไม่มีข้อยกเว้น
DKIM คืออะไร และเหตุใดจึงสำคัญ
DKIM คือลายเซ็นดิจิทัลสำหรับเมล โดยหลักการทำงาน DKIM จะใช้ Private Key เซ็นทีละเมลที่ส่งออก และเผยแพร่ Public Key ไว้ใน DNS Record เมื่อผู้รับเมล (Gmail, Yahoo ฯลฯ) ได้รับเมลจากคุณ ระบบจะใช้ Public Key ตรวจสอบว่าเมลจริง ๆ มาจากเซิร์ฟเวอร์ของคุณและเนื้อหาไม่ถูกแก้ไขระหว่างทาง
โดยพูดง่าย ๆ หากไม่มี DKIM มีแต่ SPF เท่านั้น ผู้โจมตียังสามารถ \"เอียง\" ระบบได้โดยการปลอมแปลง From address ให้ดูเหมือนมาจากเซิร์ฟเวอร์ที่ได้รับอนุญาต แต่เนื้อหาสามารถเป็นอะไรก็ได้ DKIM จะหยุด attack ประเภทนี้ได้เพราะมันตรวจสอบว่าเนื้อหาเมลถูกลงนามจริง ๆ โดยเซิร์ฟเวอร์ของคุณ
สถิติ 2026: เมลที่มี DKIM ผ่านการยืนยันมีแนวโน้มที่จะถึง Inbox ได้ 90% มากกว่าเมลที่ไม่มี DKIM ถึงแม้ว่า SPF จะผ่านก็ตาม
DKIM กับ SPF กับ DMARC ต่างกันอย่างไร
เมื่อพูดเรื่องการรักษา Email Deliverability มักพูดว่า \"SPF, DKIM, DMARC\" ไปเรียงกัน แต่จริง ๆ แล้วมันคือสามสิ่งคนละอย่าง บทบาทของแต่ละตัว:
- SPF (Sender Policy Framework): บอกว่า \"IP เหล่านี้ได้รับอนุญาตให้ส่งเมลในนาม Domain ของฉัน\" ถ้า IP ที่ส่งไม่อยู่ใน SPF record ระบบจะปฏิเสธหรือจัดเข้า Spam
- DKIM (DomainKeys Identified Mail): ลงนามดิจิทัลเมล เพื่อพิสูจน์ว่าเนื้อหาไม่ถูกแก้ไขและมาจากเซิร์ฟเวอร์ที่ถูกต้องจริง ๆ
- DMARC (Domain-based Message Authentication): เป็นชั้นบนสุด บอก Email Provider ว่าจะทำอะไรกับเมลที่ Fail SPF หรือ DKIM และขอให้ส่ง Report กลับมา
ทั้ง 3 ตัวทำงานร่วมกัน SPF และ DKIM คือการ \"พิสูจน์ตัว\" DMARC คือการ \"กำหนดนโยบาย\" เพื่อบอก Provider ว่าจะทำอะไรเมื่อพิสูจน์ไม่ผ่าน
เตรียมตัวก่อนตั้งค่า DKIM
ก่อนจะเข้า DirectAdmin ให้เตรียมข้อมูลต่อไปนี้ให้พร้อม:
- ชื่อ Domain ที่จะตั้งค่า: เช่น example.com หรือ company.co.th ต้องเป็นชื่อที่เมลถูกส่งออกมา
- Email Account ที่จะใช้: ควรเป็น Email ที่เป็น Default สำหรับ Domain นั้น เช่น [email protected]
- Selector (ตัวเลือก): DirectAdmin มักใช้ \"default\" หรือ \"mail\" เป็น selector แต่คุณสามารถเปลี่ยนได้
ขั้นตอน 1: เข้า DirectAdmin Control Panel
ประการแรก ให้ล็อกเข้า DirectAdmin ของคุณ:
- ไปที่ URL ของ DirectAdmin (ปกติจะเป็น https://your-domain.com:2222 หรือ https://your-ip:2222)
- ใส่ Username (ปกติเป็น admin หรือชื่อ account ของคุณ) และ Password
- กด \"Login\"
เมื่อเข้าสู่ DirectAdmin แล้ว ให้หาเมนู \"Email Management\" หรือ \"Mail\" ในหน้าแรก ในส่วนใหญ่ของ DirectAdmin เมนูนี้จะอยู่ด้านข้าง
ขั้นตอน 2: เลือก Domain และเปิด Email Manager
คลิกไปยัง \"Email Management\" หรือ \"Mail Manager\" DirectAdmin จะแสดง Domain ทั้งหมดที่ hosting อยู่บนบัญชีนี้
- หาชื่อ Domain ที่จะตั้งค่า DKIM (เช่น example.com)
- คลิกที่ชื่อ Domain นั้น
DirectAdmin จะแสดงตัวเลือก Email Manager สำหรับ Domain นั้น ๆ คุณจะเห็น Section ที่เกี่ยวกับ Email Accounts ต่าง ๆ และที่สำคัญที่สุด — สวิตช์ \"DKIM\" หรือ \"Enable DKIM\"
ขั้นตอน 3: เปิดใช้งาน DKIM
ตรวจหา Toggle หรือ Checkbox สำหรับ \"Enable DKIM\" หรืออาจมีปุ่ม \"Create DKIM\" ซึ่งมีสองวิธี:
- ถ้ามี Toggle: คลิกเปิด Toggle และ DirectAdmin จะสร้าง DKIM key อัตโนมัติ
- ถ้ามี \"Create DKIM\" button: คลิกปุ่มนั้น DirectAdmin จะสร้าง Private และ Public key ให้
หลังจากคลิก DirectAdmin จะแสดง Public Key ให้ดู โปรดอย่าหลีกจากหน้านี้ยัง เพราะคุณต้องใช้เนื้อหาของ Public Key ในขั้นตอนถัดไป
ขั้นตอน 4: คัดลอก DKIM Public Key และสร้าง DNS Record
DirectAdmin จะแสดง DKIM Public Key ในรูปแบบดังนี้:
v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC...
คัดลอก Public Key ทั้งหมด (รวม \"v=DKIM1\" และทุกอย่าง) แล้วนำไปสร้าง TXT Record ใน DNS ของคุณ:
- ชื่อ Record (Name): default._domainkey.example.com (แทน \"default\" ด้วย selector ที่คุณเลือก)
- ชนิด Record (Type): TXT
- ค่า (Value): v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb3... (ค่าทั้งหมดจากขั้นตอนที่แล้ว)
ถ้า Domain นั้นใช้ DNS บริหารจาก DirectAdmin เอง ให้เข้าไป DNS Management ของ DirectAdmin แล้วเพิ่ม Record นั้นเข้าไป ถ้าใช้ DNS ที่นอก (เช่น Cloudflare หรือ Google Domains) ให้เข้าไป Control Panel ของเจ้านั้นแล้วเพิ่ม Record ด้วยข้อมูลเดียวกัน
ระวัง: ห้ามแก้ไขหรือลบ DKIM key หลังจากสร้าง Private key นั้นเก็บไว้บนเซิร์ฟเวอร์ของ AsiaGB แล้ว ถ้าลบ จะต้องสร้างใหม่ และ DNS record ที่คุณเพิ่มเข้าไปจะเสียหลายวัน ทำให้เมลตกสแปมทุกฉบับจนกว่า DNS จะ update ครบ
ขั้นตอน 5: รอ DNS Update และตรวจสอบ
หลังจากเพิ่ม DKIM Record ลงใน DNS แล้ว ปกติต้องรอ 24-48 ชั่วโมงจนกว่า DNS จะ Propagate ไปทั่วโลก แต่ส่วนใหญ่ของเวลาจะ Update ได้ภายใน 2-4 ชั่วโมง ตรวจสอบว่า DKIM Record ถูกต้องโดยใช้เครื่องมือ MXToolbox หรือ DiagnosticTool ของ Cloudflare
- ไปที่ MXToolbox.com
- เลือก \"DKIM Lookup\"
- ใส่ \"default._domainkey.example.com\" (แทน example.com ด้วยชื่อ Domain ของคุณ)
- กด \"MX Lookup\" MXToolbox จะแสดงว่า DKIM Record ถูกต้องหรือไม่
ขั้นตอน 6: ทดสอบ DKIM ด้วย Mail-Tester
หลังจากตรวจสอบใน MXToolbox แล้ว ขั้นตอนสุดท้ายคือ ทดสอบการส่งเมลจริง เพื่อให้แน่ใจว่า DKIM Signature ผ่านการยืนยัน:
- ไปที่ Mail-Tester.com
- Mail-Tester จะให้ Email Address ชั่วคราว (ปกติจะเป็นแบบ [email protected])
- ส่งเมลทดสอบจาก Email Account ของคุณไปยัง Address นั้น
- กลับไป Mail-Tester และกด \"Then Check Your Score\"
- Mail-Tester จะให้คะแนน 10 ขั้น พร้อมรายงานว่า DKIM ผ่านหรือไม่
ถ้า DKIM ผ่าน คุณจะเห็น \"DKIM: PASS\" ในรายงาน ถ้าผ่านไม่ได้ Mail-Tester จะบอกสาเหตุ เช่น DKIM record ยังไม่ถูกต้องหรือ DNS ยังไม่ update
ตั้งค่า SPF และ DMARC ให้เสร็จสิ้น
DKIM เพียงอย่างเดียวไม่พอ คุณต้องตั้งค่า SPF และ DMARC ด้วยเพื่อให้ Email Deliverability สูงสุด บน AsiaGB ตั้งค่า SPF ทำได้ง่าย ๆ
SPF Record
เพิ่ม SPF Record พื้นฐานไว้ใน DNS:
v=spf1 a mx ~all
ถ้าใช้บริการอื่นส่งเมลด้วย (เช่น Mailchimp หรือ Google Workspace) ให้เพิ่ม include directive:
v=spf1 a mx include:sendgrid.net ~all
DMARC Record
เพิ่ม DMARC Record พื้นฐาน:
v=DMARC1; p=quarantine; rua=mailto:[email protected]
Record นี้จะบอก Email Provider ให้จัด Email ที่ Fail SPF/DKIM เข้า Quarantine และส่ง Report ไปยัง [email protected] ทุกวัน
เคล็ดลับเพิ่มเติมเพื่อ Email Deliverability ที่ดี
- ลบ Email ที่ Hard Bounce ออก: Email ที่ \"ไม่มีอยู่จริง\" ควรลบออก ทะลัก soft bounce (ชั่วคราว) ได้ แต่ hard bounce ต้องลบ
- รักษา Complaint Rate ต่ำ: ควรต่ำกว่า 0.1% เสมอ ปัญหา: Email ที่คนอื่นเซ็นคำขออนุญาตแล้ว อย่าส่งเมลจำนวนมาก ไม่เช่นนั้น Complaint Rate จะสูงขึ้น
- ส่งเข้า Spam Trap: เมลทดสอบ ห้ามจริง ๆ ส่งไปยัง Email ที่ยาว ไปยังข้อมูลที่หมดอายุ ไม่อัพเดท
- ตรวจ IP Reputation: ใช้ MXToolbox เพื่อตรวจว่า IP ของคุณติด Blacklist หรือเปล่า ถ้าติด ให้ติดต่อ Support จากบริษัทโฮสติ้ง
ปัญหาทั่วไปและวิธีแก้
ปัญหา: DKIM record ยังไม่ update แม้ว่าผ่าน 24 ชั่วโมงแล้ว
วิธีแก้: ตรวจสอบว่า DNS Propagation เสร็จแล้วหรือเปล่า ใช้ Propagation Checker ที่ mxtoolbox.com หรือ whatsmydns.net ถ้ายังไม่เสร็จ อีก 24 ชั่วโมง ถ้าผ่าน 48 ชั่วโมง แล้วยังไม่เสร็จ โทรติดต่อ Support
ปัญหา: Mail-Tester บอก DKIM Fail
วิธีแก้: ตรวจสอบว่า DKIM Public Key ถูกต้องหรือเปล่า ข้อมูลทั่วไป: p= value สำหรับ 2048-bit key จะมีความยาวประมาณ 380–420 ตัวอักษร ถ้าสั้นกว่านั้นมาก ให้ตรวจสอบว่าคัดลอกมาครบหรือเปล่า ถ้ามั่นใจว่าถูกต้อง รอ DNS update 24 ชั่วโมง แล้วลองใหม่
ปัญหา: เมลยังตกสแปมแม้ว่า DKIM ผ่านแล้ว
วิธีแก้: เพราะ DKIM เพียงอย่างเดียวไม่พอ ตั้งค่า SPF และ DMARC ด้วย นอกจากนี้ ตรวจ IP Reputation, Domain Reputation, Complaint Rate, Bounce Rate จากการใช้บริหารเมล
Email Hosting บน Domain ของคุณ พร้อม DKIM และ DirectAdmin
ตั้งค่า DKIM ได้ง่ายๆ บน DirectAdmin ของ AsiaGB Hosting รองรับ Email จำนวนไม่จำกัด Business Email มืออาชีพ เริ่มต้นเพียง 500 บาท/ปี
ดูแพ็กเกจ Hosting →