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

配置 LMTP 傳送

配置 LMTP 傳送機制需要對轉送器和後端進行配置。在轉送器上,必須變更 DELIVERY_OPTIONS MTA 選項 (在 option.dat 中),以便將要傳送至儲存的郵件傳送至 LMTP 通道。必須使用派送程式 (但不需要工作控制器) 配置後端儲存。必須配置派送程式以執行 LMTP 伺服器。

在典型的多層部署中,使用者佈建在不同的後端郵件儲存機器上。這些後端機器中的一台或多台可能並未開啟 LMTP,因此前端轉送需要瞭解哪些儲存機器可識別 LMTP。您可以使用一般資料庫功能明確命名那些配置為接受 LMTP 遞送的郵件儲存,以實現此目的。

Procedure使用 LMTP 配置內送 MTA 轉送

若要配置內送 MTA 轉送以使用 LMTP,請執行以下作業:

步驟
  1. 修改您的 imta.cnf 檔案,並將 LMTP 重寫規則變更為讀取:


    ! lmtp
    .lmtp   $E$F$U%$H.lmtp@lmtpcs-daemon
    .lmtp   $B$F$U%$H@$H@lmtpcs-daemon
    !
    ! lmtp native
    .lmtpn  $E$F$U%$H.lmtpn@lmtpcn-daemon
    .lmtpn  $B$F$U%$H@$H@lmtpcn-daemon
    !
  2. 將電子信箱 DELIVERY_OPTIONS 設定成:


    #*mailbox=@$X.LMTP:$M%$\$2I$_+$2S@lmtpcs-daemon
  3. 將原生 DELIVERY_OPTIONS 表示式設定成:


    #*native=@$X.LMTPN:$M+$2S@native-daemon
  4. 將通道關鍵字 multigate connectcanonical 增加至每個 tcp_lmtp* 通道區段。

  5. 將下列通道關鍵字增加至 tcp_lmtpcs 通道:


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

    請注意,上述關鍵字的「O」為大寫字母 O,不是零。

  6. 內送 MTA 轉送配置設定應如下所示:

    DELIVERY_OPTIONSoption.dat 項目應如下所示:


    !------------------------------------------
    ! Modified DELIVERY_OPTIONS to activate LMTP 
    ! delivery from a frontend to the backend store
    !--------------------------------------------
    !
    DELIVERY_OPTIONS=\
        #*mailbox=@$X.LMTP:$M%$\$2I$_+$2S@lmtpcs-daemon,\
        #&members=*,\
        #*native=@$X.LMTPN:$M+$2S@native-daemon,\
        #*unix=@$X.LMTPN:$M,\
        #*file=@$X.LMTPN:+$F,\
        #&@members_offline=*,\
        #/hold=@hold-daemon:$A,\
        #program=$M%$P@pipe-daemon,\
        #forward=**,\
        #*^!autoreply=$M+$D@bitbucket
    !

    變更修改的 imta.cnf 重寫規則之後,應如下所示:


    ! lmtp
    .lmtp   $E$F$U%$H.lmtp@lmtpcs-daemon
    .lmtp   $B$F$U%$H@$H@lmtpcs-daemon
    !
    ! lmtp native
    .lmtpn  $E$F$U%$H.lmtpn@lmtpcn-daemon
    .lmtpn  $B$F$U%$H@$H@lmtpcn-daemon
    !

    變更的通道區段應如下所示:


    !
    ! tcp_lmtpcs (LMTP client - store)
    tcp_lmtpcs defragment lmtp  multigate connectcanonical \
       fileinto @$4O:$U+$S@$D port 225 nodns single_sys \
       subdirs 20 maxjobs 7 pool SMTP_POOL dequeue_removeroute
    lmtpcs-daemon
    
    !
    ! tcp_lmtpcn (LMTP client - native)
    tcp_lmtpcn defragment lmtp multigate connectcanonical port 226 \
       nodns single_sys subdirs 20 maxjobs 7 pool SMTP_POOL 
       dequeue_removeroute
    lmtpcn-daemon

配置使用 LMTP 而不使用 MTA 的後端儲存

如果後端儲存經由 LMTP 接收郵件,則不需要 MTA。這表示它們沒有工作控制器,且沒有任何位址重寫工具與 MTA 關聯。但是,它們仍需要派送程式和簡單的 MTA 配置。特別是,它們需要 dispatcher.cnf 檔案和 mappings 檔案,這兩個檔案將構成 MTA 配置的唯一重要部分。

dispatcher.cnf 檔案必須包含以下內容:


