มารู้จักกับ Spam และวิธีป้องกัน
ทีมา http://infosec.sran.org/modules.php?op=mod…ticle&artid=111
เรียบเรียงโดย นายป้อม 20 ธันวาคม 2545
เมื่อไม่นานมานี้ สำนักข่าวเอพีได้รายงานข่าวเกี่ยวกับบริการฟรีอีเมลของ Hotmail.com ที่ในวันปกติสมาชิกของบริการฟรีอีเมลนี้จะได้รับจดหมายขยะวันละ 1 พันล้านฉบับด้วยกัน คิดแล้วเป็นร้อยละ 80 ของอีเมลที่ได้รับทั้งหมด ไม่รวมอีเมลอีเมลที่ถูกบล็อกจากเครื่องมือป้องกันจดหมายขยะของ Hotmail เอง ส่วนข่าวจาก msnbc.com บอกว่าจำนวนหนึ่งในสามของอีเมลสามหมื่นล้านฉบับที่ส่งทั่วโลกในแต่ละวันนั้นคือจดหมายขยะ โดยส่วนใหญ่จะเป็นอีเมลโฆษณาหลอกลวง หรือโฆษณาสินค้าเกินจริง
ก่อนหน้าที่คุณได้รับรู้ข่าวนี้คุณอาจนึกไม่ถึงว่าอีเมลที่มีจุดประสงค์เพื่อการโฆษณาจะถือเป็นการละเมิดความเป็นส่วนตัวถึงขนาดทำให้ผู้ใช้อินเทอร์เน็ตจำนวนมากต่อต้านและหาทางป้องกัน เพราะอีเมลประเภทนี้นับวันมีแต่จะเพิ่มขึ้นเรื่อย ๆ ถึงแม้ผู้ให้บริการอีเมลสามารถหาวิธีดักจับจดหมายขยะ ผู้ส่งก็จะสามารถหาทางหลีกเลี่ยงวิธีตรวจจับเหล่านี้อีกจนได้
สแปม (Spam) คืออะไร
สแปม (Spam) คือ การส่งอีเมลที่มีข้อความโฆษณาไปให้โดยไม่ได้รับอนุญาตจากผู้รับ การสแปมส่วนใหญ่ทำเพื่อการโฆษณาเชิงพาณิชย์ มักจะเป็นสินค้าที่น่าสงสัย หรือการเสนองานที่ทำให้รายได้อย่างรวดเร็ว หรือบริการที่ก้ำกึ่งผิดกฏหมาย ผู้ส่งจะเสียค่าใช้จ่ายในการส่งไม่มากนัก แต่ค่าใช้จ่ายส่วนใหญ่จะตกอยู่กับผู้รับอีเมลนั้น
เมื่อคุณได้รับอีเมลที่มีหัวข้อเช่น “Make Money from Home” หรือ XXX Hot SEXXXY Girls" ถ้าอีเมลเหล่านี้ส่งมาจากคนที่คุณไม่รู้จัก แน่นอนว่าคุณไม่ต้องการรับอีเมลเหล่านี้แน่ ๆ เพราะมันจะทำให้คุณเสียเวลา ค่าใช้จ่าย แบนด์วิดธ์ และพื้นที่ในฮาร์ดดิสก์ในการดาวน์โหลดอีเมลเหล่านี้มาอ่าน ถึงแม้จะไม่มีวิธีที่จะกำจัดอีเมลเหล่านี้ได้ถึงร้อยเปอร์เซ็นต์ แต่คุณก็สามารถทำบางอย่างเพื่อปัองกันจดหมายขยะที่น่ารำคาญเหล่านี้ได้
ไซต์ในอินเทอร์เน็ตหลาย ๆ ไซต์ที่ได้เงินจากการขายรายชื่อที่อยู่อีเมลให้กับผู้ส่งจดหมายขยะ (spammer) มีเว็ปไซต์หนึ่งที่ขายที่อยู่อีเมล 1 ล้านรายชื่อเพื่อเงินเพียง 59.95 ดอลลาร์ ส่วนอีกเว็ปไซต์หนึ่งขายซีดีที่มีรายชื่ออีเมล 15 ล้านชื่อเพื่อเงิน 120 ดอลลาร์
ทำไมจดหมายขยะถึงเพิ่มขึ้นทุกวัน ?
ผู้ส่งจดหมายขยะจำเป็นต้องส่งไปจำนวนมาก ๆ เพราะเครื่องมือในการป้องกันจดหมายขยะฉลาดขึ้นเรื่อย ๆ และผู้ส่งเองก็มีวิธีใหม่ ๆ ในการค้นหาที่อยู่อีเมลและวิธีการหลบหลีกการป้องกันจากจดหมายขยะด้วย นอกจากนี้ การทำการตลาดทางอีเมลยังมีค่าใช้จ่ายถูก ในสหรัฐ ฯ ผู้ส่งอีเมลขยะจ่ายน้อยกว่าหนึ่งเพนนีต่อ อีเมลหนึ่งฉบับ ถ้าเปรียบเทียบกับการทำการตลาด ผู้ส่งจ่าย 1 ดอลลาร์สำหรับขายสินค้าทางโทรศัพท์ และ 75 เซ็นต์สำหรับการส่งจดหมายทางไปรษณีย์
spammer รู้ที่อยู่อีเมลของพวกเราได้อย่างไร
- spammer ใช้โปรแกรมที่เก็บรวมรวมที่อยู่อีเมลโดยอัตโนมัติที่เรียกว่า Bot หรือ robot ที่สามารถ สแกนอินเทอร์เน็ตเพื่อหาที่อยู่อีเมล วิธีการหนึ่งที่ใช้เพื่อป้องกันวิธีนี้คือการใช้ที่อยู่อีเมลแจกฟรีแบบ web based email (อย่าง Hotmail.com หรือ yahoo.com เป็นต้น) แล้วจึงเก็บ POP mail ไว้สำหรับคนรู้จักและครอบครัวเท่านั้น วิธีนี้ไม่สามารถป้องกันสแปมได้ทั้งหมด แต่ก็สามารถป้องกัน bot ไม่ให้รู้ที่อยู่อีเมลหลักของคุณได้
ถ้าคุณมีเว็ปไซต์ของคุณเอง อย่าทำ hyperlink ให้กับ email address เพราะ spammer สามารถ ใช้เครื่องมือที่เรียกว่า spiders เพื่อรวบรวมเว็ปที่มี email address อยู่ โดย spiders สามารถไปตามลิงค์ต่าง ๆ และรวบรวมลิงค์ mailto คุณควรทำที่อยู่อีเมลของคุณให้เป็น text แทน เพื่อไม่ให้ spiders สามารถทำงานได้ ถ้าผู้ที่ต้องการส่งอีเมลถึงคุณ เขาจะไม่รังเกียจที่จะพิมพ์ที่อยู่อีเมลลงไปในโปรแกรมส่งอีเมลด้วยตัวเขาเอง
นอกจากนี้การส่งข้อความเข้าไปใน newsgroup โดยบอกที่อยู่อีเมลของคุณไปด้วย ทำให้ bots สามารถค้นหาที่อยู่อีเมลใน newsgroupได้ จดหมาย Spam ที่คุณได้รับบางครั้งก็ขึ้นอยู่กับว่าคุณส่งข้อความของคุณไปที่ newsgroup ใด เช่น ถ้าคุณส่งข้อความเข้าไปที่ Alt.DVD คุณอาจได้รับอีเมลที่ให้ข้อเสนอที่เกี่ยวกับ DVD
ด้วยเหตุนี้ผู้คนส่วนใหญ่จึงไม่ได้ใช้ที่อยู่อีเมลจริง ๆ หรือคุณอาจใช้วิธีเพิ่มตัวอักษรเข้าไปในท้ายที่อยู่เพื่อหลอก bot เช่น ถ้าคุณมีที่อยู่อีเมลคือ user@XYZ.net คุณสามารถบอกที่อยู่อีเมลเป็น user@XYZ.REMOVE.net แล้วจึงบอกในข้อความนั้นให้ผู้อ่านรู้ว่าให้นำคำว่า “REMOVE” ออกไปเพื่อแก้ไขให้ถูกต้อง (วิธีอื่น ๆ ที่คุณสามารถใช้เพื่อหลีกเลี่ยง bot เมื่อคุณจำเป็นต้องใส่ที่อยู่อีเมลในอินเทอร์เน็ต เช่น การเพิ่มช่องว่างเข้าไป เช่น user @ hotmail.com หรือการเปลี่ยน @ เป็น at เช่น user at hotmail.com เป็นต้น)
ก่อนที่คุณจะโพสต์ที่อยู่อีเมลของคุณใน newsgroup หรือเว็ปไซต์ใด ๆ หรือการสำรวจข้อมูลใด ๆ ก็ตาม คุณควรสมัคร free email account อีกแห่งหนึ่ง ที่ไม่ใช่อีเมลหลักของคุณ ใช้อีเมลหลักของคุณสำหรับ คนที่คุณสามารถเชื่อถือได้เท่านั้น
ที่เว็ปไซต์ http://www.u.arizona.edu/~trw/spam/ มีสคริปท์แจกฟรีที่คุณสามารถใช้เพื่อเข้ารหัสที่อยู่อีเมลของคุณเพื่อไม่ให้ bot สามารถหาที่อยู่อีเมลของคุณได้
- ถ้าคุณได้รับจดหมายลูกโซ่ อย่างเช่น “ส่งอีเมลนี้ต่อไปให้คนสิบคนแล้วไมโครซอฟท์จะส่งเช็คมูลค่า 1000 ดอลลาร์มาให้คุณ” ถ้าคุณเคยได้รับอีเมลที่มีรายชื่อผู้รับจำนวนมาก อย่าส่งต่ออีเมลเหล่านี้เนื่องจาก ที่อยู่อีเมลของคุณจะติดไปพร้อมกับอีเมลเหล่านี้
เมื่อคุณได้รับอีเมลลูกโซ่มาจากแหล่งที่ไม่รู้จัก บอกว่า “โปรดตอบจดหมายนี้ โดยมีหัวข้อตอบกลับว่า Remove เพื่อยกเลิกรับการเป็นสมาชิกแจ้งข่าวสารทางอีเมล” คุณไม่ควรตอบอีเมลนี้ เพราะการส่งอีเมลนี้ใช้เพื่อพิสูจน์ว่าที่อยู่อีเมลนี้มีจริง ซึ่งจะเป็นประโยชน์แก่ผู้ส่งอีเมลขยะเอง
3.เมื่อคุณป้อนที่อยู่อีเมลในฟอร์มของเว็ปไซต์เพื่อสมัครบริการของเว็ปนั้น ถึงแม้ว่าเว็ปไซต์นั้นสัญญาว่าจะเก็บที่อยู่อีเมลไว้เป็นความลับ แต่ดูเหมือนคำสัญญาไม่ได้ป้องกันให้บริษัทเหล่านั้นเปิดเผยข้อมูลให้บุคคลที่สามได้เลย มีคนหนึ่งที่เคยสมัครกับเว็ปไซต์ประเภท joke of the day โดยบอกที่อยู่อีเมลแบบ web based ไป เป็นครั้งเดียวที่เขาได้สมัครเพื่อขอใช้บริการเว็ปในอินเทอร์เน็ต ภายในหนึ่งสัปดาห์ต่อมาเขาได้รับจดหมายขยะ มีตั้งแต่เรื่อง “Make A Million $$$” ไปจนถึง How To Keep Women Happy
4.การใช้คำทั่ว ๆ ไป (เช่นเป็นคำใน dictionary) เป็นชื่อแอกเคาท์ช่วยให้ผู้ส่งจดหมายขยะสามารถเดาชื่อเหล่านี้และส่งไปได้ วิธีการแก้ไขคือการใช้ชื่อแอคเคาท์ที่สะกดผิด จะช่วยให้ผู้ส่งจดหมายขยะยากที่จะคาดเดาชื่อแอคเคาท์และส่งอีเมลมาแบบไม่เลือกได้
5.ไซต์ที่มีบริการที่ให้คุณสามารถส่ง greeting cards ไปยังคนอื่น ๆ บางแห่งจะเก็บรวบรวมที่อยู่อีเมลไว้ แล้วเก็บไว้หรือขายให้กับผู้ส่งจดหมายขยะ
6.การขโมยข้อมูล โดยการสร้างเว็ปไซต์ที่จริง ๆ แล้วไม่ได้ใช้ http protocol แต่ใช้ anonymous ftp แทน มีเว็ปบราวเซอร์หลาย ๆ ตัวจะส่งที่อยู่อีเมลแทนรหัสผ่าน เพื่อเข้าไปใน anonymous ftp
คำแนะนำในการป้องกันจดหมายขยะสำหรับผู้ดูแลระบบยูนิกซ์/ลีนุกซ์โดยการใช้ Spam Filtering Software
ในปัจจบัน Spammer ได้พัฒนาเทคนิคในการส่ง spam ให้ทันสมัยยิ่งขึ้น เนื่องจากเครื่องมือในการส่ง Spam สามารถซ่อนข้อความจากโปรแกรมประเภท Spam filter เพื่อหลบหลีกการตรวจจับการซอฟท์แวร์ประเภท spam filter ได้ ต่างจากสมัยก่อน spam filtering ที่สามารถตรวจจับ spam ได้ทั้งหมดเนื่องจากลักษณะของอีเมล spam นั้นมีลักษณะตายตัว
SpamAssassin (http://www.spamassassin.org)
เป็นแนวทางใหม่ในการต่อสู้กับ spam เผยแพร่ครั้งแรกเมื่อเดือนเมษายน 2001 พัฒนาโดย Matt Sergeant, Craig Hughes, และ Justin Mason เวอร์ชั่นปัจจุบันคือ 2.4.3 มีทั้งเวอร์ชั่นที่เป็น open source และ commercial เป็นที่นิยมใช้กันอย่างรวดเร็ว ในขณะนี้มีการใช้โปรแกรมนี้ใน UNIX server มากกว่า 30,000 เครื่องแล้ว
Spam Assassin จะใช้วิธีการที่แตกต่างจาก spam filter แบบก่อน ๆ โดยจะมีความยืดหยุ่นในการปรับใช้ได้มากกว่า โดยใช้วิธีการนับคะแนน (score-based filter) โดยหลังจากการใช้กฏ (rules) ทุกกฏกับข้อความในอีเมลแล้ว ก็จะมีคะแนนที่บอกความเป็นไปได้ที่ข้อความนั้นจะเป็น spam กฏของ SpamAssassin ประกอบด้วยกฏนับร้อย ๆ ข้อในหลาย ๆ ประเภท รวมทั้ง header rules, body rules และ message structure rules แต่ละ rule จะมีคะแนนบวกหรือลบที่จะบอกลักษณะของอีเมล rule ที่ได้คะแนนเป็นบวกบอกให้รู้ว่าเป็นจดหมายขยะ ผู้ใช้แต่ละคนสามารถเพิ่มกฏใหม่ได้อย่างง่ายดาย ผู้ใช้สามารถกำหนดน้ำหนักของแต่ละ rule ที่เห็นว่าเหมาะสม กำหนดแบบเบื้องต้นว่าอีเมลใดเป็น spam ค่าที่ผู้ใช้กำหนดไว้เองจะเก็บแยกจาก rule หลัก เพื่อให้ผู้ใช้สามารถอัพเกรดโปรแกรมเป็นเวอร์ชั่นใหม่ได้โดยสามารถเก็บค่าที่ผู้ใช้กำหนดไว้ได้ด้วย
นอกจากการใช้ rule ที่มาพร้อมกับโปรแกรมแล้ว SpamAssassin สามารถเข้าถึงฐานข้อมูลจากนอกโปรแกรม เช่น บริการแจ้งบัญชีดำเชิงพาณิชย์ และ Razor และ DCC spam checksum databases (http://www.rhyolite.com/anti-spam/dcc/) โดยข้อมูลจากภายนอกจะเป็นเสมือน rule ผู้ใช้สามารถเปลี่ยนแปลงน้ำหนักของข้อมูลจากฐานข้อมูลให้เหมาะสมได้
Razor (http://razor.sourceforge.net/) เป็นฐานข้อมูลที่เก็บค่า checksum ของข้อความ spam ที่มีการรายงานจากผู้ใช้ ถ้าค่า checksum ของข้อความปรากฏใน Razor แล้ว rule ที่เหมาะสมก็จะทำงานขึ้นมาและจะมีการเพิ่มคะแนนให้กับคะแนนของข้อความนั้น Razor มีประสิทธิภาพอย่างมากในการตรวจจับ spam เป็นจำนวนมาก เนื่องจากการจัดกลุ่มมาจากการตัดสินใจโดยใช้มนุษย์ จึงสามารถรู้จักข้อความที่ไม่สามารถตรวจจับได้โดยวิธีอื่น ๆ ได้
การกำหนดค่าของ SpamAssassin
การกำหนดค่าสำหรับผู้ใช้คนเดียว วิธีที่ง่ายที่สุดในการกำหนดค่าสำหรับผู้ใช้คนเดียวในระบบยูนิกซ์ทำโดยผ่านทาง procmail หลังจากที่ได้ติดตั้งและคอมไพล์ SpamAssassin เสร็จเรียบร้อยแล้ว คุณสามารถเปิดการทำงานของ Procmail filtering โดยการเพิ่มบรรทัดต่อไปนี้ในไฟล์ .forward
“|IFS=’ ’ && exec /usr/bin/procmail -f- || exit 75 #user”
แล้วจึงเพิ่มบรรทัดต่อไปนี้ในไฟล์ .procmailrc
:0fw
| /path/to/spamassassin/spamassassin
หลังจากนี้ โปรแกรม SpamAssassin ก็จะตรวจอีเมลทั้งหมด ค่าเริ่มต้นของ SpamAssassin เมื่อตัดสินแล้วว่าอีเมลนั้นเป็น spam โปรแกรมจะเพิ่มเครื่องเหมายเข้าไปใน subject, body และ X-Spam-Status header ผู้ใช้จึงสามารถใช้ฟีเจอร์ในโปรแกรมรับส่งอีเมลเพื่อค้นหาอีเมลสแปมที่มีเครื่องหมายเหล่านี้อยู่ให้ส่งไปยัง junk mail folder หรือลบทิ้ง
คุณสามารถกำหนดให้ SpamAssassin ทำเครื่องหมายและตัดสินอีเมลว่าเป็น spam ได้โดยการสร้างไฟล์ spamassassin/user_prefs คุณสามารถกำหนดค่า spam points ที่จะกำหนดให้อีเมลนั้นเป็น spam หรือไม่ สร้าง rule ใหม่ หรือเปลี่ยนน้ำหนักของ rule ที่มีอยู่แล้ว
ตัวอย่างต่อไปนี้ของไฟล์ user_prefs จะเพิ่มตัวแบบที่จะบอกว่าเป็น spam จากจำนวนครั้งการส่ง จาก 5 เป็น 6 ปิดการทำงานของการบอกเตือนใน subject และ body เปลี่ยนน้ำหนักของ rule และ เพิ่มบัญชีดำ (blacklist) บัญชีขาว (whitelist) และ header rule
#How many hits before a mail is considered spam?
required_hits 6
#Don’t mangle the messages so badly
rewrite_subject 0
use_terse_report 1
#whitelist and blacklist
whitelist_from *@spam-site-i-like.com
blacklist_from annoying-person@some-host.com
#reweight an existing rule
score BASE64_ENC_TEXT 3
#add some new rules
header KNOWN_LIST List-Id =~ /a-mailing-list-i-like/
score KNOWN_LIST -3
body EVITE /This invitation was sent to you by .* using Evite/
describe EVITE Looks like an eVite
score EVITE -3
การตรวจจับ spam สำหรับทั้งระบบ
มีหลาย ๆ วิธีในการตรวจจับ spam โดยใช้ SpamAssassin โปรแกรม spamd ซึ่งอยู่ในชุดโปรแกรมของSpamAssassin เป็น daemon ของ SpamAssassin ที่สื่อสารผ่านทาง socket การรัน SpamAssassin ในแบบ daemon ช่วยลดการทำงานของระบบได้ นอกจากนี้ถ้าต้องการความปลอดภัย spamd สามารถรันโดยใช้สิทธิ์แบบ non-privileged user ได้ด้วย
SpamAssassin สามารถเรียกมาจากสคริปท์ได้ ดังนั้นจึงสามารถกำหนดค่าโปรแกรมรับส่งอีเมล (MTA, Mail Transfer Agent) ให้ใช้โปรแกรมนี้ได้ ไซต์ที่ใช้ Procmail สามารถใช้ SpamAssassin โดยเพิ่ม SpamAssassin ให้เป็น filter ใน /etc/procmailrc ส่วนไซต์ที่ใช้ Sendmail สามารถใช้ spamassassin-milt “milter” เพิ่มลงไปใน sendmail.mc นอกจากนี้ยังมี plug-in สำหรับโปรแกรมที่จัดการด้านอีเมลอื่น ๆ อีก เช่น Exim, MailScanner และ MimeDefang หลังจากที่ติดตั้งในระบบแล้ว ผู้ใช้แต่ละคนสามารถกำหนด ค่า rules น้ำหนักของ rule และค่าอื่น ๆ ผ่านทาง user_prefs เช่นเดียวกับข้างบนนี้
ขั้นตอนการติดตั้ง Milter ใน Red Hat 7.3 โดยใช้ rpm
- ไฟล์ที่จำเป็นต้องใช้ในการติดตั้ง คุณจำเป็นต้องมีไฟล์ rpm เหล่านี้ติดตั้งอยู่ก่อนแล้ว ได้แก่:
cyrus-sasl-devel-1.5.24-25.i386.rpm
db1-devel-1.85-8.i386.rpm
db3-devel-3.3.11-6.i386.rpm
openldap-devel-2.0.23-4.i386.rpm
tcp_wrappers-7.6-19.i386.rpm
sendmail-8.11.6-15.i386.rpm
ไฟล์ที่คุณจำเป็นต้องใช้ในการติดตั้ง sendmail และ perl:
sendmail-8.11.6-15.src.rpm
perl-5.6.1-34.99.6.src.rpm
(คุณสามารถดาวน์โหลดไฟล์ต่าง ๆ ข้างบนนี้จาก http://ftp.redhat.com/pub/redhat/linux/7.3…86/RedHat/RPMS/ )
ไฟล์ของ Sendmail::Milter:
Sendmail-Milter-0.18.tar.gz
(ดาวน์โหลดได้จาก http://switch.dl.sourceforge.net/sourcefor…er-0.18.tar.gz))
2.คอมไพล์และติดตั้ง Perl
2.1 ติดตั้ง .src.rpm
rpm -ivh perl-5.6.1-34.99.6.src.rpm
2.2 แก้ไขไฟล์ perl.spec
แก้ไขไฟล์นี้: /usr/src/redhat/SPECS/perl.spec
บรรทัดแรก: %define build_rawhide 1
%if %{build_rawhide}
%define threading 1
2.3 คอมไพล์ perl:
cd /usr/src/redhat/SPECS
rpm -ba --clean perl.spec
2.4 ติดตั้ง Perl หลังจากคอมไพล์ perl เสร็จแล้วจึงติดตั้งลงในระบบ:
rpm -ev perl --no-deps
rpm -ivh /usr/src/redhat/RPMS/i386/perl-5.6.1-34.99.6.i386.rpm
2.5 ทดสอบ perl rpm package ทดสอบว่ามี threads build-in อยู่ใน perl แล้วหรือไม่ ใช้คำสั่ง:
$ perl -V | grep usethreads
ถ้ามี thread build-in อยู่ใน perl แล้วจะมีข้อความนี้ขึ้นมา:
usethreads=define use5005threads=undef useithreads=define usemultiplicity=undef
- คอมไพล์ Sendmail 3.1 ติดตั้ง .src.rpm ติดตั้ง .src.rpm package ของ sendmail:
rpm -ivh sendmail-8.11.6-15.src.rpm
3.2 คอมไพล์ sendmail:
cd /usr/src/redhat/SPECS
rpm -bc sendmail.spec
คุณสามารถสร้าง rpm เช่นนี้ได้ถ้าคุณใช้ i686 platform:
rpm -bc --target i686 sendmail.spec
- คอมไพล์และติดตั้ง Sendmail::Milter ถึงตอนนี้เราได้ติดตั้ง perl และคอมไพล์ sendmail ต่อมาจึงคอมไพล์ Sendmail::Milter ต่อ (ถ้าคุณมี Perl และ Sendmail ติดตั้งอยู่ในระบบมาก่อนแล้ว คุณสามารถข้ามจากขั้นตอนแรกมาที่ขั้นตอนนี้ได้เลย แต่คุณต้องตรวจสอบให้แน่นอนว่า Perl ที่ติดตั้งนั้นสนับสนุน threads ด้วย)
4.1 คอมไพล์ Sendmail::Milter Uncompress ไฟล์:
tar xzf Sendmail-Milter-0.18.tar.gz -C /tmp
cd /tmp/Sendmail-Milter-0.18
perl Makefile.PL /usr/src/redhat/BUILD/sendmail-8.11.6/ /usr/src/redhat/BUILD/sendmail-8.11.6/obj.Linux.2.4.18-10.i686/
โปรดระลึกไว้ว่า ชื่อไดเร็กทอรี: /usr/src/redhat/BUILD/sendmail-8.11.6/obj.Linux.2.4.18-10.i686/ นั้นอาจใช้ชื่ออื่น ๆ แตกต่างกันไป เช่น:
/usr/src/redhat/BUILD/sendmail-8.11.6/obj.Linux.2.4.18-10.i386/ หรือ /usr/src/redhat/BUILD/sendmail-8.11.6/obj.Linux.2.4.18-10.athlon/ ต่อไปจึงใช้คำสั่ง
make
make install
- กำหนดค่าของ Sendmail ให้สามารถทำการ filter ได้
5.1 แก้ไขไฟล์ .mc
cd /etc/mail/cf
cp redhat.mc my-redhat.mc
แก้ไขไฟล์ /etc/mail/cf/my-redhat.mc แล้วใส่บรรทัดต่อไปนี้ลงไป:
dnl # Sendmail::Milter --------------------------------
define(_FFR_MILTER',
1’)dnl
INPUT_MAIL_FILTER(myfilter',
S=local:/var/run/perl.sock’)dnl
5.2 คอมไพล์ไฟล์ .mc
cd /etc/mail/cf
m4 …/m4/cf.m4 my-redhat.mc > my-redhat.cf
5.3 ติดตั้งไฟล์ .cf ใหม่
cd /etc/mail/cf
mv my-redhat.cf /etc/sendmail.cf
5.4 restart sendmail
service sendmail restart
5.5 start perl Milter filter
การรัน perl filter ให้ใช้ socket ที่กำหนดไว้ในไฟล์ .mc ตัวอย่างการใช้ไฟล์ sample.pl จาก Sendmail::Milter:
perl -w sample.pl myfilter /etc/sendmail.cf 2>filter.log 1>filterl.log &
ไฟล์ที่เก็บ output จากโปรแกรมจะไม่แสดง output ของการการทำ filter ในทันที เพราะข้อมูลบางอย่างจะเก็บไว้ใน buffer แต่เมื่อคุณออกจากโปรแกรม (ด้วย SIGINT) output ทั้งหมดจะถูกเก็บไวในไฟล์ที่เก็บ output นั้น
คุณสามารถดูตัวอย่างการติดตั้งโปรแกรม SpamAssassin สำหรับลีนุกซ์โดยวีธีคอมไพล์โดยตรงจากซอร์สโค้ดได้จากลิงค์ต่อไปนี้
http://www.peregrinehw.com/downloads/SpamAssassin/INSTALL
http://www.peregrinehw.com/downloads/SpamA…/INSTALL-PHP-SA
http://www.peregrinehw.com/downloads/SpamA…L-spamassmilter
บทสรุป
บทความนี้ช่วยให้คุณได้รู้จักกับจดหมายขยะหรือ spam มากขึ้น บอกวิธีป้องกันเบื้องต้นสำหรับผู้ใช้ทั่ว ๆ ไปและผู้ดูแลระบบเพื่อลดจำนวนของ spam ที่คุณจะได้รับ ทุกคนควรหันมาให้ความสนใจกับการป้องกัน เพราะสิ่งเหล่านี้จะทำให้คุณเสียทั้งเวลาและค่าใช้จ่าย ในต่างประเทศมีความพยายามอย่างจริงจังที่จะกำจัดสิ่งเหล่านี้ อันจะเห็นได้จากข่าวการฟ้องร้องเรียกค่าเสียหายกับผู้ส่งอีเมลขยะในต่างประเทศ
แหล่งข้อมูลอ้างอิงและแหล่งข้อมูลสำหรับการศึกษาเพิ่มเติม
http://www-106.ibm.com/developerworks/linux/library/l-spam/ - Stamp out spam with SpamAssassin
http://www.u.arizona.edu/~trw/spam/ - Tim Williams - Anti-spam Countermeasures
http://spam.abuse.net/ - Fight Spam on the Internet!
http://www.chron.com/cs/CDA/story.hts/tech/1516756 - Spam, spam, spam: Hard to escape the onslaught
http://www-106.ibm.com/developerworks/linu…pam/l-spam.html - A brief history of spam
http://www.geocities.com/oliversl/milter/ - Installation of perl module Sendmail::Milter in RedHat Linux 7.3
http://www.epinions.com/cmsw_Internet-Email-Spam_Filters-1 How to Prevent Spam Email
http://www.slashdot.org ข่าวสารในวงการคอมพิวเตอร์และวิทยาศาสตร์ รวมถึงข่าวสารเกี่ยวกับ spam
http://www.sitedeveloper.ws/tutorials/spam.htm - วิธีเซ็ตค่าของ Microsoft Outlook เพื่อป้องกัน spam
http://www.cnn.com/TECH/computing/9809/22/spamcontrol.idg/ - โปรแกรมประเภท filtering สำหรับวินโดวส์