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

기타 키워드

이 절에서는 기타 키워드에 대해 설명합니다. 이 장은 다음 내용으로 구성되어 있습니다.

프로세스 채널 대체

키워드: notificationchannel, dispositionchannel

이러한 키워드는 각각 초기에 전달 상태 알림(DSN) 및 MDN(Message Disposition Notification)을 대기열에 포함하기 위한 장소로 프로세스 채널을 대체합니다. 명명된 채널이 없으면 Messaging Server는 다시 프로세스 채널을 사용합니다.

notificationchannel은 초기에 전달 상태 알림(DSN)을 대기열에 포함하기 위한 장소로 프로세스 채널을 대체합니다. 명명된 채널이 없으면 Messaging Server는 다시 프로세스 채널을 사용합니다.

dispositionchannel은 초기에 MDN(Message Disposition Notification)을 대기열에 포함하기 위한 장소로 프로세스 채널을 대체합니다. 명명된 채널이 없으면 Messaging Server는 다시 프로세스 채널을 사용합니다.

채널 작업 유형

키워드: submit

Messaging Server는 RFC 2476의 메일 제출 프로토콜을 지원합니다. submit 키워드를 사용하여 채널을 제출 전용 채널로 표시할 수 있습니다. 이 키워드는 SMTP 서버가 메일 제출 전용으로 사용되는 특수 포트에서 실행하는 대부분의 TCP/IP 채널에 유용합니다. RFC 2476은 포트 587을 이러한 메일 제출용으로 사용하도록 구성합니다.

파이프 채널

키워드: user

user 키워드는 파이프 채널에서 실행할 아이디를 나타내는 데 사용됩니다.

user에 대한 인수는 일반적으로 소문자로 사용되지만 인수가 따옴표로 묶여 있는 경우 원래의 문자가 그대로 유지됩니다.

메일함 필터 파일 위치 지정

키워드: filter, nofilter, channelfilter, nochannelfilter, destinationfilter nodestinationfilter, sourcefilter, nosourcefilter, fileinto, nofileinto)

filter 키워드는 원시 및 ims-ms 채널에서 해당 채널에 대한 사용자 필터 파일의 위치를 지정하는 데 사용됩니다. 이 키워드는 필터 파일 위치를 설명하는 필수 URL 인수를 갖습니다. 기본값은 nofilter이며 해당 채널에 대해 사용자 메일함 필터가 사용되지 않음을 의미합니다.

sourcefilterdestinationfilter 키워드는 일반 MTA 채널에서 받는 메일과 보내는 메일 각각에 적용할 채널 수준 필터를 지정하는 데 사용할 수 있습니다. 이러한 키워드는 채널 필터 파일 위치를 설명하는 필수 URL 인수를 갖습니다. 기본값은 nosourcefilternodestinationfilter이고 어느 채널 방향에 대해서도 채널 메일함 필터를 사용하지 않음을 의미합니다.

이전의 channelfilternochannelfilter 키워드는 각각 destinationfilternodestinationfilter의 동의어입니다.

현재 ims-ms 채널과 LMTP 채널에서만 지원되는 fileinto 키워드는 메일함 필터 fileinto 연산자를 적용할 때 주소를 변경하는 방법을 지정합니다. ims-ms 채널에서의 일반적인 사용법은 다음과 같습니다.

fileinto $U+$S@$D

위의 키워드는 폴더 이름을 원본 주소에 하위 주소로 삽입하여 원래의 하위 주소를 대체하도록 지정합니다.

LMTP 채널에서의 일반적인 사용법은 다음과 같습니다.

fileinto @$4O:$U+$S@$D

여기서 $4O는 4와 영문자 O입니다(숫자 0이 아님).

스팸 필터 키워드

키워드: destinationspamfilterXoptin, sourcespamfilterXoptin

destinationspamfilterXoptin은 이 채널을 대상으로 하는 모든 메일이 필터링 소프트웨어 X를 통해 실행되도록 지정합니다. 필터링 소프트웨어 X는 option.datspamfilterX_library에서 정의합니다. 필터 매개 변수 앞에는 키워드가 오고 사용 가능한 매개 변수는 필터링 프로그램에 따라 다릅니다.

sourcespamfilterXoptin은 이 채널로부터 수신된 모든 메일이 스팸 필터링 소프트웨어 X를 통해 실행하도록 지정합니다. 필터링 소프트웨어 X는 option.datspamfilterX_library에서 정의합니다. 시스템 차원 기본 매개 변수 앞에는 키워드가 오고 사용 가능한 매개 변수는 필터링 프로그램에 따라 다릅니다. switchchannel이 적용되는 경우 이 키워드가 switched-to 채널에 포함됩니다.

이러한 키워드를 사용하는 방법에 대한 자세한 내용은 채널 수준 필터링 지정을 참조하십시오.

주소 검증 후와 확장 전의 라우팅

키워드: aliasdetourhost

