Sun Java System Messaging Server 6 2005Q4 관리 설명서

SAVSE(Symantec Anti-virus Scanning Engine) 사용

이 절에서는 SAVSE를 배포하는 방법에 대해 설명하지만 다른 ICAP 지원 스팸 방지/바이러스 백신 프로그램을 배포하는 데에도 도움이 될 것입니다. 이 절은 다음과 같은 하위 절로 구성되어 있습니다.

SAVSE 개요

SAVSE는 TCP/IP 서버 응용 프로그램 및 통신 API(Application Programming Interface)로서, 바이러스 스캐닝 서비스를 제공합니다. 네트워크 인프라 장치를 통해 서비스되거나 저장되는 트래픽을 방지하도록 특별히 설계되었기 때문에 모든 주요 파일 형식(모바일 코드와 압축 파일 형식 포함)에 있는 바이러스와 웜, 트로이 목마 등을 감지하고 방지합니다. 자세한 내용은 Symantec 웹 사이트를 참조하십시오.


주 –

현재 버전의 Messaging Server는 SAVSE 스캔 기능만 지원합니다. 복구를 지원하거나 기능을 삭제하지 않습니다.


SAVSE 요구 사항 및 사용 시 고려 사항

이는 Symantec으로부터 별도의 라이센스를 받은 제품입니다.

SAVSE 구성에서는 스캔 모드만 지원되며 스캔과 복구 모드 또는 스캔과 삭제 모드는 지원되지 않습니다.

SAVSE 실행 위치

SAVSE 또는 ICAP를 지원하는 다른 서버는 자체의 별도 시스템, 단일 시스템 배포의 Messaging Server와 동일한 시스템 또는 2계층 배포의 MTA와 동일한 시스템에서 실행할 수 있습니다. LMTP(Local Mail Transfer Protocol)가 MTA와 메일 저장소 사이에서 사용되는 경우 MTA에서 필터링을 호출해야 합니다. 메일 저장소에서는 필터링을 호출할 수 없습니다. MTA와 메일 저장소 간에 SMTP가 사용되는 경우 각 시스템이나 별도의 타사 시스템에서 실행할 수 있습니다.

SAVSE를 실행하는 서버 그룹을 사용하려면 해당 그룹의 앞에 로드 밸런서를 사용해야 합니다. MTA는 SpamAssassin 서버에 대해 단일 주소로만 구성됩니다.

SAVSE 배포

SAVSE를 배포하려면 다음 단계를 수행합니다.

SAVSE 구성 예

다음 예에서는 로컬 메시지 저장소에서 받는 메일을 테스트하여 바이러스가 첨부된 메일을 삭제합니다. 처음 세 단계는 순서에 관계없이 수행할 수 있습니다.

ProcedureSAVSE 구성 방법

단계
  1. SAVSE 구성 파일을 만듭니다.

    이 파일의 이름과 위치는 다음 단계에서 지정합니다. 여기에서 사용되는 이름은 SAVSE.opt입니다. 다음은 이 파일의 예입니다.


    host=127.0.0.1
    port=1344
    mode=0
    verdict=virus
    debug=1
                      

    hostport는 SAVSE 프로그램이 실행 중인 시스템의 이름과 이 프로그램이 수신 요청을 수신하는 포트(SAVSE의 기본 포트는 1344임)를 지정합니다. mode=0은 메일이 스팸으로 간주될 때 verdict에 지정된 문자열(이 경우 단어 virus)이 반환되도록 지정합니다. debug=1은 디버깅을 설정합니다. ICAP 구성 매개 변수에 대한 설명은 SAVSE 옵션을 참조하십시오.

  2. option.dat 파일을 만듭니다. 예:


    ! for Symantex Anti-virus Scan Engine
    spamfilter1_config_file=/opt/SUNWmsgsr/config/SAVSE.opt
    spamfilter1_library=/opt/SUNWmsgsr/lib/libicap.so
    spamfilter1_optional=1
    spamfilter1_string_action=data:,discard
                      

    spamfilter1_config_files는 SAVSE 구성 파일을 지정합니다.

    spamfilter1_library는 SAVSE 공유 라이브러리의 위치를 지정합니다.

    spamfilter1_optional=1은 SAVSE 프로그램에 오류가 있더라도 MTA가 작업을 계속하도록 지정합니다.

    spamfilter1_string_action은 스팸 메일에 대해 수행할 Sieve 작업을 지정합니다. 이 값은 바이러스가 있는 메일을 삭제하도록 지정하며이 값은 기본값이기 때문에 값을 바꾸지 않는 한 지정할 필요가 없습니다.

  3. 필터링할 메일을 지정합니다.

    로컬 메일 저장소로 들어오는 모든 메일을 필터링하려면 ims-ms 채널에 destinationspamfilter1optin 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 virus
    ims-ms-daemon
  4. 구성을 다시 컴파일하고 서버를 다시 시작합니다. MTA만 다시 시작해야 합니다. stop-msg는 실행할 필요가 없습니다.


    # imsimta cnbuild
    # imsimta restart
    
  5. SAVSE가 시작되는지 확인합니다.

    자동으로 시작되어야 하지만, 그렇지 않은 경우는 /etc/init.d/symcscna start와 같은 start 명령을 사용합니다.

