วิธีต่อสู้กับสแปมโดยใช้ Spamassassin, Dnsbl และ Procmail: 9 ขั้นตอน
วิธีต่อสู้กับสแปมโดยใช้ Spamassassin, Dnsbl และ Procmail: 9 ขั้นตอน
Anonim
วิธีต่อสู้กับสแปมโดยใช้ Spamassassin, Dnsbl และ Procmail
วิธีต่อสู้กับสแปมโดยใช้ Spamassassin, Dnsbl และ Procmail

ฉันใช้เซิร์ฟเวอร์อีเมลของตัวเอง และฉันตรวจสอบอีเมลเป็นส่วนใหญ่โดยใช้ไพน์ หลายปีที่ผ่านมา ฉันได้ตั้งค่าตัวกรองสแปมเพื่อกำจัดสแปม แต่ฉันรู้จักใช้ blackberry ของฉันเพื่อตรวจสอบอีเมลโดยใช้ squirrelmail ตัวกรองไม้สนของฉันใช้ไม่ได้กับ squirrelmail บวกกับสแปมที่เข้ามามากขึ้นเมื่อเร็ว ๆ นี้

คำแนะนำนี้จะแสดงวิธีตั้งค่า spamassassin บน Fedora โดยใช้ procmail เพื่อย้ายข้อความที่ทำเครื่องหมายว่าเป็นสแปมไปยังโฟลเดอร์สแปมโดยอัตโนมัติ

ขั้นตอนที่ 1: ติดตั้งข้อกำหนดเบื้องต้น

ติดตั้งข้อกำหนดเบื้องต้น
ติดตั้งข้อกำหนดเบื้องต้น

คุณจะต้องติดตั้งข้อกำหนดเบื้องต้นของคุณ:

joe@fletcher ~$ sudo yum ติดตั้ง sendmail-cf sendmail procmail spamassassin สแปม-milter

ขั้นตอนที่ 2: การกำหนดค่า Sendmail

การกำหนดค่า Sendmail
การกำหนดค่า Sendmail

คุณต้องการตรวจสอบว่า sendmail กำลังใช้ DNS Blacklist แก้ไข sendmail.mc และเพิ่มบรรทัดด้านล่างjoe@fletcher ~$ vi /etc/mail/sendmail.mcFEATURE(`dnsbl', `bl.spamcop.net', `"สแปมถูกบล็อก โปรดดูที่: https://spamcop.net/bl.shtml?"$&{client_addr}')dnlFEATURE(`dnsbl', `cbl.abuseat.org', `"สแปมถูกบล็อก โปรดดู: https://cbl.abuseat.org/lookup.cgi?ip="$& {client_addr}')dnlFEATURE(`dnsbl', `sbl.spamhaus.org', `"สแปมถูกบล็อก โปรดดู: https://spamhaus.org/query/bl?ip="$&{client_addr}')dnlFEATURE(` dnsbl', `list.dsbl.org', `"สแปมที่ถูกบล็อกโปรดดู: https://dsbl.org/listing?"$&{client_addr}')dnl ในขณะที่คุณเปิดอยู่ ให้เพิ่ม procmail เป็นจดหมายเริ่มต้น: MAILER(procmail)dnl

ขั้นตอนที่ 3: ส่งเมลเริ่มต้นใหม่

ส่งเมลเริ่มต้นใหม่
ส่งเมลเริ่มต้นใหม่

หลังจากที่คุณได้ทำการเปลี่ยนแปลงไฟล์ sendmails mc แล้ว คุณควรเริ่มบริการ sendmail ใหม่เพื่อสร้างไฟล์กำหนดค่าใหม่ (sendmail.cf)

joe@fletcher ~$ sudo service sendmail restart

ขั้นตอนที่ 4: ตั้งค่าการบันทึก Procmail

ตั้งค่าการบันทึก Procmail
ตั้งค่าการบันทึก Procmail

joe@fletcher ~$ sudo vi /etc/procmailrcLOGFILE=/var/log/procmail.log#Uncomment ด้านล่างสำหรับการแก้ไขปัญหา#VERBOSE=YES#LOGABSTRACT=YESคุณสามารถตรวจสอบ procmail ได้ทันทีโดยปรับแต่งไฟล์บันทึกภายใต้ /var/logjoe@fletcher ~ $ tail /var/log/procmail

ขั้นตอนที่ 5: การกำหนดค่า Procmail ภายในเครื่อง