aliasdetourhost 는 호스트된 사용자의 mailHost 속성 값에 대한 소스 채널별 대체를 허용합니다. 특히 aliasdetourhost는 일반적으로 로컬(이 시스템에서 호스트되는) 사용자를 대상으로 하는 메일을 라우팅할 때 특정 종류의 처리를 위해 별도의 호스트로 “우회”하는 데 사용됩니다. 메일을 원래 호스트에서 확인(해당 주소가 정당한 로컬 주소인지)하고 처리 호스트로 우회한 다음 확장 및 전달을 위해 원래 호스트로 되돌려 보낼 수 있습니다.

aliasdetourhost는 채널 및 타사 필터링 호스트를 더 적절하게 구성하고 일종의 “중간 필터링”을 사용할 수 있게 합니다. aliasdetourhost 는 일반적으로 대체 변환 채널과 함께 사용됩니다. 대체 변환 채널이 원격 수신자의 라우팅에 영향을 주는 데 사용되는 것과 달리 aliasdetourhost는 로컬(이 시스템에서 호스팅되는) 사용자의 라우팅에 영향을 주는 데 사용됩니다.

aliasdetourhost의 인수는 호스트 또는 도메인 이름이거나 호스트/도메인 지정입니다. 다시 쓰기 규칙을 사용하여 호스트 이름, IP 리터럴 주소 및 채널 태그(암시적으로 호스트 이름으로 간주되는)를 처리할 수 있습니다. 소스 채널에서 이 키워드를 지정하는 경우 태그 정보가 처리된 후 메일 호스트 정보가 확인되기 직전에 LDAP에 저장된 주소의 별칭 확장이 중지됩니다. 이 때 메일이 aliasdetourhost 값으로 보내지고 처리된 주소가 성공적으로 완료되지만 이러한 작업은 주소 검증이 끝나고 별칭 확장이 수행되기 전에 발생합니다.

aliasdetourhost를 사용하여 변환 채널 필터링과 관련된 다양한 문제를 방지하는 예는 다음과 같습니다. 여기서는 시스템이 프런트엔드 MTA 및 백엔드 메시지 저장소를 사용하여 설정되었다고 가정합니다. 사용자의 전달 옵션은 forwardmailbox로 설정되어 있습니다. MTA에서는 바이러스 백신/스팸 시스템을 위해 대체 변환 채널을 사용합니다. 이 사용자에게 메일이 도착하면 MTA 별칭이 확장되고 두 명의 수신자(하나는 로컬, 다른 하나는 원격)가 생성됩니다. 원격 수신자의 복사본은 직접 전송됩니다. 반면, 로컬 수신자의 복사본은 변환 채널로 이동하여 스캔된 다음 반환됩니다. 그런 다음 별칭 확장이 다시 적용되어 원격 수신자의 두 번째 복사본이 생성되며 로컬 수신자의 복사본은 정상적으로 전달됩니다. 최종적으로 원격 수신자에 대한 두 개의 복사본과 로컬 수신자에 대한 하나의 복사본이 생성됩니다.

aliasdetourhost를 사용하는 채널에서는 로컬로 호스트된 사용자에 대해 대체 변환 채널을 사용하지 않고(단, 다른 수신자에 대해서는 여전히 대체 변환 채널을 사용할 수 있음) 다음 작업을 수행할 수 있습니다.

예 1:

타사 스캐너가 MTA에서 별개의 호스트에 실행 중이라고 가정합니다. 다음 예는 메일을 수락하기 전에 수신자 주소 검증을 수행하는 기능을 유지하면서도 가짜 복제본을 만들지 않고 사용자 항목을 전달할 수 었게 합니다.

  1. tcp_scanner 채널을 만듭니다.

    daemon 키워드를 해당 채널에 넣어 필터링 시스템을 가리킵니다. enqueue_removeroute도 이 채널에 추가합니다. tcp_scanner 채널은 imta.cnf에서 다음과 같이 표시됩니다.


    tcp_scanner smtp mx single_sys subdirs 20 noreverse maxjobs 7 
    pool SMTP_POOL daemon my_a-v_filter.siroe.com enqueue_removeroute
    tcp_scanner-daemon
    
  2. 스캔할 모든 인바운드 소스 tcp 채널(tcp_local, tcp_submit, tcp_intranet, tcp_auth 등)에서 aliasDetourHost tcp_scanner-daemontcp_local에 추가합니다. 다음은 tcp_localtcp_submit에 대한 예입니다.


    ! tcp_local
    tcp_local smtp mx single_sys remotehost inner switchchannel
    identnonenumeric subdirs 20 maxjobs 7 pool SMTP_POOL maytlsserver
    maysaslserver saslswitchchannel tcp_auth missingrecipientpolicy 0
    aliasdetourhost tcp_scanner-daemon
    tcp-daemon

    ! tcp_submit
    tcp_submit submit smtp mx single_sys mustsaslserver maytlsserver
    missingrecipientpolicy 4 aliasdetourhost tcp_scanner-daemon
    tcp_submit-daemon

    aliasdetourhost(tcp_scanner-daemon)의 인수는 새 채널 tcp_scanner의 공식 호스트 이름입니다.

  3. tcp_scanner 채널을 통해 스캔 시스템에서 메일을 다시 수신하기 위해 다시 쓰기 규 칙을 작성합니다.

    [1.2.3.4] $E$R$U[1.2.3.4]@tcp_scanner-daemon

    여기서 1.2.3.4는 스캐너 시스템의 IP 주소입니다.

    이 다시 쓰기 규칙이 없으면 메일이 다른 tcp* 소스 채널을 통해 들어오며 모든 메일에 aliasdetourhost가 있기 때문에 메일이 다시 스캔됩니다. 루프가 발생합니다.

  4. 구성을 다시 컴파일하고 디스패처를 다시 시작합니다.


    #imsimta cnbuild
    #imsimta restart dispatcher
    