가능한 다른 구성

mode0으로 설정하면 spamfilterX_null_option을 사용하여 스팸으로 확인된 메일을 특정 폴더에 정리하는 등의 다른 작업을 수행하도록 지정할 수 있습니다. 예를 들면 다음과 같습니다.

spamfilter1_null_option=data:,require "fileinto"; fileinto "VIRUS";

감염된 메일을 폴더에 정리하는 것은 대부분의 경우 좋지 않습니다.

mode를 1로 설정하여 작업을 시작할 수도 있습니다. 예를 들어, mode를 1로 설정하고 MTA에서 spamfilterX_string_action 옵션을 다음과 같이 설정하여 스팸 결과를 거부 메일에 포함할 수 있습니다.

spamfilter1_string_action=data:,require "reject"; reject "Message contained a virus [$U]";

fileinto와 마찬가지로 reject 작업을 사용하여 바이러스를 처리하는 것은 바이러스가 보낸 사람에게 다시 전송되므로 좋은 방법이 아닙니다.

option.dat 파일에 한 행을 추가하여 스팸 메일 헤더에 태그를 추가할 수도 있습니다. 예:

spamfilter1_string_action=data:,addtag “[SPAM detected!]”;

메일이 바이러스를 포함하는 것으로 확인되었는지 여부에 상관없이 작업을 수행해야 할 경우에는 mode2로 설정할 수 있습니다. 나중에 테스트할 수 있는 헤더 필드를 추가하는 것을 모드 2 적용의 예로 볼 수 있습니다.

spamfilterX_string_action=data:,require ["addheader"];addheader "$U"

SAVSE 옵션

SAVSE 옵션 파일은 아주 일반적인 ICAP 옵션 파일입니다. 이 파일의 이름과 위치는 option.datspamfilterX_config_file에 설정합니다. 이 파일은 option=value 형태의 행으로 구성됩니다. 유일한 필수 옵션은 HOST입니다. 이 옵션은 ICAP 필터링 서버가 실행 중인 시스템의 이름으로 설정해야 합니다. ICAP 서버가 로컬 호스트에서 실행 중인 경우에도 이 옵션을 설정해야 합니다. 이 옵션 파일은 아래와 같습니다.

표 14–6 ICAP 옵션

옵션 

설명 

기본값 

debug

ICAP 인터페이스 모듈에서 디버그 출력을 활성화하거나 비활성화합니다. 0 또는 1입니다. 

field

ICAP 결과 접두어를 지정합니다. SAVSE 결과 문자열은 다음과 비슷합니다.  

Virus-Test: False Virus-Test: True; W32.Mydoom.A@mm.enc

이 옵션은 결과의 Virus-Test: 부분을 변경할 수 있는 방법을 제공합니다. 빈 field 값을 지정하는 경우 “:“이 제거된다는 점을 유의하십시오.

Virus-test 

host

ICAP 필터링 서버가 실행 중인 시스템의 이름입니다. 

localhost 

mode

ICAP 필터 결과를 답신 정보로 변환하는 것을 제어합니다. 즉, 메일을 처리한 후 반환되는 문자열 정보를 지정합니다. 다음과 같은 네 가지 모드를 사용할 수 있습니다. 자세한 내용은 ICAP mode 옵션을 참조하십시오.

0 - 메일에 바이러스가 포함된 경우 답신 문자열( verdict 옵션에 의해 지정됨)을 반환합니다. MTA 옵션 spamfilterX_string_actionverdict 문자열이 반환될 경우 작업할 내용을 지정하는 데 사용될 수 있습니다. verdict 옵션이 비어 있거나 지정되지 않은 경우 null 답신이 반환됩니다. MTA 옵션 spamfilter X_null_action은 기본 작업을 무시함으로써 메일을 버리게 될 경우와 null 답신이 반환될 경우 수행할 작업을 지정하는 데 사용될 수 있습니다.

메일에 바이러스가 포함되지 않은 경우 기본 답신이 반환됩니다. 기본 문자열은 구성할 수 없으며 항상 작업을 수행하지 않고 정상적으로 전달됨을 의미합니다.  

