ประเภทของ Spam Filter บน Hosting
Hosting ส่วนใหญ่ที่ใช้ cPanel มักมี Spam Filter ให้เลือก 2 แบบหลัก ได้แก่ SpamAssassin และ Boxtrapper ซึ่งทำงานในลักษณะที่แตกต่างกัน ทำความเข้าใจก่อนเลือกใช้จะช่วยให้ตั้งค่าได้เหมาะสมกับความต้องการมากขึ้น
- SpamAssassin — ระบบที่ประเมินคะแนนความเป็น Spam ของอีเมลแต่ละฉบับ ตรวจสอบหลายร้อยเงื่อนไข เช่น Keyword ที่น่าสงสัย, Header ผิดปกติ, Blacklist IP อีเมลที่ได้คะแนนเกิน Threshold จะถูกแท็กหรือลบทิ้ง
- Boxtrapper — ระบบ Whitelist อัตโนมัติ ผู้ส่งใหม่จะได้รับอีเมล Challenge ให้ยืนยันตัวตนก่อน ป้องกัน Bot Spam ได้ดี แต่อาจสร้างความยุ่งยากสำหรับ Newsletter หรืออีเมล Transactional
ตั้งค่า SpamAssassin ใน cPanel
SpamAssassin เป็นตัวเลือกที่แนะนำสำหรับผู้ใช้ทั่วไป เพราะทำงานอัตโนมัติโดยไม่รบกวนผู้ส่ง ขั้นตอนการเปิดใช้งาน:
- ล็อกอินเข้า cPanel แล้วไปที่หัวข้อ Email
- คลิก Spam Filters (หรือ Apache SpamAssassin)
- คลิก Enable Apache SpamAssassin
- เลือกว่าจะให้ระบบ Auto-Delete Spam หรือเพียงแค่แท็กเมลว่าเป็น Spam
- กำหนด Spam Score Threshold (ค่า Default คือ 5)
ตั้งค่า Score Threshold
Score Threshold คือเกณฑ์คะแนนที่ใช้ตัดสินว่าอีเมลใดเป็น Spam SpamAssassin จะให้คะแนนตั้งแต่ 0 จนถึง 10+ โดย:
- Score 0–4 — อีเมลปกติ ไม่ถูกแตะ
- Score 5–7 — น่าสงสัย แนะนำให้แท็กแต่ไม่ Delete
- Score 8+ — Spam ชัดเจน สามารถ Auto-Delete ได้
แนะนำให้ตั้ง Threshold ที่ 7 สำหรับการใช้งานทั่วไป หากตั้งต่ำเกินไป (เช่น 3) จะมี False Positive มากคืออีเมลดีถูก Block
ตั้งค่า Whitelist และ Blacklist
ใน cPanel → Spam Filters มีตัวเลือก Additional Configurations สำหรับจัดการรายชื่อ:
- Whitelist — อีเมลหรือโดเมนที่ไม่ต้องผ่านการตรวจ Spam เช่น
*@trustedpartner.com - Blacklist — อีเมลหรือโดเมนที่ถูก Block ทันที เช่น
[email protected]
ใช้ Wildcard * เพื่อ Block ทั้งโดเมน: *@spammerdomain.com
สร้าง Email Filter Rules ใน cPanel
นอกจาก SpamAssassin ยังสร้าง Filter Rules เองได้ เพื่อจัดการอีเมลตามเงื่อนไขที่กำหนด:
- ไปที่ cPanel → Email Filters
- เลือก Account แล้วคลิก Manage Filters
- คลิก Create a New Filter
- กำหนดเงื่อนไข เช่น Subject Contains "ซื้อ" หรือ From Contains "baddomain"
- กำหนด Action เช่น Discard, Move to Folder หรือ Redirect ไปอีเมลอื่น
ตรวจสอบ Spam Score ด้วย mail-tester
ก่อนส่งอีเมลสำคัญออกไป ควรทดสอบ Spam Score ก่อน โดยไปที่ mail-tester.com คัดลอก Email Address ที่ระบบให้ แล้วส่งอีเมลไปยังที่อยู่นั้น ระบบจะแสดงคะแนน 0–10 และรายละเอียดปัญหาต่างๆ เช่น SPF ไม่ถูก, เนื้อหาเป็น Spam, Link ผิดปกติ
ตรวจสอบว่า Spam Filter ทำงานถูกต้อง
# ดู Header ของอีเมลที่รับมา ว่ามี SpamAssassin แท็กหรือไม่
# (ดูใน Webmail > Show Source หรือ View Full Header)
X-Spam-Status: Yes, score=8.3 required=5.0
X-Spam-Flag: YES
# ตรวจสอบ Spam Score ผ่าน SpamAssassin command line (หาก SSH ได้)
spamassassin -t < test-email.eml
# ดู SpamAssassin Log บน Server
tail -100 /var/log/maillog | grep -i spam
X-Spam-Status: Yes ให้ดูค่า score แล้วเพิ่ม Sender เข้า Whitelist หรือปรับ Threshold ขึ้นเล็กน้อยแก้ปัญหาที่พบบ่อย
Error: อีเมลสำคัญถูก Auto-Delete ทิ้งไม่มีร่องรอย
เกิดเมื่อเปิด Auto-Delete แล้ว Score Threshold ต่ำเกินไป แนะนำให้ปิด Auto-Delete แล้วเปลี่ยนเป็น Move to Spam Folder แทน และตรวจสอบ Folder Spam อย่างน้อยสัปดาห์ละครั้ง
Error: อีเมล Newsletter ของเราถูกแท็กเป็น Spam
ตรวจสอบว่าตั้ง SPF, DKIM ครบหรือยัง เนื้อหาอีเมลมี Spam Keyword มากเกินไป (เช่น "ฟรี", "รีบด่วน", "ราคาพิเศษ") หรือใช้รูปมากกว่าข้อความมาก แก้โดยปรับ Content Ratio และใช้ mail-tester.com ทดสอบก่อนส่งจริง
Error: Boxtrapper ทำให้ระบบส่ง Confirmation Email ไม่หยุด
เกิดเมื่อ Boxtrapper ส่ง Challenge ไปยังที่อยู่ที่เป็น No-Reply หรือ Auto-Responder ทำให้เกิด Mail Loop แก้โดยเพิ่ม Whitelist สำหรับ Service Email ทั้งหมด หรือพิจารณาปิด Boxtrapper แล้วใช้ SpamAssassin อย่างเดียว
Error: ไม่สามารถรับอีเมลจาก Google/Microsoft ได้
ตรวจสอบ Blacklist ว่ามีรายการที่ Block IP ของ Google หรือ Microsoft อยู่หรือไม่ บางครั้ง IP Range กว้างเกินไปจากการตั้ง Blacklist อย่างหยาบ ให้ลบ Rule ที่เกี่ยวข้องออก
คำถามที่พบบ่อย
SpamAssassin กับ Boxtrapper ต่างกันอย่างไร ควรเปิดทั้งคู่ไหม?
SpamAssassin ทำงานโดยให้คะแนนอีเมลอัตโนมัติ ส่วน Boxtrapper ต้องให้ผู้ส่งยืนยันตัวตน สามารถเปิดทั้งคู่พร้อมกันได้ แต่โดยทั่วไปแนะนำให้ใช้เพียงแค่ SpamAssassin เพราะไม่ส่งผลกระทบต่อผู้ส่งที่ถูกต้อง Boxtrapper เหมาะกับกล่องที่โดน Spam อย่างหนักจริงๆ เท่านั้น
จะรู้ได้อย่างไรว่าอีเมลถูก Block หรือตก Spam?
ให้ผู้รับตรวจ Spam/Junk Folder ก่อน ถ้าไม่พบเลยอาจถูก Block ที่ Server ผู้ส่งสามารถดู Bounce Message หรือตรวจสอบ Mail Log บน Hosting เพื่อหาสาเหตุ
Spam Filter ใช้ทรัพยากร Server มากไหม?
SpamAssassin ใช้ CPU และ RAM ในการตรวจสอบ แต่บน Shared Hosting ทั่วไปจะถูกจัดการให้อยู่ในระดับที่เหมาะสม ถ้าเซิร์ฟเวอร์ช้าผิดปกติหลังเปิด SpamAssassin ให้แจ้ง Support เพื่อตรวจสอบ