예 2:

타사 스캐너가 MTA와 동일한 호스트에서 실행 중이지만 다른 포트를 수신한다고 가정 합니다. 메일이 포트 10024에서 수락되며 포트 10025에서 릴레이된다고 가정합니다.

  1. tcp_scanner 채널을 만듭니다.


    ! tcp_scanner
    tcp_scanner smtp nomx single_sys identnonenumeric subdirs 20 maxjobs 
    7 pool SCAN_POOL daemon 127.0.0.1 port 10024 enqueue_removeroute
    tcp_scanner-daemon
  2. 스캔할 모든 인바운드 소스 tcp 채널(tcp_local, tcp_submit, tcp_intranet 등)에서 aliasDetourHost tcp_scanner-daemontcp_local에 추가합니다. 다음은 tcp_localtcp_submit에 대한 예입니다.


    ! tcp_local
    tcp_local smtp mx single_sys remotehost inner switchchannel
    identnonenumeric subdirs 20 maxjobs 7 pool SMTP_POOL maytlsserver
    maysaslserversaslswitchchannel tcp_auth missingrecipientpolicy 0
    aliasdetourhost tcp_scanner-daemon
    tcp-daemon

    ! tcp_submit
    tcp_submit submit smtp mx single_sys mustsaslserver maytlsserver
    missingrecipientpolicy 4 aliasdetourhost tcp_scanner-daemon
    tcp_submit-daemon
  3. tcp_scanner 채널을 통해 아웃바운드 메일을 다시 라우팅하기 위해 mappings 파일에 추가합니다.

    CONVERSIONS
    
    in-chan=tcp_scanner;out-chan=*;CONVERT     No
    in-chan=tcp_*;out-chan=tcp_local;CONVERT   Yes,Channel=tcp_scanner
  4. SMTP_POOL 아래의 job_controller.cnf에서 동시 스캔 수에 대한 제한을 추가합니다.

    스캔 소프트웨어에도 제한이 있어야 하지만 Messaging Server가 메일을 수락하지 않을 경우에 스캐너로 메일을 전송하지 않도록 하기 위해서 이 설정을 동일하게 유지하는 것이 좋습니다.


    !
    [POOL=SCAN_POOL]
    job_limit=2
    !
  5. 새 서비스를 dispatcher.cnf에 추가하여 특정 포트에서 스캐너로부터 되돌아오는 메일을 수락하고 메일이 다시 스캔되지 않도록 tcp_scan에서 메일을 가져옵니다.


    !
    [SERVICE=SMTP_SCANNING]
    INTERFACE_ADDRESS=127.0.0.1
    PORT=10025
    IMAGE=IMTA_BIN:tcp_smtp_server
    LOGFILE=IMTA_LOG:tcp_smtp_server.log
    STACKSIZE=2048000
    PARAMETER=CHANNEL=tcp_scanner
    !
  6. 구성을 다시 컴파일하고 디스패처를 다시 시작합니다.


    # imsimta cnbuild
    # imsimta restart job_controller
    # imsimta restart dispatcher

NO-SOLICIT SMTP 확장 지원

키워드: sourcenosolicitdestinationnosolicit

draft-malamud-no-soliciting-07.txt에 설명된 NO-SOLICIT SMTP 확장은 Messaging Server에서 제안된 표준으로 구현되었습니다. 다음 채널 키워드를 사용하여 이 기능을 제어할 수 있습니다.

sourcenosolicit는 이 채널이 전송하는 메일에서 차단될 요청 필드 값의 쉼표로 구분된 목록을 지정합니다. 이 값 목록은 NO-SOLICIT EHLO 응답에 표시됩니다. 글롭 스타일 와일드카드를 이러한 값에서 사용할 수 있지만 와일드카드를 포함하는 값은 EHLO 알림에 표시되지 않습니다.

destinationnosolicit는 이 채널의 대기열에 포함된 메일에서 허용되지 않는 요청 필드 값의 쉼표로 구분된 목록을 지정합니다.

잘못된 RCPT TO: 주소에 대한 제한 설정

키워드: deferralrejectlimit

단일 세션에서 허용되는 잘못된 RCPT TO: 주소의 수에 제한을 설정합니다. 지정된 수의 To: 주소가 거부되면 모든 후속 수신자(잘못되었는지 여부에 상관없이)는 4xx 오류와 함께 거부됩니다. ALLOW_REJECTIONS_BEFORE_DEFERRAL SMTP 채널 키워드와 동일한 기능을 채널 단위로 제공합니다.