Sun Java System Messaging Server 6 2005Q4 管理指南

使用 Symantec Anti-Virus Scanning Engine (SAVSE)

除了說明如何部署 SAVSE 外,本小節還說明有關部署其他支援 ICAP 的防垃圾郵件/防病毒程式的資訊。本節包含以下小節:

SAVSE 簡介

SAVSE 是 TCP/IP 伺服器應用程式和提供病毒掃描服務的通訊應用程式程式設計介面 (API)。它是專門為保護通過或儲存於網路基礎架構裝置的通訊流而設計的,它會偵測並保護系統免受所有主要檔案類型 (包括行動碼和壓縮檔案格式) 中的病毒、蠕蟲和特洛伊木馬的影響。請參閱 Symantec website 以取得詳細資訊


備註 –

目前版本的 Messaging Server 僅支援 SAVSE 掃描功能。不支援修復或刪除功能。


SAVSE 需求與用法注意事項

這是 Symantec 單獨授權的產品。

僅支援掃描模式,不支援 SAVSE 配置中的掃描並修復或掃描並刪除模式。

SAVSE 在何處執行?

SAVSE 或其他支援 ICAP 的伺服器可在自身的獨立系統上執行,或與 Messaging Server 在同一系統上執行 (在單一系統部署中),或者與 MTA 在同一系統上執行 (在兩層部署中)。如果在 MTA 與郵件儲存之間使用本機郵件傳送協定 (LMTP),則必須從 MTA 呼叫篩選,而不可從郵件儲存呼叫篩選。如果在 MTA 與郵件儲存之間使用 SMTP,則可以從任意一方呼叫篩選,並可以在任一系統或獨立的協力廠商系統上執行篩選。

若要使用執行 SAVSE 的多台伺服器,則必須在其前端使用負載平衡器。僅使用一個位址來為 SpamAssassin 配置 MTA。

部署 SAVSE

執行以下步驟以部署 SAVSE。

SAVSE 配置範例

以下範例可測試到達本機郵件儲存的郵件並捨棄帶有附加病毒的郵件。前三個步驟可以任何次序執行。

Procedure配置 SAVSE

步驟
  1. 建立 SAVSE 配置檔案。

    此檔案的名稱和位置在下一步驟中指定。此處使用的名稱為 SAVSE.opt。此檔案的範例顯示如下:


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

    hostport 指定執行 SAVSE 程式的系統之名稱以及 SAVSE 程式偵聽內送請求時所在的連接埠號碼 (對 SAVSE 來說,預設值為 1344)。mode=0 指定如果偵測到郵件中包含病毒,則將傳回由 verdict 指定的字串 (此處為 virus)。debug=1 開啟除錯處理。請參閱SAVSE 選項,以取得有關 ICAP 配置參數的說明。

  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 指定對垃圾郵件執行篩選動作。此值可指定捨棄帶有病毒的郵件。由於這是預設值,所以無需指定,除非要變更此值。

  3. 指定要篩選的郵件。

    若要篩選進入本機郵件儲存的所有郵件,請將 destinationspamfilter1optin spam 關鍵字增加至 ims-ms 通道,以變更 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

其他可能的配置

mode 設定為 0 可與 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!]”;

可透過將 mode 設定為 2 以便在需要執行動作的情況下使用,而不考量是否已確定郵件含有病毒。增加可以後測試的標頭欄位明顯適用於模式 2:

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

SAVSE 選項

SAVSE 選項檔案確實是一個較通用的 ICAP 選項檔案。其名稱和位置由 option.dat 中的 spamfilterX_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_action 可用於指定傳回判定結果字串時所採取的作業。如果 verdict 選項為空或未設定,則傳回空判定結果。MTA 選項 spamfilterX_null_action 可用於指定傳回空判定結果以及您想置換預設動作 (即捨棄郵件) 時所執行的作業。

如果該郵件不包含病毒,將傳回預設字串。預設字串不可配置且始終表示不採取任何動作並正常投遞。 

1 - 如果發現郵件包含病毒,則傳回 ICAP 結果字串。 如果該郵件不包含病毒,將傳回預設字串。預設字串始終表示不採取任何動作並正常投遞。以下是兩個 ICAP 結果字串範例:

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

2 - 無條件地傳回 ICAP 結果字串;未傳回預設判定結果或空判定結果,並且從未使用 verdict 選項。此設定適用於無論郵件是否確定為含有病毒均需要採取一個動作的情況。增加可以後測試的標頭欄位明顯適用於模式 2:

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

3 - 如果發現郵件包含病毒,則傳回 ICAP 結果字串;否則傳回 verdict 選項所指定的判定結果字串。此設定適用於發現病毒時採取一個動作,沒發現病毒時採取另一個動作的情況。您可以使用相符的選項對 spamfilterX_verdict_nspamfilterX_action_n 來控制對 ICAP 結果字串執行的動作。您可以使用 spamfilterX_string_action 控制對 verdict 字串執行的動作。

port

指定執行 ICAP 伺服器時所在的連接埠號碼。

1344 

SOCKS_HOST

字串。指定中間 SOCKS 伺服器的名稱。如果已指定此選項,則可透過指定的 SOCKS 伺服器間接地建立 ICAP 連線。 

"" 

SOCKS_PORT

整數。指定中間 SOCKS 伺服器執行時所在的埠。 

1080 

SOCKS_PASSWORD

字串。指定透過 SOCKS 伺服器建立連線時所使用的密碼。是否需要使用者名稱密碼視 SOCKS 伺服器的配置而定。 

"" 

SOCKS_USERNAME

字串。指定透過 SOCKS 伺服器建立連線時所使用的使用者名稱。 

"" 

verdict

指定用於 MODE 0 和 3 的判定結果字串。 

"" 

ICAP mode 選項

處理郵件後,ICAP 防病毒程式 (如 SASVE) 將決定該郵件是否包含病毒。mode 可讓您指定 ICAP 程式傳回的、表示此判定結果的字串。字串選項為預設值ICAP 結果字串判定結果字串 (透過 verdict 選項指定)。請注意,預設值不是空、ICAP 結果字串,也不是由 verdict 指定的字串,而是由程式傳回的某些其他的不可配置的字串。下表概述了 mode 作業。

表 14–7 傳回的 ICAP mode 選項的判定結果字串

verdict\設定

是否病毒? 

mode=0

mode=1

mode=2

mode=3

verdict="" (未設定)

是 

空 

ICAP 結果 

ICAP 結果 

ICAP 結果 

no 

預設 

預設 

ICAP 結果 

預設 

verdict=string

是 

verdict string

ICAP 結果 

ICAP 結果 

ICAP 結果 

no 

預設 

預設 

ICAP 結果 

verdict string

第一欄表示 verdict 選項是否已經設定。第二欄表示郵件是否包含病毒。模式欄表示傳回的各種模式字串。例如,如果 verdict 未設定,mode 設定為 0 且郵件不包含病毒,則 ICAP 程式傳回預設值。如果將 verdict 設定為 WARNING VIRUS!mode 設定為 0,且郵件不包含病毒,則 ICAP 程式傳回字串 WARNING VIRUS!