เทคนิคการคอนฟิก Postfix ให้ Reject SPAM mail

โปรแกรมบน CentOS ที่ควรติดตั้งใช้งานร่วมกับ VoIP Server

เทคนิคการคอนฟิก Postfix ให้ Reject SPAM mail

โพสต์โดย nuiz » 22 ม.ค. 2012 15:02

บทความต่อไปนี้ผมจะแนะนำวิธีการคอนฟิก Postfix Mail Server ให้ Reject SPAM Mail ครับ ซึ่งทำได้ง่ายๆเลยโดยไม่ต้องจ่ายเงินค่าบริการกำจัด SPAM Mail เลยสักบาท

*** เขียนด้วยประสบการ์ตรงครับ เทสแล้วว่าเวอร์คชัวร์ และตอนนี้ผมก็ใช้คอนฟิกแบบนี้อยู่ ไม่มี SPAM mail เข้ามาเลย ***

เทคนิคการกำจัด SPAM Mail ที่ว่านี้ก็คือ คอนฟิกสั่ง Postfix ว่าถ้ามีอีเมล์เข้ามา ให้มันเอาอีเมล์นั้นไปเช็คกับ SPAM Database ถ้าปรากฏว่าเป็น SPAM mail มันก็จะ Reject ทิ้ง

ผมขออธิบายเงื่อนไขการใช้งานสักเล็กน้อยครับ เพื่อให้เข้าใจการทำงานมากขึ้น

1. เราสามารถคอนฟิกได้ว่าให้ Postfix ส่งเมล์ไปเช็คก็ต่อเมื่อส่งมาจากแหล่ง (IP) ที่ไม่ได้อยู่ในลิสต์ไอพีหรือโดเมนที่เรากำหนดไว้ ดังนั้นก็ไม่ต้องเป็นห่วงครับว่าอีเมล์ภายในจะถูกส่งไปเช็คด้วย
2. SPAM database ได้ถูกรับรองจากหน่วยงานทั่วโลกแล้วว่าเก็บข้อมูล SPAM ที่ถูกต้องไว้ ไม่ต้องกลัวว่าจะเป็นอันตราย หน่วยงานขนาดใหญ่ๆอย่าง Hotmail, Yahoo ยังใช้เลยครับ แล้วทำไมเราถึงจะไม่ใช้
3. SPAM database มีเป็นสิบๆเซอร์เวอร์ทั่วโลก แบ่งอยู่ในโซนต่างๆ มีหลายองค์กรเป็นเจ้าของ จึงไม่ต้องห่วงว่าเซอร์เวอร์จะดาวน์
4. ไม่ต้องห่วงว่าอีเมล์ในองค์กรณ์จะถูกเช็คด้วย เพราะเราคอนฟิก Postfix ได้ว่าถ้าเป็นการส่งระหว่างอีเมล์ในองค์กร (โดเมนที่เราเป็นเจ้าของ) ก็ไม่ต้องส่งไปเช็ค
5. ปัจจุบันผมคิดว่าทุกองค์กรต่างก็ใช้บริการเช็ค SPAM แบบนี้กันหมดแล้ว (ยกเว้นหน่วยงานที่แอดมินยังไม่รู้เรื่อง 55+) ดังนั้นเวลาเราส่งอีเมล์ไปหาโดเมนอื่น อีเมล์เราก็คงจะถูกส่งไปเช็ค SPAM ด้วยเช่นเดียวกัน
6. เวลาถูกส่งไปเช็ค SPAM มันเช็คอะไรตรงไหนถึงรู้ว่าเป็น SPAM ผมก็ยังไม่รู้ครับ ถ้ามีโอกาสจะเอามาเขียนให้อ่านเล่นๆ
7. อีเมล์จะมีความปลอดภัยหรือไม่ จะถูกแอบเปิดอ่านหรือไม่ อันนี้ผมก็ไม่รู้อีกเหมือนกันครับ แต่เชื่อมั๊ยว่าทุกวันนี้ข้อมูลที่วิ่งอยู่ในเน็ตต่างก็มีหน่วยงานที่คอยเช็คอยู่ตลอดเวลาเลยครับ ยิ่งอีเมล์นี้ไม่ต้องห่วงเลย ถ้าจะให้ปลอดภัยจริงๆก็ต้องเข้ารหัสก่อนส่ง ถึงจะป้องกันไม่ได้ 100% ก็จริง แต่ก็ดีกว่าส่งข้อมูลความลับแบบไปโดยไม่มีการเข้ารหัส

มาเริ่มคอนฟิก Postfix กันเลยดีกว่าครับ

1. แก้ไขไฟล์ /etc/postfix/main.cf

ให้เพิ่มบรรทัดนี้เข้าไป

