요 근래 늘어가는 스팸에 이마에 주름이 하나 둘 늘어가고 있던 찰나에 bsdforum 을 구경갔다가 방준영 님이 쓰신 bogofilter 관련 글을 보게 되었습니다. 사용법을 보니 자동으로 스팸 훈련을 시키는 것이 아닌 듯 싶어 왠지 모르게 호감이 가더군요. :)
http://bogofilter.sourceforge.net/
토요일에 세팅을 하고 3일째 테스트 중입니다. 결과는 현재까지 상당히 만족스럽네요.
제 편지함에 300 개 정도의 (스팸이 아닌) 메일이 있었고, 스팸이 약 1,000 통 정도 휴지통에 모여있었는데 이 녀석들을 이용해서 훈련을 시켰더니, 3일동안 온 30개의 메일 중에 스팸 26통을 정확하게 걸러주었네요.
아래는 나중에 시스템에 적용시켰을 때 사용자들이 Spam 폴더를 지우지 않더라도 알아서 정리해주기 위해 사용하게 될 스크립트 초안입니다~
-
#!/bin/sh
-
-
for x in `cat /etc/passwd|awk -F: '{ print $6 }'`;do
-
-
if [ ${x:0:6} == "/home/" ]; then
-
if [ -d "$x/.maildir/.Spam" ]; then
-
// this will be replaced to tmpwatch
-
echo $x;
-
fi
-
fi
-
done
제가 참고한 bsdforum 의 방준영 님의 글은 아래 링크에서 볼 수 있습니다 ;)
http://bsdforum.or.kr/viewtopic.php?t=33
그리고 bogofilter 없는 상태에서 스팸을 걸러낸 결과는 아래와 같습니다.

6일부터 12일까지의 5077 개의 메일 중에 Spf 에 2482 개, Fake/NoHTML + Fake/NoPlain 에 걸린게 1499 개, BadMailer 에 315개, SpamWord 에 141 개, BadLibrary 에 21개, Virus 가 2개 되겠습니다.
결과적으로 4460/5077 개로 87.8% 가 스팸으로 판정되었습니다.
그리고 bogoutil 을 통해 확인해본 결과 나름 인코딩 관련된 처리를 알아서 처리하고 있는 듯 싶길래 BadMailer, SpamWord, BadLibrary 에서 처리하던 부분을 bogofilter 로 대체시킬까 싶어서 관련된 rule 은 주석처리를 해 놓았습니다.
한두 달 정도 개인적으로 훈련을 시킨 뒤 제가 훈련시킨 데이타파일을 이용해서 시스템 전체에 적용을 시켜볼까 싶은데 한 달 뒤가 기대되는군요.
p.s) 스팸 관련해서 시도한 것들이 점점 쌓여가네요. 곧 이 녀석들을 보기 좋게 하나로 묶어줄 메타 포스트를 작성해야겠네요.
Tags: bayesian, bogofilter, email, spam filter
September 11th, 2006 at 10:00 pm
스팸도 너무 훈련시켜주면 피해가 있더라고요.; 제가 코멘트 테스트하다가 블락당한 것처럼;;
그런데 지메일은 사용하지 않으시나봐요. 지메일쓰고서 스팸 걱정해본 적이 없어서..
September 12th, 2006 at 2:04 am
제 계정에 세팅해놓은 메일이 너무나도 편해서 gmail 쪽으로 선뜻 손이 안가더라구요. 뭐 용량도 무제한이고…
pop3 / imap / smtp 전부 지원하기 때문에 mail.app / thunderbird / outlook 등을 통해 실시간 감시까지 가능하구요 ;)