본문 바로가기

StoreHouse/Server

RedHat 센드메일 스팸필터링(procmail + byspam 이용)

byspam은 김정균님이 procmail을 이용하여 hcode를 이용하는것과 비슷하나
좀 더 잘 된거같다. 필터링할 수 있는 범위도 다양하고.
필터룰만 따로 업데이트도 할 수 있어 좋은듯 하다.
세부적인 설정이나 설치 법은 정균님의 byspam 페이지에 아주 잘나와있다.
물론 byspam을 큐메일과도 연동이 된다고 하나 큐메일과 연동은 안한다.
왠지 어려움이 많이 따를거 같아서... 큐메일을 사용시는 그냥
qmail-scanner를 사용하라.

의문점은 http://devel.oops.org의 설치 법을 읽어 보고 나서
안 풀리는건 정균님홈에서 하시기 바랍니다.
나는 단지 빠른 설치법이랄까. 내가 나중에 활용해서 보기 위해
설치하는 순서만 정리한것 뿐이다.
나도 잘 모르고 그러니 byspam에 대한 질문은 받지 않는다.

우선 byspam은 두가지의 펄 모듈을 필요로 한다.
MAILTOOS과 MIME-BASE64 이 두가지 펄모듈을 필요로 한다.

byspam을 아래 사이트에서 다운 받는다(정균님 홈)
ftp://mirror.oops.org/pub/Linux/Source/byspam/

MAILTOOS을 아래 사이트에서 다운 받는다.
http://www.cpan.org/authors/id/M/MA/MARKOV/

MIME-BASE64?아래 사이트에서 다운 받는다.
http://www.cpan.org/authors/id/GAAS/

#### MailTools 설치하기 ####

소스 압축 해제
tar zxfp MailTools-1.58.tar.gz -C /var/tmp

소스 경로로 이동
cd /var/tmp/MailTools-1.58

펄경로 설정
perl Makefile.PL

컴파일
make

컴파일 테스트
make test

find /* > /root/MailTool1

실제 설치
make install

find /* > /root/MailTool2

diff /root/MailTool1 /root/MailTool2 > /root/MailTool-install


#### MIME-BASE64 설치하기 ####

소스 압축 해제
tar zxfp MIME-Base64-2.18.tar.gz -C /var/tmp

소스 경로로 이동
cd /var/tmp/MIME-Base64-2.18

펄 경로 설정
perl Makefile.PL

컴파일
make

컴파일 테스트
make test

find /* > /root/MIME-BASE1

컴파일 설치
make install

find /* > /root/MIME-BASE2

diff /root/MIME-BASE1 /root/MIME-BASE2 > /root/MIME-BASE-install

#### byspam 설치 ####

압축해제
tar zxfp byspam-0.2.2.tar.gz -C /var/tmp

소스 경로로 이동
cd /var/tmp/byspam-0.2.2

컴피그
중앙 관리를 해서 모든 사용자에게 동일하게 적용하는 방법과
개인이 필터룰 적용하는 두가지 모드가 있는데 나는 중앙 필터룰 설정을 한다.
./configure \
--level=root \
--prefix=/usr \
--confdir=/etc/byspam \
--filterdir=/etc/byspam/Filter

find /* > /root/byspam1

설치하기
./install

find /* > /root/byspam2

diff /root/byspam1 /root/byspam2 > /root/byspam-install

설치도 별로 어려움이 없을거 같다. 꽤나 잘 설치되고 에러도
없는듯 하다. 역시 정균님이 만든거라 깔끔한듯 하다.
설정파일도 별로 바꿔 줘야 할건 없는데.
두가지 정도만 변경하면 될듯하다.

/etc/byspam/byspam.conf 설정 파일의
html 태그로만 이루어진 메일 필터링 활성화

$filterTag = 0; 을
$filterTag = 1; 로 수정

필터링된 파일을 몇일이나 보관할것인가. 설정
$trashPeriod = "30"; 을
$trashPeriod = "5"; 자신이 원하는 기간( 나는 5일로 설정했다)

그리고 첨부파일의 스팸 필터링 룰들을 최신버전으로 다운 받아서
하나의 폴더로 묶어 둔것을 필터 폴더로 복사한다.

cp -r filter/* /etc/byspam/Filter/

수시로 확인해서 업데이트 해주면 될거 같다.
byspam 스팸 필터룰 다운로드 주소
http://cvs.oops.org/cgi-bin/oopsdev.cgi/byspam/filter/

byspam에 대한 자세한 사항은 정균님의 byspam 홈에서 확인하길바랍니다.