โค้ด: เลือกทั้งหมด
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated,
                               reject_rbl_client bl.spamcop.net,
                               reject_rbl_client sbl-xbl.spamhaus.org,
                               reject_rbl_client rbl.mail-abuse.org,
                               reject_rbl_client spamsources.fabel.dk,
                               reject_invalid_hostname,
                               reject_non_fqdn_sender,
                               reject_non_fqdn_recipient,
                               reject_unknown_sender_domain,
                               reject_unknown_recipient_domain,
                               reject_unauth_destination,
                               permit


ต้องชัวร์นะครับว่ามีบรรทัด smtpd_recipient_restrictions แค่บรรทัดเดียว ถ้ามีของเดิมแล้วและยังไม่ได้คอนฟิกแก้ไข ให้ใส่ # ไว้หน้าบรรทัด

2. พิมพ์คำสั่งนี้
โค้ด: เลือกทั้งหมด
postmap /etc/postfix/main.cf
postfix reload


3. ทดสอบโดยการมอนิเตอร์ไฟล์ /etc/log/maillog
โค้ด: เลือกทั้งหมด
tail -f /var/log/maillog


อีเมล์ที่ถูก Reject

Jan 22 15:13:29 mail postfix/smtpd[8992]: connect from unknown[60.190.223.68]
Jan 22 15:13:31 mail postfix/smtpd[8992]: NOQUEUE: reject: RCPT from unknown[60.190.223.68]: 554 5.7.1 Service unavailable; Client host [60.190.223.68] blocked using sbl-xbl.spamhaus.org; http://www.spamhaus.org/query/bl?ip=60.190.223.68 / http://www.spamhaus.org/SBL/sbl.lasso?query=SBL104179 / http://www.spamhaus.org/SBL/sbl.lasso?query=SBL120388; from=<admin@advertise-bz.cn> to=<info@buyasteriskcard.com> proto=SMTP helo=<advertise-bz.cn>
Jan 22 15:13:34 mail postfix/smtpd[8992]: lost connection after RCPT from unknown[60.190.223.68]
Jan 22 15:13:34 mail postfix/smtpd[8992]: disconnect from unknown[60.190.223.68]

อีเมล์ที่ไม่ถูก Reject

Jan 22 13:22:05 mail postfix/smtpd[8450]: connect from bay0-omc1-s4.bay0.hotmail.com[65.54.190.15]
Jan 22 13:22:07 mail postfix/smtpd[8450]: 5A3BB564072: client=bay0-omc1-s4.bay0.hotmail.com[65.54.190.15]
Jan 22 13:22:07 mail postfix/cleanup[8453]: 5A3BB564072: message-id=<BAY150-W24B816FA74060340FE2FB59A850@phx.gbl>
Jan 22 13:22:09 mail postfix/qmgr[12474]: 5A3BB564072: from=<somchai@hotmail.com>, size=56666, nrcpt=1 (queue active)
Jan 22 13:22:09 mail postfix/local[8454]: 5A3BB564072: to=<info@buyasteriskcard.com>, relay=local, delay=3.4, delays=3.4/0.01/0/0.04, dsn=2.0.0, status=sent (delivered to maildir)
Jan 22 13:22:09 mail postfix/qmgr[12474]: 5A3BB564072: removed
Jan 22 13:22:09 mail postfix/smtpd[8450]: disconnect from bay0-omc1-s4.bay0.hotmail.com[65.54.190.15]

เวอร์คแล้วครับ

ง่ายมั๊ยครับกับการต่อต้าน SPAM mail เชื่อเหมือนผมมั๊ยว่าถ้าเราไปจ่ายตังค่ากำจัด SPAM Mail ให้ ISP หรือคนอื่นๆให้ทำให้ เขาก็คงใช้เทคนิคแบบที่ผมเอามาแนะนำนี่แหล่ะครับ


บทความที่เกี่ยวข้อง
ติดตั้ง Postfix เป็น Mail Server และการคอนฟิกเบื้องต้น
วิธีแก้ไขเมื่อส่งเมล์จาก Mail Server เข้า Hotmail ไม่ได้
** หากมีปัญหากับอุปกรณ์ที่ซื้อมาเองหรือบริการที่ทำขึ้นมาเอง ให้โพสต์ถามในเว็บบอร์ดนี้นะครับ **
** งานเร่งด่วนติดต่อว่าจ้างที่เบอร์ 08-5161-9439 อีเมล์ iamaladin@gmail.com ไลน์ NuizVoip ครับ **
nuiz
Diamond Member
 
โพสต์: 7069
ลงทะเบียนเมื่อ: 24 มี.ค. 2010 09:33

ย้อนกลับไปยัง CentOS - The Community Enterprise Operating System

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และ บุคคลทั่วไป 21 ท่าน