qmail 의 스팸차단 1단계(smtp 단에서 필터링)
알아둘일
2009. 9. 20. 10:15
큐메일(qmail) 에서는 여러가지 방법의 필터링을 사용한다.
유명한 rblsmtpd , spamassassin , clamav , procmail , maildrop , simscan , qmail-scanner 등 다양하다.
필터링 단계에 따라 방법도 달라진다.
크게 qmail-smtpd 단에서 필터링 하는 방법과 사용자의 메일박스에 도착하기 전에 필터링하는 방법으로 나눌 수 있다.
1) spf (Sender Policy Framework) 를 이용한 필터링
참조 : http://qmail.kldp.net/wiki/wiki.php/qmail_antispam#s-4.1
도메인 설정시 이런 설정을 본적이 있을 것이다.
~all , -all 등이 있는데, 각각 softfail , fail 등의 spf 값을 리턴하게 된다.
지난번 qmail SRPM 빌드 하는 글에서 언급한 패키지는 spf 패치가 적용되어 있다.
그래서 spf 필터링을 활성화 시켜주면 된다.
/var/qmail/control/spfbehavior 를 3 또는 4 로 해주면 된다.(0 은 비활성화)
특정도메인에 대해서 spf 설정을 확인하는 방법은
예를 들어 mydomain.com 이 A 사의 웹호스팅을 이용한다고 하자.
이때 mydomain.com 에서 웹어플(폼메일,예약,문의등)로 메일을 보낼 때 spf 를 설정하지 않으면 받는 메일서버에서 거부당할 수 있다.(대부분의 포털은 설정이 되어 있다고 봐야 한다)
dnsever 의 경우 "호스트 설명 텍스트(TXT) 추가" 항목에 넣어주면 된다.
2) rblsmtpd 를 이용한 필터링.
rbl 은 Real-time Blocking List 라고 한다.
한마디로 스팸발송IP 들을 블랙리스트, 화이트리스트 로 만들어서 블랙리스트에 등록된 IP 주소로 오는 메일을 거부하는 필터링 방법이다.
역시나 qmail SRPM 패키지에는 rblsmtpd 가 포함되어 있다.
/var/qmail/supervise/qmail-smtpd/run 파일을 직접수정해서 rblsmtpd 설정을 할 수 있다.
SRPM 패키지에는 /var/qmail/control/conf-knetqmail 을 수정해서 할 수 있도록 미리 설정되어 있다.
RBL_DNS 부분은 rbl 사이트를 지정하는 부분이다.
현재 rbl.linuxstudy.pe.kr 은 잠정중단된 상태이니 뺀다.
그리고 -b 옵션을 추가해 줬는데, 해당 옵션은 메일거부시 바로 failure notice 응답을 해준다.
그래야 발송IP 가 블랙리스트에 등록이 되어 있는지 바로 알 수 있게 된다.
유명한 rblsmtpd , spamassassin , clamav , procmail , maildrop , simscan , qmail-scanner 등 다양하다.
필터링 단계에 따라 방법도 달라진다.
크게 qmail-smtpd 단에서 필터링 하는 방법과 사용자의 메일박스에 도착하기 전에 필터링하는 방법으로 나눌 수 있다.
1) spf (Sender Policy Framework) 를 이용한 필터링
참조 : http://qmail.kldp.net/wiki/wiki.php/qmail_antispam#s-4.1
도메인 설정시 이런 설정을 본적이 있을 것이다.
; spf - kisarbl.or.kr위의 IP 주소는 메일발송하는 서버의 IP 를 지정하게 된다.
IN TXT "v=spf1 ip4:111.222.123.234 ip4:122.222.123.234 ~all"
~all , -all 등이 있는데, 각각 softfail , fail 등의 spf 값을 리턴하게 된다.
지난번 qmail SRPM 빌드 하는 글에서 언급한 패키지는 spf 패치가 적용되어 있다.
그래서 spf 필터링을 활성화 시켜주면 된다.
/var/qmail/control/spfbehavior 를 3 또는 4 로 해주면 된다.(0 은 비활성화)
특정도메인에 대해서 spf 설정을 확인하는 방법은
dig mydomain.com txt로 확인할 수 있다.
예를 들어 mydomain.com 이 A 사의 웹호스팅을 이용한다고 하자.
이때 mydomain.com 에서 웹어플(폼메일,예약,문의등)로 메일을 보낼 때 spf 를 설정하지 않으면 받는 메일서버에서 거부당할 수 있다.(대부분의 포털은 설정이 되어 있다고 봐야 한다)
"v=spf1 ip4:{웹호스팅IP주소} ~all"도메인 설정에 추가해준다.
dnsever 의 경우 "호스트 설명 텍스트(TXT) 추가" 항목에 넣어주면 된다.
2) rblsmtpd 를 이용한 필터링.
rbl 은 Real-time Blocking List 라고 한다.
한마디로 스팸발송IP 들을 블랙리스트, 화이트리스트 로 만들어서 블랙리스트에 등록된 IP 주소로 오는 메일을 거부하는 필터링 방법이다.
역시나 qmail SRPM 패키지에는 rblsmtpd 가 포함되어 있다.
/var/qmail/supervise/qmail-smtpd/run 파일을 직접수정해서 rblsmtpd 설정을 할 수 있다.
SRPM 패키지에는 /var/qmail/control/conf-knetqmail 을 수정해서 할 수 있도록 미리 설정되어 있다.
USE_RBL="no"다음과 같은 항목인데, USR_RBL 의 값을 yes 로 바꿔준다.
RBL_DNS="-r bl.spamcop.net -r rbl.linuxstudy.pe.kr"
RBL_DNS 부분은 rbl 사이트를 지정하는 부분이다.
현재 rbl.linuxstudy.pe.kr 은 잠정중단된 상태이니 뺀다.
USE_RBL="yes"위와 같이 바꿔준다. (spamhaus 와 kisarbl 을 추가했다)
RBL_DNS="-b -r bl.spamcop.net -r sbl.spamhaus.org -r spamlist.or.kr"
그리고 -b 옵션을 추가해 줬는데, 해당 옵션은 메일거부시 바로 failure notice 응답을 해준다.
그래야 발송IP 가 블랙리스트에 등록이 되어 있는지 바로 알 수 있게 된다.
반응형
'알아둘일' 카테고리의 다른 글
Centos 5 의 php 버전이 5.1.6 인데, 5.2.x 를 사용하자 (0) | 2009.09.23 |
---|---|
qmail 의 vpopmail 계정을 옮기는 방법. (0) | 2009.09.20 |
웹메일 roundcube 를 써보자.(IMAP기반) (0) | 2009.09.18 |
우분투(리눅스) 시스템 이전(하드디스크) (0) | 2009.09.12 |
imap 기반의 squirrelmail 을 사용해보자. (2) | 2009.09.08 |
WRITTEN BY
- 1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.
,