이 예에서는 로컬 메일 저장소에서 받는 메일을 테스트하여 스팸을 spam이라는 폴더에 정리합니다. 처음 세 단계는 순서에 관계없이 수행할 수 있습니다.
SpamAssassin 구성 파일을 만듭니다.
이 파일의 이름과 위치는 단계 2에서 지정합니다. spamassassin.opt라는 이름을 사용하는 것이 좋습니다. 이 파일은 다음과 같은 행으로 구성되어 있습니다.
host=127.0.0.1 port=2000 mode=0 verdict=spam debug=1 |
host 및 port는 spamd가 실행 중인 시스템의 이름과 spamd가 받는 요청을 수신하는 포트를 지정합니다. mode=0은 메일이 스팸으로 간주될 때 verdict에 지정된 문자열이 반환되도록 지정합니다. debug=1은 SpamAssassin 라이브러리에서 디버깅을 설정합니다. 표 14–4를 참조하십시오.
option.dat 파일에 다음 행을 추가합니다.
! for Spamassassin spamfilter1_config_file=/opt/SUNWmsgsr/config/spamassassin.opt spamfilter1_library=/opt/SUNWmsgsr/lib/libspamass.so spamfilter1_optional=1 spamfilter1_string_action=data:,require "fileinto"; fileinto "$U"; |
spamfilter1_config_file은 SpamAssassin 구성 파일을 지정합니다.
spamfilter1_library는 SpamAssassin 공유 라이브러리를 지정합니다.
spamfilter1_optional=1은 spamd에 의한 장애가 있더라도 MTA가 작업을 계속하도록 지정합니다.
spamfilter1_string_action은 스팸 메일에 대해 수행할 Sieve 작업을 지정합니다.
이 예에서는 기본값이 이미 data:,require "fileinto"; fileinto "$U";로 설정되어 있기 때문에 spamfilter1_string_action은 필요하지 않습니다. 이 행은 스팸 메일을 폴더로 보내도록 지정합니다. 폴더 이름은 SpamAssassin에서 반환되는 스팸 답신 값입니다. SpamAssassin에서 반환되는 값은 spamassassin.opt의 verdict 옵션에 의해 지정됩니다. 단계 1을 참조하십시오. 이 경우 폴더 이름은 spam입니다.
필터링할 메일을 지정합니다.
로컬 메일 저장소로 들어오는 모든 메일을 필터링하려면 ims-ms 채널에 destinationspamfilterXoptin spam 키워드를 추가하여 imta.cnf 파일을 변경합니다.
! ! ims-ms ims-ms defragment subdirs 20 notices 1 7 14 21 28 backoff "pt5m" "pt10m" "pt30m" "pt1h" "pt2h" "pt4h" maxjobs 4 pool IMS_POOL fileinto $U+$S@$D destinationspamfilter1optin spam ims-ms-daemon |
구성을 다시 컴파일하고 서버를 다시 시작합니다. MTA만 다시 시작해야 합니다. stop-msg는 실행할 필요가 없습니다.
# imsimta cnbuild # imsimta restart |
spamd 데몬을 시작합니다. 이 작업은 다음과 같은 일반적인 명령 형식을 사용하여 수행됩니다.
spamd -d
spamd 기본값은 로컬 시스템으로부터의 연결만 허용하는 것입니다. SpamAssassin과 Messaging Server가 서로 다른 시스템에서 실행 중인 경우 이 구문이 필요합니다.
spamd -d -i listen_ip_address -A allowed_hosts
여기서 listen_ip_address는 수신할 주소이고 allowed_hosts는 이 spamd 인스턴스에 연결할 수 있는 인증된 호스트 또는 네트워크(IP 주소 사용)의 목록입니다.
spamd가 모든 주소에서 수신하게 하려면 0.0.0.0을 -i listen_ip_address와 함께 사용할 수 있습니다. 시스템의 IP 주소를 변경할 때 spamfilterX_verdict_n으로 인해 명령 스크립트를 변경할 필요가 없기 때문에 모든 주소를 수신하게 하는 것이 좋습니다.