การกำหนดค่า Procmail ในพื้นที่
การกำหนดค่า Procmail ในพื้นที่

สร้าง.procmailrc ในโฮมไดเร็กทอรีjoe@fletcher ~$ vi.~/procmailrc:0:

X-สแปมสถานะ: ใช่

/home/joe/mail/สแปม

ขั้นตอนที่ 6: เครื่องรีดนมแบบกำหนดเอง

เครื่องรีดนมแบบกำหนดเอง
เครื่องรีดนมแบบกำหนดเอง

คุณจะต้องสร้างชุดตัวกรอง/ตุ้มปี่ที่กำหนดเอง Apache.org มีบทความดีๆ เกี่ยวกับการสร้างกฎที่คุณกำหนดเองที่นี่: หน้า Wiki ฉันแน่ใจว่าคุณสังเกตเห็นว่าสแปมเป็นไปตามรูปแบบ ตัวอย่างเช่นฉันได้รับสแปมเดียวกันเกี่ยวกับข้อตกลงลูกอมที่มีหัวเรื่องที่คล้ายกันเป็นเวลาสองสามเดือนในแต่ละครั้ง คุณสามารถเขียนกฎเพื่อค้นหาสิ่งเหล่านี้ได้ joe@fletcher ~$ sudo vi /etc/mail/spamassassin/local.cf header CANDY_1 From =~ /hard/iheader CANDY_2 From =~ /candy/iheader CANDY_3 Subject =~ /hard/iheader CANDY_4 Subject =~ /candy/iheader CANDY_5 Subject =~ /urban Decade/imeta CANDY_MULTI_TEST ((CANDY_1 + CANDY_2 + CANDY_3 + CANDY_5) > 1.0)ได้คะแนน CANDY_MULTI_TEST 5.0หากตรงตามเงื่อนไขสองข้อใดข้างต้น ให้ทำเครื่องหมายว่าเป็นสแปม อีกทางเลือกหนึ่งคือการขึ้นบัญชีดำบางโดเมน: blacklist_from *@citylinenews.comหรือถ้าคุณรู้หัวข้อที่คุณไม่ต้องการรับ: ส่วนหัว WARRANTY_CHECK Subject =~ /Home Warranty/iscore WARRANTY_CHECK 5.0

ขั้นตอนที่ 7: ตรวจสอบกฎ

ตรวจสอบกฎ
ตรวจสอบกฎ

ตรวจสอบกฎที่คุณสร้าง:

joe@fletcher ~$ spamassassin --lint -D หากไม่มีข้อผิดพลาด ให้รีสตาร์ท spamassassin: joe@fletcher ~$ sudo service spamassassin restart

ขั้นตอนที่ 8: เบย์

Bayes
Bayes

คุณสามารถฝึกนักฆ่าสแปมเพื่อระบุสแปมโดยใช้ตัวกรองแบบเบย์

อันดับแรก ให้ชี้ไปที่โฟลเดอร์สแปมของคุณ: joe@fletcher ~$ sa-learn --mbox --spam /home/joe/mail/spam จากนั้นไปที่กล่องจดหมายของคุณ: joe@fletcher ~$ sa-learn --mbox --nonspam /var /mail/joe จะเริ่มใช้ตัวกรองเมื่อคุณมีสแปมและแฮมมากกว่า 200 รายการ

ขั้นตอนที่ 9: เสร็จสิ้น

เสร็จแล้ว
เสร็จแล้ว

ณ จุดนี้ คุณได้เสร็จสิ้นขั้นตอนแรกสู่กล่องจดหมายที่ปราศจากสแปม

คุณจะต้องค้นหาในโฟลเดอร์สแปมของคุณต่อไปในสัปดาห์แรกหรือประมาณนั้น เพื่อดูว่าทุกอย่างที่ทำเครื่องหมายว่าเป็นสแปมนั้นเป็นสแปมจริงหรือไม่ หากสแปมผ่านเข้ามา อย่าลืมดูที่ส่วนหัวและดูว่ามีสิ่งใดบ้างที่คุณสามารถระบุได้ว่าเป็นรูปแบบหนึ่งและเขียนกฎใหม่สำหรับมัน ฉันมักจะเพียงแค่หาง /var/log/procmail และตรวจสอบเพื่อดูว่ามีการทำเครื่องหมายที่ไม่ใช่สแปมอย่างไม่ถูกต้องหรือไม่ ขอให้โชคดี! -โจ้