1 - 메일에 바이러스가 있을 경우 ICAP 결과 문자열을 반환합니다. 메일에 바이러스가 포함되지 않은 경우 기본 답신이 반환됩니다. 기본 문자열은 항상 작업을 수행하지 않고 정상적으로 전달됨을 의미합니다. 다음은 SAVSE 결과 문자열의 두 가지 예입니다.

VIRUS TEST: FALSEVIRUS-TEST: TRUE; W32.Mydoom.A@mm.enc

2 - 무조건적으로 ICAP 결과 문자열을 답신으로 반환합니다. 기본 또는 null 답신이 반환되지 않으며 verdict 옵션이 사용되지 않습니다. 이 설정은 메일이 바이러스를 포함하는 것으로 확인되었는지 여부에 상관없이 작업을 수행해야 할 경우에 사용됩니다. 나중에 테스트할 수 있는 헤더 필드를 추가하는 것을 모드 2 적용의 예로 볼 수 있습니다.

spamfilterX_string_action=data:,require ["addheader"];addheader "$U"

3 - 메일에 바이러스가 있는 경우 ICAP 결과 문자열이 반환되고 verdict 옵션에서 지정한 verdict 문자열이 반환됩니다. 이 설정은 바이러스가 확인된 경우 특정 작업을 수행하고 그렇지 않은 경우 다른 작업을 수행해야 하는 경우에 사용됩니다. spamfilterX_verdict_nspamfilterX_action_ n 일치 쌍을 사용하여 ICAP 결과 문자열의 작업을 제어할 수 있습니다. spamfilterX_string_action을 사용하여 verdict 문자열의 작업을 제어할 수 있습니다.

port

ICAP 서버가 실행 중인 포트 번호를 지정합니다.

1344 

SOCKS_HOST

문자열입니다. 중간 SOCKS 서버의 이름을 지정합니다. 이 옵션을 지정하면 ICAP가 직접 연결되지 않고 지정된 SOCKS 서버를 통해 연결됩니다. 

"" 

SOCKS_PORT

정수입니다. 중간 SOCKS 서버가 실행 중인 포트를 지정합니다.  

1080 

SOCKS_PASSWORD

문자열입니다. SOCKS 서버를 통해 연결을 설정할 때 사용할 비밀번호를 지정합니다. 아이디/비밀번호가 필요한지 여부는 SOCKS 서버 구성에 따라 다릅니다. 

"" 

SOCKS_USERNAME

문자열입니다. SOCKS 서버를 통해 연결을 설정할 때 사용할 아이디를 지정합니다. 

"" 

verdict

MODE 0과 3에 사용되는 답신 문자열을 지정합니다. 

"" 

ICAP mode 옵션

메일을 처리한 후, SASVE와 같은 ICAP 바이러스 방지 프로그램은 메일에 바이러스가 있는지 여부를 파악합니다. mode를 사용하면 이 답신을 나타내는 ICAP 프로그램에서 반환하는 문자열을 지정할 수 있습니다. 선택할 수 있는 옵션으로는 null이나 기본값, ICAP 결과 문자열, verdict 문자열( verdict 옵션으로 지정) 등이 있습니다. 기본값은 null이나 ICAP 결과 문자열, verdict로 지정된 문자열이 아니지만 프로그램에서 반환한 기타 비구성 문자열이라는 점을 유의하십시오. 아래 테이블은 mode 작업에 대한 개요입니다.

표 14–7 ICAP 모드 옵션의 답신 문자열 반환

verdict\Setting

바이러스 

mode=0

mode=1

mode=2

mode=3

verdict="" (설정되지 않음)

예 

null 

ICAP 결과 

ICAP 결과 

ICAP 결과 

아니요 

기본값 

기본값 

ICAP 결과 

기본값 

verdict=string

예 

verdict 문자열

ICAP 결과 

ICAP 결과 

ICAP 결과 

아니요 

기본값 

기본값 

ICAP 결과 

verdict 문자열

첫 번째 열은 verdict 옵션이 설정되어 있는지 여부를 나타냅니다. 두 번째 열은 메일에 바이러스가 있는지 여부를 나타냅니다. 모드 열은 여러 모드에 문자열이 반환되었음을 나타냅니다. 예를 들어, verdict가 설정되어 있지 않고 mode가 0으로 설정되어 있으며 메일에 바이러스가 없을 경우 ICAP 프로그램에서 기본값을 반환합니다. verdictWARNING VIRUS!로, mode가 0으로 설정되어 있고 메일에 바이러스가 있으면 ICAP 프로그램에서 WARNING VIRUS!라는 문자열을 반환합니다.