! rfc 2033 LMTP server - store 
!
[SERVICE=LMTPSS]
PORT=225
IMAGE=IMTA_BIN:tcp_lmtp_server
LOGFILE=IMTA_LOG:tcp_lmtpss_server.log
PARAMETER=CHANNEL=tcp_lmtpss
STACKSIZE=2048000
! Uncomment the following line and set INTERFACE_ADDRESS to an 
! appropriate host IP (dotted quad) if the dispatcher needs to 
! listen on a specific interface (e.g. in a HA environment).
! INTERFACE_ADDRESS=!
! rfc 2033 LMTP server - native
!
[SERVICE=LMTPSN]
PORT=226
IMAGE=IMTA_BIN:tcp_lmtpn_server
LOGFILE=IMTA_LOG:tcp_lmtpsn_server.log
PARAMETER=CHANNEL=tcp_lmtpsn
STACKSIZE=2048000
! Uncomment the following line and set INTERFACE_ADDRESS to an 
! appropriate host IP (dotted quad) if the dispatcher needs to 
!listen on a specific interface (e.g. in a HA environment).
!INTERFACE_ADDRESS=
         

請注意,依預設,dispatcher.cnf 檔案中的 LMTP 服務均已被註釋。您必須取消註釋,才能使 LMTP 運作。

還可以設定 MAX_CONNSMAX_PROCSMAX_LIFE_CONNSMAX_LIFE_TIME 的一般派送程式選項,但設定必須符合硬體要求。

PORT_ACCESS 對映很重要。後端伺服器的 LMTP 實作將用做 Sun Java System Messaging Server 轉送器和後端儲存之間的專用協定。必須使用 PORT_ACCESS 對映以確保僅此類轉送器可以連線至這些服務。您的對映檔案應類似於:


PORT_ACCESS

  TCP|*|225|1.2.3.4|* $Y
  TCP|*|226|1.2.3.4|* $Y
  TCP|*|225|1.2.3.5|* $Y
  TCP|*|226|1.2.3.5|* $Y
  TCP|*|*|*|*   $N500$ Do$ not$ connect$ to$ this$ machine
         

應使用網路上連線至後端儲存的轉送器 IP 位址替代此處 PORT_ACCESS 對映表中指定的範例 IP 位址。

必須有一個 imta.cnf 檔案,但它僅用於使配置完整。最小的 imta.cnf 檔案應包含以下通道定義:

! tcp_lmtpss (LMTP server - store)
tcp_lmtpss lmtp 
tcp_lmtpss-daemon

!
! tcp_lmtpsn (LMTP server - native)
tcp_lmtpsn lmtp 
tcp_lmtpsn-daemon

請注意,依預設,LMTP 通道定義已被註釋。如果您要 LMTP 運作,必須取消註釋。

配置轉送以經由 LMTP 將郵件傳送至帶有郵件儲存和完整 MTA 的後端系統

在某些情況下,您可能希望後端儲存具有 MTA 的完整功能,但仍具有使用 LMTP 的載入保存功能。例如,您可能需要後端儲存上的程式遞送。這種情況下,應按以上使用 LMTP 配置內送 MTA 轉送中的說明配置轉送器。

在具有完整 MTA 的後端郵件儲存系統上配置 LMTP

從後端儲存郵件傳送系統的配置到使用 LMTP 直接傳送至儲存的配置的唯一變更是,需要將以下行加入 dispatcher.cnf 檔案的結尾:


! rfc 2033 LMTP server - store
![SERVICE=LMTPSS]
PORT=225
IMAGE=IMTA_BIN:tcp_lmtp_server
LOGFILE=IMTA_LOG:tcp_lmtpss_server.log
PARAMETER=CHANNEL=tcp_lmtpss
STACKSIZE=2048000
! Uncomment the following line and set INTERFACE_ADDRESS to an 
! appropriate host IP (dotted quad) if the dispatcher needs to 
! listen on a specific interface (e.g. in a HA environment).
!INTERFACE_ADDRESS=
!
! rfc 2033 LMTP server - native
!
[SERVICE=LMTPSN]
PORT=226
IMAGE=IMTA_BIN:tcp_lmtpn_server
LOGFILE=IMTA_LOG:tcp_lmtpsn_server.log
PARAMETER=CHANNEL=tcp_lmtpsn
STACKSIZE=2048000
! Uncomment the following line and set INTERFACE_ADDRESS to an 
! appropriate host IP (dotted quad) if the dispatcher needs to 
! listen on a specific! interface (e.g. in a HA environment).
!INTERFACE_ADDRESS=
!
         

請注意,依預設,對 dispatcher.cnf 檔案中的 LMTP 服務均已進行註釋。您必須取消註釋,才能使 LMTP 運作。此外,這些 LMTP 連接埠號碼只是範例,您可以選擇任何號碼。

這與以上整個 dispatcher.cnf 檔案就何時為後端儲存僅配置 LMTP 所說明的內容相同。對映檔案還需要 PORT_ACCESS 對映,正如僅 LMTP 僅需要後端儲存一樣。