
SPAM Filters ใน DirectAdmin ช่วยให้คุณสร้างกฎกรองอีเมลแบบกำหนดเองโดยใช้เงื่อนไขต่างๆ เช่น ชื่อผู้ส่ง หัวข้ออีเมล หรือเนื้อหาข้อความ
ทำความเข้าใจ Spam Filter ระดับต่างๆ ใน DirectAdmin
DirectAdmin มีระบบกรอง Spam หลายระดับที่ทำงานร่วมกัน แต่ละระดับมีจุดแข็งต่างกัน การเข้าใจโครงสร้างนี้จะช่วยให้คุณตั้งค่าได้ตรงจุดมากขึ้น
ระดับที่ 1 — Header Filter
Header Filter ตรวจสอบ Email Header เช่น From:, To:, Reply-To:, Subject: และ X-Mailer: ก่อนที่ระบบจะอ่านเนื้อหา ข้อดีคือประมวลผลเร็วมาก เนื่องจาก Header มีขนาดเล็กกว่า Body มาก ตัวอย่างการใช้งาน:
- บล็อกอีเมลจาก domain เฉพาะ เช่น
From: @spammerdomain.com - บล็อกอีเมลที่ Subject มีคำว่า "FREE", "WIN", "URGENT LOAN"
- ตรวจจับอีเมลที่ Reply-To ต่างจาก From (สัญญาณ Phishing)
ระดับที่ 2 — Body Filter
Body Filter สแกนเนื้อหาข้อความทั้งหมดรวมถึง HTML ของอีเมล ใช้สำหรับจับ Spam ที่ซ่อนข้อความไว้ในเนื้อหาหรือใช้คำที่ไม่ผิดปกติใน Subject แต่มีลิงก์หรือข้อความน่าสงสัยใน Body เช่น:
- Body มีลิงก์ที่ชี้ไป domain ที่น่าสงสัย
- Body มีคำว่า "click here to unsubscribe" พร้อมลิงก์ไปยัง domain ไม่รู้จัก
- Body มีรหัสผ่านหรือข้อมูลส่วนบุคคลที่ไม่ควรอยู่ในอีเมลทั่วไป
ระดับที่ 3 — Blacklist และ Whitelist
Blacklist คือรายชื่อ Email Address หรือ Domain ที่ต้องการบล็อกทุกกรณี โดยไม่ต้องตรวจ Header หรือ Body ส่วน Whitelist คือรายชื่อที่อนุญาตทุกกรณี แม้ SpamAssassin จะตัดสินว่าเป็น Spam ก็ตาม ควรใส่ Whitelist สำหรับ:
- ที่อยู่อีเมลของลูกค้าสำคัญหรือพาร์ทเนอร์ธุรกิจ
- ระบบอัตโนมัติ เช่น newsletter ที่คุณสมัครสมาชิกไว้
- Domain ของธนาคารหรือสถาบันการเงินที่ส่งอีเมลแจ้งเตือน
ระดับที่ 4 — SpamAssassin Score
SpamAssassin ทำงานในอีกชั้นหนึ่งโดยรับอีเมลที่ผ่าน Filter ข้างต้นมาแล้ว แล้ววิเคราะห์ด้วย Machine Learning และ Bayesian Statistics ให้ Spam Score ตั้งแต่ 0-20 อีเมลที่ได้ Score สูงกว่า Threshold จะถูกทำเครื่องหมายหรือลบตามที่ตั้งค่าไว้
วิธีสร้าง SPAM Filter Rule
- ไปที่ E-mail Manager แล้วคลิก SPAM Filters
- คลิก Add Filter
- เลือก Field ที่จะตรวจ เช่น
Subject,From,Body - เลือก Type: contains, begins with, ends with, is exactly
- ใส่ Value เช่น
Click here to win - เลือก Action: Delete, Move to folder, Add header
- คลิก Add
ตัวอย่าง Filter Rules ที่มีประโยชน์
- Subject contains
FREE MONEY→ Delete - From ends with
@suspiciousdomain.com→ Delete - Body contains
unsubscribe→ Move to Junk folder
การสร้าง Custom Spam Filter Rule แบบ Advanced
นอกจากกฎพื้นฐานที่กล่าวไปแล้ว DirectAdmin ยังรองรับการสร้างกฎที่ซับซ้อนมากขึ้นสำหรับกรณีพิเศษ
Keyword Filter — กรองตามคำสำคัญ
ใช้เมื่อ Spam ที่คุณได้รับมักมีคำซ้ำๆ ใน Subject หรือ Body เช่น "buy now", "limited time", "act immediately" วิธีตั้งค่า:
- ไปที่ SPAM Filters → Add Filter
- เลือก Field เป็น Subject หรือ Body
- เลือก Match Type เป็น contains
- ใส่คำที่ต้องการกรอง เช่น
buy now limited - ตั้ง Action เป็น Move to Spam folder
Sender Blacklist — บล็อก Domain ทั้งหมด
ถ้า Spam มาจาก domain เดิมซ้ำๆ ให้บล็อกทั้ง domain แทนการบล็อกทีละ address:
- ไปที่ Block List
- ใส่ Domain ในรูปแบบ
@spambaddomain.com - การใส่
@นำหน้าจะบล็อกทุก address จาก domain นั้น
Regex Pattern — กรองแบบ Pattern ซับซ้อน
สำหรับผู้ใช้ขั้นสูง DirectAdmin รองรับ Regular Expression (Regex) ในการตั้ง Filter ซึ่งช่วยจับ Spam ที่มีรูปแบบหลากหลาย เช่น:
\b(win|winner|lottery|prize|jackpot)\b— จับคำเกี่ยวกับรางวัล\b(click here|click now|act now|urgent)\b— จับ Call-to-Action ของ Spam[A-Z]{5,}ใน Subject — จับ Subject ที่เขียนพิมพ์ใหญ่ทั้งหมด (สัญญาณ Spam)
ก่อนใช้ Regex ให้ทดสอบ Pattern ด้วย Tool เช่น regex101.com ก่อนเสมอ เพราะ Pattern ที่กว้างเกินไปอาจบล็อกอีเมลจริง
การปรับ Spam Score และ Threshold ให้เหมาะสม
การตั้ง SpamAssassin Score ที่เหมาะสมช่วยลด False Positive (อีเมลจริงถูกมองว่า Spam) ได้อย่างมาก
ความหมายของ Spam Score
- Score 0-4: อีเมลปกติ ไม่ควรกรองออก
- Score 5-7: น่าสงสัย อาจเป็น Spam ควร flag หรือ move to folder
- Score 8-10: มีแนวโน้มสูงที่จะเป็น Spam
- Score 11 ขึ้นไป: Spam ชัดเจน สามารถ auto-delete ได้
ค่าแนะนำสำหรับผู้ใช้ทั่วไป
ในช่วงแรกที่เปิดใช้ SpamAssassin ให้ตั้ง Threshold ไว้สูงก่อน เช่น 8-10 แล้วค่อยลดลงเมื่อมั่นใจว่าไม่มี False Positive:
- Tag Spam ที่ Score ≥ 5 โดยเพิ่ม header
X-Spam-Flag: YES - Move to Spam folder ที่ Score ≥ 7
- Auto-delete ที่ Score ≥ 10 เท่านั้น (เมื่อมั่นใจในการตั้งค่าแล้ว)
ลด False Positive ด้วย Whitelist
ถ้าอีเมลสำคัญถูก SpamAssassin ตัดสินผิดเป็นประจำ ให้เพิ่ม address หรือ domain นั้นเข้า Whitelist ใน DirectAdmin เพื่อให้ผ่านการกรองทุกกรณี ตัวอย่างที่ควรอยู่ใน Whitelist:
- อีเมลจากผู้ให้บริการชำระเงิน เช่น payment notification
- อีเมลจากระบบ booking หรือ e-commerce ที่คุณใช้งาน
- อีเมลจาก newsletter ที่สมัครไว้จริง
การดู Spam Log และ Quarantine เพื่อกู้คืนอีเมล
เมื่อตั้ง Spam Filter และ SpamAssassin แล้ว สิ่งสำคัญที่ต้องทำคือตรวจสอบ Spam Log เป็นระยะเพื่อให้แน่ใจว่าไม่มีอีเมลสำคัญถูกบล็อกผิดพลาด
ตรวจสอบ Spam Folder ใน Webmail
อีเมลที่ถูก Filter ตั้งไว้แบบ "Move to Folder" จะไปอยู่ใน folder Spam หรือ Junk ใน Webmail (Roundcube หรือ SquirrelMail) วิธีตรวจสอบ:
- เข้า Webmail ที่
https://yourdomain.com/webmailหรือmail.yourdomain.com - คลิกที่ folder Spam หรือ Junk ในแถบด้านซ้าย
- ตรวจสอบรายการอีเมลว่ามีอีเมลจริงปนอยู่หรือไม่
- ถ้าพบอีเมลจริงที่ถูกกรองผิดพลาด ให้คลิกขวาแล้วเลือก Move to Inbox หรือ Not Spam
ดู Mail Log ผ่าน DirectAdmin
สำหรับ System Administrator ที่มี admin access สามารถดู Mail Log โดยตรงใน DirectAdmin ได้:
- ไปที่ System Info & Files → View Logs
- เลือก Mail Logs (exim_mainlog หรือ maillog)
- ค้นหาชื่อผู้ส่งหรือ Subject ที่สงสัยว่าหายไป
- ดูว่า Filter กฎไหน Trigger ทำให้อีเมลถูก block หรือ redirect
ปรับ Filter หลังตรวจสอบ
ถ้าพบว่า Filter Rule ใดทำให้เกิด False Positive บ่อย ให้แก้ไขกฎนั้น เช่น:
- ทำให้ Keyword เฉพาะเจาะจงขึ้น เช่น เปลี่ยนจาก
freeเป็นfree money no investment - เปลี่ยน Match Type จาก
containsเป็นis exactlyเพื่อลด false match - เพิ่ม address ของผู้ส่งที่ถูก block ผิดลงใน Whitelist
ความแตกต่างระหว่าง SPAM Filters และ SpamAssassin
- SpamAssassin — กรองโดยใช้ AI วิเคราะห์หลายปัจจัย ตั้งค่าเป็น Score
- SPAM Filters — กฎที่คุณสร้างเอง แม่นยำกับ Spam รูปแบบเฉพาะที่คุณรู้จัก
แนวทางการบำรุงรักษาและอัพเดต Filter Rules
Spam ไม่ได้คงรูปแบบเดิมตลอดไป Spammer อัพเดตกลยุทธ์อยู่เสมอเพื่อหลบเลี่ยง Filter การบำรุงรักษา Rules เป็นประจำจึงเป็นสิ่งสำคัญ
ตรวจสอบ Filter Rules ทุกเดือน
อย่างน้อยเดือนละครั้งให้เข้าไปตรวจสอบรายการ Filter Rules ทั้งหมดในระบบ:
- ลบ Rule ที่ไม่ได้ Trigger มานานกว่า 3 เดือนแล้ว อาจเป็น Spam รูปแบบเก่าที่หยุดส่งมาแล้ว
- ตรวจสอบว่า Rule ที่มีอยู่ยังทำงานถูกต้องหรือไม่ โดยดูจาก Spam ที่หลุดเข้า inbox มา
- เพิ่ม Rule ใหม่สำหรับ Spam รูปแบบที่เพิ่งพบในเดือนที่ผ่านมา
บันทึก Rules ไว้ในไฟล์สำรอง
DirectAdmin ไม่ได้มีฟีเจอร์ Export/Import Filter Rules ในตัว แนะนำให้บันทึก Rules ที่ตั้งไว้ทั้งหมดลงในไฟล์ข้อความหรือเอกสาร เพื่อให้สามารถตั้งค่าใหม่ได้อย่างรวดเร็วหากต้องย้ายไปยัง Server ใหม่หรือสร้าง Account ใหม่
ทดสอบก่อน Deploy ใน Production
ก่อนเพิ่ม Rule ใหม่ที่ใช้ Keyword กว้างๆ ควรทดสอบโดยตั้ง Action เป็น "Move to Folder" ก่อน เฝ้าดู 3-7 วัน ถ้าไม่มี False Positive ค่อยเปลี่ยนเป็น "Delete" หรือ Rule ที่เข้มงวดกว่า
แนะนำ: ใช้ทั้งสองร่วมกัน SpamAssassin จัดการ Spam ทั่วไป ส่วน SPAM Filters จัดการ Spam เฉพาะที่ SpamAssassin พลาด
ต้องการ Hosting ที่ปลอดภัยจาก Spam?
AsiaGB Hosting รองรับ SpamAssassin และ SPAM Filters ครบในทุกแพ็กเกจ ราคาเริ่มต้น 149 บ./เดือน
ดูแพ็กเกจ Hosting