Sun Java System Messaging Server 6.3 管理指南

第 12 章 配置通道定義

本章說明如何使用 MTA 配置檔案 imta.cnf 中的通道關鍵字定義。閱讀本章前,請先參閱第 10 章, 關於 MTA 服務和配置以及8.5.3 通道定義10.2 MTA 配置檔案。本章包含以下各節:


備註 –

如果變更了 imta.cnf 中的通道定義,就必須使用 imsimta restart 指令,重新啟動僅在啟動時才載入一次配置資料的所有程式或通道,例如 SMTP 伺服器。如果您使用已編譯的配置,則必須重新編譯然後再重新啟動。如需有關編譯配置資訊和啟動程式的更多資訊,請參閱「Sun Java System Messaging Server 6.3 Administration Reference」


12.1 配置通道預設

許多配置涉及到對所有或幾乎所有通道重複使用各種通道關鍵字。維護這樣一種配置不僅繁瑣而且容易出錯。為簡化某些配置,您可以為各種通道指定預設關鍵字。

例如,配置檔案中的以下一行表示跟隨在該行之後的所有通道區塊都將繼承該行中指定的關鍵字:

defaults keyword1 keyword2 keyword3 ...

defaults 行可視為特殊的通道區塊,該區塊可變更關鍵字 defaults 而無需實際指定通道。defaults 行也不需要其他任何通道區塊資訊行 (若有指定,將會忽略)。

可以指定 defaults 行的數量沒有限制 — 多個 defaults 行的效果會累積,最後遇到的 (從上向下讀取) 行具有較高的優先順序。

無條件結束配置檔案中從某點 (例如,外部檔案中通道區塊獨立區段的起點) 開始的所有 defaults 行的效果可能會有用。nodefaults 行就用於此目的。例如,在配置檔案中插入以下行,就可使先前所有預設通道所建立的所有設定無效,並讓配置返回到未指定預設時要套用的狀態。

nodefaults

如同常規通道區塊,每個 defaultsnodefaults 通道區塊與其他通道區塊之間都必須有空行來進行分隔。在配置檔案中,只有 defaultsnodefaults 通道區塊才能出現在本機通道之前。但是,如同任何其他通道區塊,這兩種通道區塊必須出現在最後一個重寫規則之後。

12.2 通道關鍵字 (依字母順序列出)

下表是依字母順序列出的關鍵字清單。

表 12–1 依字母順序列出的通道關鍵字清單

關鍵字 

更多資訊... 

733 

12.6.1 位址類型和慣例

822 

12.6.1 位址類型和慣例

addreturnpath

12.6.11 產生 Return-path 標頭行

addresssrs

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

addrsperfile

12.9.4 處理對超過配額的使用者的郵件遞送

Aliasdetourhost

12.12.6 位址驗證之後擴充之前的路由

aliaslocal

12.6.15 指定別名檔案和別名資料庫探測

aliaspostmaster

Postmaster 返回的郵件內容

allowetrn

12.4.2.3 ETRN 指令支援

allowswitchchannel

12.4.3.8 內送的郵件的替代通道 (切換通道)

alternatechannel

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

alternateblocklimit

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

alternatelinelimit

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

alternaterecipientlimit

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

authrewrite

12.4.3 TCP/IP 連線和 DNS 查詢支援

backoff

12.5.3 指定遞送失敗之郵件的重試頻率

bangoverpercent

12.6.3 在位址中新增路由資訊

bangstyle

12.6.1 位址類型和慣例

bidirectional

12.5.1 設定通道定向性

blocketrn

12.4.2.3 ETRN 指令支援

blocklimit

12.9.2 指定絕對郵件大小限制

cacheeverything

12.4.3.2 快取通道連線資訊

cachefailures

12.4.3.2 快取通道連線資訊

cachesuccesses

12.4.3.2 快取通道連線資訊

caption

12.12.9 設定 Monitoring Framework 的通道顯示

channelfilter

12.12.4 指定電子信箱篩選器檔案位置

charset7

12.4.2.7 字元集標記與八位元資料

charset8

12.4.2.7 字元集標記與八位元資料

charsetesc

12.4.2.7 字元集標記與八位元資料

checkehlo

12.4.2.2 EHLO 指令支援

chunkingclient

12.4.6 SMTP 資料塊支援

chunkingserver

12.4.6 SMTP 資料塊支援

commentinc

12.6.13 處理位址標頭行中的註釋

commentmap

12.6.13 處理位址標頭行中的註釋

commentomit

12.6.13 處理位址標頭行中的註釋

commentstrip

12.6.13 處理位址標頭行中的註釋

commenttotal

12.6.13 處理位址標頭行中的註釋

connectalias

12.6.5 郵件移出佇列時重寫位址

connectcanonical

12.6.5 郵件移出佇列時重寫位址

copysendpost

傳回失敗郵件

copywarnpost

警告郵件

daemon

12.4.3.10 目標主機選擇

datefour

12.7.4 轉換日期為兩位數或四位數

datetwo

12.7.4 轉換日期為兩位數或四位數

dayofweek

12.7.5 在日期中指定星期

defaulthost

12.6.6 指定校正不完整的位址時要使用的主機名稱

defaultmx

12.4.3.5 TCP/IP MX 記錄支援

defaultnameservers

12.4.3.6 名稱伺服器查詢

deferralrejectlimit

12.12.8 設定對錯誤 RCPT TO 位址的限制

deferred

12.5.2 實作延遲遞送日期

defragment

12.8.2 郵件/部分郵件的自動重組

dequeue_removeroute

12.6.18 移除來源路徑

description

12.12.9 設定 Monitoring Framework 的通道顯示

destinationfilter

12.12.4 指定電子信箱篩選器檔案位置

destinationnosolicit

12.12.7 NO-SOLICIT SMTP 延伸支援

destinationspamfilterX 

12.12.5 垃圾郵件篩選器關鍵字

destinationspamfilterXoptin 

12.12.5 垃圾郵件篩選器關鍵字

destinationsrs

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

disabledestinationspamfilterX 

12.12.5 垃圾郵件篩選器關鍵字

disableetrn

12.4.2.3 ETRN 指令支援

disablesourcespamfilterX 

12.12.5 垃圾郵件篩選器關鍵字

dispositionchannel

12.12.1 程序通道覆寫

disconnectbadauthlimit

12.9.1 對不成功的認證嘗試的限制

disconnectbadcommandlimit

12.10.3 設定階段作業限制

domainetrn

12.4.2.3 ETRN 指令支援

domainvrfy

12.4.2.4 VRFY 指令支援

dropblank

12.6.8 刪除非法空白收件者標頭

ehlo

12.4.2.2 EHLO 指令支援

eightbit

12.4.2.7 字元集標記與八位元資料

eightnegotiate

12.4.2.7 字元集標記與八位元資料

eightstrict

12.4.2.7 字元集標記與八位元資料

errsendpost

傳回失敗郵件

errwarnpost

警告郵件

expandchannel

12.5.9 多位址延伸

expandlimit

12.5.9 多位址延伸

expnallow

12.4.2.5 EXPN 支援

expndisable

12.4.2.5 EXPN 支援

expndefault

12.4.2.5 EXPN 支援

exproute

12.6.3 在位址中新增路由資訊

fileinto

12.12.4 指定電子信箱篩選器檔案位置

filesperjob

12.5.5 服務工作限制

filter

12.12.4 指定電子信箱篩選器檔案位置

forwardcheckdelete

12.4.3.3 反向 DNS 查詢

forwardchecknone

12.4.3.3 反向 DNS 查詢

forwardchecktag

12.4.3.3 反向 DNS 查詢

header_733

12.6.1 位址類型和慣例

header_822

12.6.1 位址類型和慣例

header_uucp

12.6.1 位址類型和慣例

headerlabelalign

12.7.7 標頭對齊和摺疊

headerlimit

12.9.8 限制標頭大小

headerlinelength

12.7.7 標頭對齊和摺疊

headerread

12.7.2 移除選取的郵件標頭行

headertrim

12.7.2 移除選取的郵件標頭行

holdexquota

12.9.4 處理對超過配額的使用者的郵件遞送

holdlimit

12.5.9 多位址延伸

identnone

12.4.3.4 IDENT 查詢

identnonelimited

12.4.3.4 IDENT 查詢

identnonenumeric

12.4.3.4 IDENT 查詢

identnonesymbolic

12.4.3.4 IDENT 查詢

identtcp

12.4.3.4 IDENT 查詢

identtcplimited

12.4.3.4 IDENT 查詢

identtcpsymbolic

12.4.3.4 IDENT 查詢

ignoreencoding

12.8.1 忽略 Encoding 標頭行

ignoremessageencoding

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

ignoremultipartencoding

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

immnonurgent

12.5.2 實作延遲遞送日期

improute

12.6.3 在位址中新增路由資訊

includefinal

10.10.4.4 在狀態通知郵件中包含已改變的位址

inenttcpnumeric

12.4.3.4 IDENT 查詢

inner

12.7.1 重寫內嵌式標頭

innertrim

12.7.2 移除選取的郵件標頭行

interfaceaddress

12.4.3.1 TCP/IP 連接埠號和介面位址

interpretencoding

12.8.1 忽略 Encoding 標頭行

interpretmessageencoding

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

interpretmultipartencoding

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

language

12.7.10 設定標頭中的預設語言

lastresort

12.4.3.7 最後一台主機

linelength

12.8.4 設定郵件行長度限制

linelimit

12.9.2 指定絕對郵件大小限制

localvrfy

12.4.2.4 VRFY 指令支援

logging

12.11.1 記錄關鍵字

logheader

12.11.1 記錄關鍵字

loopcheck

12.11.3 設定迴圈檢查

mailfromdnsverify

12.4.2.6 DNS 網域驗證

master

12.5.1 設定通道定向性

master_debug

12.11.2 除錯關鍵字

maxblocks

12.8.3 大型郵件的自動分段程序

maxheaderaddrs

12.7.6 自動分割長標頭行

maxheaderchars

12.7.6 自動分割長標頭行

maxjobs

12.5.5 服務工作限制

maxlines

12.8.3 大型郵件的自動分段程序

maxprocchars

12.7.7 標頭對齊和摺疊

maysaslserver

12.4.4 SMTP 認證、SASL 與 TLS

maytls

12.4.8 傳輸層安全

maytlsclient

12.4.8 傳輸層安全

maytlsserver

12.4.8 傳輸層安全

missingrecipientpolicy

12.6.7 合法化無收件者標頭行的郵件

msexchange

12.4.7 指定 Microsoft Exchange 閘道通道

multiple

12.9.4 處理對超過配額的使用者的郵件遞送

mustsaslserver

12.4.4 SMTP 認證、SASL 與 TLS

musttls

12.4.8 傳輸層安全

musttlsclient

12.4.8 傳輸層安全

musttlsserver

12.4.8 傳輸層安全

mx

12.4.3.5 TCP/IP MX 記錄支援

namelengthlimit

12.9.6 控制一般和檔案名稱內容類型及內容處理參數的長度

nameservers

12.4.3.6 名稱伺服器查詢

noaddresssrs

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

noaddreturnpath

12.6.11 產生 Return-path 標頭行

nobangoverpercent

12.6.3 在位址中新增路由資訊

noblocklimit

12.9.2 指定絕對郵件大小限制

nocache

12.4.3.2 快取通道連線資訊

nochannelfilter

12.12.4 指定電子信箱篩選器檔案位置

nochunkingclient 

12.4.6 SMTP 資料塊支援

nochunkingserver 

12.4.6 SMTP 資料塊支援

nodayofweek

12.7.5 在日期中指定星期

nodefaulthost

12.6.6 指定校正不完整的位址時要使用的主機名稱

nodeferred

12.5.2 實作延遲遞送日期

nodefragment

12.8.2 郵件/部分郵件的自動重組

nodestinationfilter

12.12.4 指定電子信箱篩選器檔案位置

nodestinationsrs

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

nodropblank

12.6.8 刪除非法空白收件者標頭

noehlo

12.4.2.2 EHLO 指令支援

noexproute

12.6.3 在位址中新增路由資訊

noexquota

12.9.4 處理對超過配額的使用者的郵件遞送

nofileinto

12.12.4 指定電子信箱篩選器檔案位置

nofilter

12.12.4 指定電子信箱篩選器檔案位置

noheaderread

12.7.2 移除選取的郵件標頭行

noheadertrim

12.7.2 移除選取的郵件標頭行

noimproute

12.6.3 在位址中新增路由資訊

noinner

12.7.1 重寫內嵌式標頭

noinnertrim

12.7.2 移除選取的郵件標頭行

nolinelimit

12.9.2 指定絕對郵件大小限制

nologging

12.11.1 記錄關鍵字

noloopcheck

12.11.3 設定迴圈檢查

nomailfromdnsverify

12.4.2.6 DNS 網域驗證

nomaster_debug

12.11.2 除錯關鍵字

nomsexchange

12.4.3 TCP/IP 連線和 DNS 查詢支援

nomx

12.4.3.5 TCP/IP MX 記錄支援

norandomemx

12.4.3.5 TCP/IP MX 記錄支援

nosourcesrs

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

nonurgentbackoff

12.5.3 指定遞送失敗之郵件的重試頻率

nonurgentblocklimit

12.5.7 基於大小的郵件優先順序

nonurgentnotices

10.10.4.3 設定通知郵件遞送間隔時間

noreceivedfor

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

noreceivedfrom

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

noremotehost

12.6.6 指定校正不完整的位址時要使用的主機名稱

norestricted

12.6.10 啟用有限電子信箱編碼

noreturnaddress

Postmaster 返回的郵件內容

noreturnpersonal

Postmaster 返回的郵件內容

noreverse

12.6.9 啟用通道特定的反向資料庫用途

normalbackoff

12.5.3 指定遞送失敗之郵件的重試頻率

normalblocklimit

12.5.7 基於大小的郵件優先順序

normalnotices

10.10.4.3 設定通知郵件遞送間隔時間

norules

12.6.17 啟用通道特定的重寫規則檢查

nosasl

12.4.4 SMTP 認證、SASL 與 TLS

nosaslserver

12.4.4 SMTP 認證、SASL 與 TLS

nosaslswitchchannel

12.4.4 SMTP 認證、SASL 與 TLS

nosendetrn

12.4.2.3 ETRN 指令支援

nosendpost

傳回失敗郵件

noservice

12.5.10 啟用服務轉換

noslave_debug

12.11.2 除錯關鍵字

nosmtp

12.4.2.1 通道協定選取和行終止符號

nosourcefilter

12.12.4 指定電子信箱篩選器檔案位置

noswitchchannel

12.4.3.8 內送的郵件的替代通道 (切換通道)

notices

10.10.4.3 設定通知郵件遞送間隔時間

notificationchannel

12.12.1 程序通道覆寫

notls

12.4.8 傳輸層安全

notlsclient

12.4.8 傳輸層安全

notlsserver

12.4.8 傳輸層安全

novrfy

12.4.2.4 VRFY 指令支援

nowarnpost

警告郵件

nox_env_to

12.7.3 產生/移除 X-Envelope-to 標頭行

parameterlengthlimit

12.9.6 控制一般和檔案名稱內容類型及內容處理參數的長度

percentonly

12.6.3 在位址中新增路由資訊

percents

12.6.1 位址類型和慣例

personalinc

12.6.14 處理位址標頭行中的個人名稱

personalmap

12.6.14 處理位址標頭行中的個人名稱

personalomit

12.6.14 處理位址標頭行中的個人名稱

personalstrip

12.6.14 處理位址標頭行中的個人名稱

pool

12.5.4 通道執行工作的處理區

port

12.4.3.1 TCP/IP 連接埠號和介面位址

postheadbody

Postmaster 返回的郵件內容

postheadonly

Postmaster 返回的郵件內容

randommx

12.4.3.5 TCP/IP MX 記錄支援

receivedfor

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

receivedfrom

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

recipientcutoff

12.9.7 限制郵件收件者

recipientlimit

12.9.7 限制郵件收件者

rejectsmtplonglines

12.9.5 處理行長度超過 1000 個字元的 SMTP 郵件

remotehost

12.6.6 指定校正不完整的位址時要使用的主機名稱

restricted

12.6.10 啟用有限電子信箱編碼

returnaddress

Postmaster 返回的郵件內容

returnenvelope

空白訊息封傳回位址

returnpersonal

Postmaster 返回的郵件內容

reverse

12.6.9 啟用通道特定的反向資料庫用途

routelocal

12.6.4 停用明確的路由位址之重寫功能

rules

12.6.17 啟用通道特定的重寫規則檢查

saslswitchchannel

12.4.4 SMTP 認證、SASL 與 TLS

sendetrn

12.4.2.3 ETRN 指令支援

sendpost

傳回失敗郵件

sensitivitycompanyconfidential 

12.7.9 敏感性檢查

sensitivitynormal

12.7.9 敏感性檢查

sensitivitypersonal

12.7.9 敏感性檢查

sensitivityprivate

12.7.9 敏感性檢查

service

12.5.10 啟用服務轉換

sevenbit

12.4.2.7 字元集標記與八位元資料

silentetrn

12.4.2.3 ETRN 指令支援

single

12.9.4 處理對超過配額的使用者的郵件遞送

single_sys

12.4.3.10 目標主機選擇

slave

12.5.1 設定通道定向性

slave_debug

12.11.2 除錯關鍵字

smtp

12.4.2.1 通道協定選取和行終止符號

smtp_cr

12.4.2.1 通道協定選取和行終止符號

smtp_crlf

12.4.2.1 通道協定選取和行終止符號

smtp_crorlf

12.4.2.1 通道協定選取和行終止符號

smtp_lf

12.4.2.1 通道協定選取和行終止符號

sourceblocklimit

12.9.2 指定絕對郵件大小限制

sourcecommentinc

12.6.13 處理位址標頭行中的註釋

sourcecommentmap

12.6.13 處理位址標頭行中的註釋

sourcecommentomit

12.6.13 處理位址標頭行中的註釋

sourcecommentstrip

12.6.13 處理位址標頭行中的註釋

sourcecommenttotal

12.6.13 處理位址標頭行中的註釋

sourcefilter

12.12.4 指定電子信箱篩選器檔案位置

sourcenosolicit

12.12.7 NO-SOLICIT SMTP 延伸支援

sourcepersonalinc

12.6.14 處理位址標頭行中的個人名稱

sourcepersonalmap

12.6.14 處理位址標頭行中的個人名稱

sourcepersonalomit

12.6.14 處理位址標頭行中的個人名稱

sourcepersonalstrip

12.6.14 處理位址標頭行中的個人名稱

sourceroute

12.6.1 位址類型和慣例

sourcespamfilterX

12.12.5 垃圾郵件篩選器關鍵字

sourcespamfilterXoptin

12.12.5 垃圾郵件篩選器關鍵字

sourcesrs

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

streaming

12.4.2.8 協定串流

subaddressexact

12.6.16 子位址處理

subaddressrelaxed

12.6.16 子位址處理

subaddresswild

12.6.16 子位址處理

subdirs

12.10.2 跨多個子目錄分佈通道郵件佇列

submit

12.12.2 通道作業類型

suppressfinal

10.10.4.4 在狀態通知郵件中包含已改變的位址

switchchannel

12.4.3.8 內送的郵件的替代通道 (切換通道)

threaddepth

12.5.8 SMTP 通道執行緒

tlsswitchchannel

12.4.8 傳輸層安全

transactionlimit

12.5.6 設定連線作業事件限制

truncatesmtplonglines

12.9.5 處理行長度超過 1000 個字元的 SMTP 郵件

unrestricted

12.6.10 啟用有限電子信箱編碼

urgentbackoff

12.5.3 指定遞送失敗之郵件的重試頻率

urgentblocklimit

12.5.7 基於大小的郵件優先順序

urgentnotices

10.10.4.3 設定通知郵件遞送間隔時間

useintermediate

10.10.4.4 在狀態通知郵件中包含已改變的位址

user

12.12.3 管道通道

userswitchchannel

12.4.3.9 來源通道會根據使用者或網域設定進行切換

uucp

12.6.1 位址類型和慣例

viaaliasoptional

12.6.19 指定位址必須來自別名

viaaliasrequired

12.6.19 指定位址必須來自別名

vrfyallow

12.4.2.4 VRFY 指令支援

vrfydefault

12.4.2.4 VRFY 指令支援

vrfyhide

12.4.2.4 VRFY 指令支援

warnpost

警告郵件

wrapsmtplonglines

12.9.5 處理行長度超過 1000 個字元的 SMTP 郵件

x_env_to

12.7.3 產生/移除 X-Envelope-to 標頭行

12.3 通道關鍵字 (依功能分類)

下表是關鍵字分類清單。表格和種類如下:

表 12–2 位址處理關鍵字

關鍵字 

頁數 

定義 

位址處理 

733 

在訊息封中使用 % 路由;與 percents 同義。12.6.1 位址類型和慣例

822 

12.6.1 位址類型和慣例

在訊息封中使用來源路由;與 sourceroute 相同。

addreturnpath 

12.6.11 產生 Return-path 標頭行

Return-path: 標頭增加至在此通道上排入佇列的郵件中。

aliaslocal 

12.6.15 指定別名檔案和別名資料庫探測

在檔案和資料庫中查詢重寫的位址。 

authrewrite 

12.4.3 TCP/IP 連線和 DNS 查詢支援

用於來源通道讓將經認證的創建者資訊 (如果有) 傳至標頭。 

bangoverpercent 

12.6.3 在位址中新增路由資訊

將 A!B%C 群組為 A!(B%C) 

bangstyle 

12.6.1 位址類型和慣例

使用 UUCP ! 在訊息封中使用 % 路由;與 uucp 同義。

defaulthost 

12.6.6 指定校正不完整的位址時要使用的主機名稱

指定用於使位址完整的網域名稱 

dequeue_removeroute 

12.6.18 移除來源路徑

從信息封 To: 位址中移除來源路由。

exproute 

12.6.3 在位址中新增路由資訊

當位址傳送至遠端系統時需要明確的路由。 

holdlimit 

12.5.9 多位址延伸

當郵件訊息封收件者位址數量超過此限制時扣留該郵件。 

improute 

12.6.3 在位址中新增路由資訊

對於此通道的位址進行隱式路由 

missingrecipientpolicy 

12.6.7 合法化無收件者標頭行的郵件

為如何使缺少任何收件者標頭的郵件合法化 (加入哪些標頭) 設定策略。 

noaddreturnpath 

12.6.11 產生 Return-path 標頭行

郵件排入佇列時,請勿增加 Return-path: 標頭。

nobangoverpercent 

12.6.3 在位址中新增路由資訊

將 A!B%C 群組為 (A!B)%C 

nodefaulthost 

12.6.6 指定校正不完整的位址時要使用的主機名稱

不指定用於使位址完整的網域名稱 

noexproute 

12.6.3 在位址中新增路由資訊

對於此通道的位址沒有明確的路由。 

noimproute 

12.6.3 在位址中新增路由資訊

對於此通道的位址沒有隱式路由。 

noreceivedfrom 

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

建構 Received: 標頭行,但不包含原始訊息封 From: 位址。

noremotehost 

12.6.6 指定校正不完整的位址時要使用的主機名稱

使用本地主機的網域名稱做為預設的網域名稱,使位址完整 

norestricted 

12.6.10 啟用有限電子信箱編碼

unsrestricted 相同。

noreverse 

12.6.9 啟用通道特定的反向資料庫用途

郵件中的位址免於進行位址反向處理 

norules 

12.6.17 啟用通道特定的重寫規則檢查

不強制檢查此通道的通道特定重寫規則。 

percentonly 

12.6.3 在位址中新增路由資訊

忽略路徑。在訊息封中使用 % 路由。 

percents 

12.6.1 位址類型和慣例

在訊息封中使用 % 路由;與 733 同義。

remotehost 

12.6.6 指定校正不完整的位址時要使用的主機名稱

使用遠端主機名稱做為預設的網域名稱,使位址完整 

restricted 

12.6.10 啟用有限電子信箱編碼

通道連線至需要編碼的郵件系統。 

reverse 

12.6.9 啟用通道特定的反向資料庫用途

對照位址反向資料庫或 REVERSE 對映檢查位址。 

routelocal 

12.6.4 停用明確的路由位址之重寫功能

將位址重寫至通道時,使 MTA 嘗試讓位址中任何明確的路由「短路」。 

rules 

12.6.17 啟用通道特定的重寫規則檢查

強制檢查此通道的通道特定重寫規則。 

sourceroute 

12.6.1 位址類型和慣例

822 同義。

subaddressexact 

12.6.16 子位址處理

項目比對期間不執行特殊的子位址處理;整個電子信箱 (包括子位址) 必須符合某個項目以使別名被視為相符。 

subaddressrelaxed 

12.6.16 子位址處理

尋找完全相符且符合形式「名稱+*」的項目之後,MTA 應額外檢查相符項目的名稱部分。 

subaddresswild 

12.6.16 子位址處理

尋找完全相符包括整個子位址的項目之後,MTA 應接著尋找「名稱+*」形式的項目。 

unrestricted 

12.6.10 啟用有限電子信箱編碼

告知 MTA 不執行 RFC 1137 編碼和解碼。 

uucp 

12.6.1 位址類型和慣例

在訊息封中使用 UUCP! 路由;與 bangstyle 同義。 

viaaliasoptional 

12.6.19 指定位址必須來自別名

符合通道的最終收件者位址不需要由別名產生。 

viaaliasrequired 

12.6.19 指定位址必須來自別名

符合通道的最終收件者位址必須由別名產生。 

表 12–3 附件和 MIME 處理

關鍵字 

定義 

defragment 

12.8.2 郵件/部分郵件的自動重組

在通道上排入佇列的部分郵件改為放置於重組通道佇列中。 

ignoreencoding 

12.8.1 忽略 Encoding 標頭行

忽略內送郵件的 Encoding: 標頭。

ignoremessageencoding 

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

忽略內送郵件中郵件/rfc822 部分的 content-transfer-encoding 欄位。 

ignoremultipartencoding 

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

忽略內送郵件中 multiparts 部分的 content-transfer-encoding 欄位。 

interpretencoding 

12.8.1 忽略 Encoding 標頭行

必要時,解釋內送郵件的 Encoding: 標頭。

interpretmessageencoding 

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

解譯內送郵件中郵件/rfc822 部分的 content-transfer-encoding 欄位。 

interpretmultipartencoding 

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

解譯內送郵件中 multiparts 部分的 content-transfer-encoding 欄位。 

nodefragment 

12.8.2 郵件/部分郵件的自動重組

停用重組。 

表 12–4 字元集與八位元資料

關鍵字 

定義 

charset7 

12.4.2.7 字元集標記與八位元資料

與 7 位元文字郵件關聯的預設字元集 

charset8 

12.4.2.7 字元集標記與八位元資料

與 8 位元文字郵件關聯的預設字元集 

charsetesc 

12.4.2.7 字元集標記與八位元資料

與包含退出字元的 7 位元文字關聯的預設字元集 

eightbit 

12.4.2.7 字元集標記與八位元資料

通道支援八位元字元。 

eightnegotiate 

12.4.2.7 字元集標記與八位元資料

如有可能,通道應協商使用八位元傳輸。 

eightstrict 

12.4.2.7 字元集標記與八位元資料

拒絕具有包含未經協商之八位元資料的標頭的郵件。 

sevenbit 

12.4.2.7 字元集標記與八位元資料

不支援 8 位元字元;8 位元字元必須經過編碼。 

表 12–5 在 MTA 佇列區域建立檔案

關鍵字 

頁數 

定義 

addrsperfile 

12.9.4 處理對超過配額的使用者的郵件遞送

可與通道佇列中單個郵件檔案關聯的收件者最大數量限制 

expandchannel 

12.5.9 多位址延伸

指定因應用而執行延遲延伸時所在的通道。 

expandlimit 

12.5.9 多位址延伸

位址數量超過此限制時,「離線」處理內送郵件。 

multiple 

12.9.4 處理對超過配額的使用者的郵件遞送

不限制郵件檔案中收件者的數量,但是 SMTP 通道預設為 99。 

single 

12.9.4 處理對超過配額的使用者的郵件遞送

將為通道中的每個目標位址建立單獨的郵件副本。 

single_sys 

12.9.4 處理對超過配額的使用者的郵件遞送

為使用的每個目標系統建立單份郵件副本。 

subdirs 

12.10.2 跨多個子目錄分佈通道郵件佇列

指定為通道佇列分佈郵件的子目錄數量。 

表 12–6 標頭關鍵字

關鍵字 

定義 

authrewrite 

12.4.3 TCP/IP 連線和 DNS 查詢支援

用於來源通道讓將經認證的創建者資訊 (如果有) 傳至標頭。 

commentinc 

12.6.13 處理位址標頭行中的註釋

保留郵件標頭行中的註釋不變。 

commentmap 

12.6.13 處理位址標頭行中的註釋

透過 COMMENT_STRINGS 對映表執行郵件標頭行中的註釋字串。

commentomit 

12.6.13 處理位址標頭行中的註釋

移除郵件標頭行中的註釋。 

commentstrip 

12.6.13 處理位址標頭行中的註釋

移除郵件標頭行中註釋欄位內有問題的字元。 

commenttotal 

12.6.13 處理位址標頭行中的註釋

刪除所有標頭行中的註釋 (括號中的內容),但除了 Received: 標頭行。建議不要使用。 

datefour 

12.7.4 轉換日期為兩位數或四位數

將所有年份欄位延伸為四位數。 

datetwo 

12.7.4 轉換日期為兩位數或四位數

從四位數日期中移除前兩位數。提供與需要兩位數日期的郵件系統的相容性;不應用於其他任何目的。 

dayofweek 

12.7.5 在日期中指定星期

保留星期資訊,如無此資訊,將其加入日期與時間標頭中。 

defaulthost 

12.6.6 指定校正不完整的位址時要使用的主機名稱

指定用於使位址完整的網域名稱 

deletemessagehash 

12.7.11 控制 Message-hash: 標頭

刪除任何現有的 Message-hash: 欄位。

dropblank 

12.6.8 刪除非法空白收件者標頭

刪除內送的郵件中非法的空標頭。 

generatemessagehash 

12.7.11 控制 Message-hash: 標頭

如果在目標通道上指定,會導致 Message-hash: 標頭欄位插入郵件。

header_733 

12.6.1 位址類型和慣例

在郵件標頭中使用 % 路由。 

header_822 

12.6.1 位址類型和慣例

在郵件標頭中使用來源路徑。 

headerlabelalign 

12.7.7 標頭對齊和摺疊

控制在此通道上排入佇列的郵件標頭之對齊點;其引數的值為整數。 

headerlinelength 

12.7.7 標頭對齊和摺疊

控制在此通道上排入佇列的標頭行之長度。 

headerread 

12.7.2 移除選取的郵件標頭行

在處理原始郵件標頭之前,當郵件排入佇列時,將選項檔案的標頭修整規則套用於郵件標頭 (謹慎使用)。 

headertrim 

12.7.2 移除選取的郵件標頭行

在處理原始郵件標頭之後,將選項檔案的標頭修整規則套用於郵件標頭。 

header_uucp 

12.6.1 位址類型和慣例

在標頭中使用 ! 路由 

inner 

12.7.1 重寫內嵌式標頭

剖析郵件並重寫內部標頭。 

innertrim 

12.7.2 移除選取的郵件標頭行

將選項檔案的標頭修整規則套用於內部郵件標頭 (謹慎使用)。 

keepmessagehash 

12.7.11 控制 Message-hash: 標頭

會保留全部現有的 Message-hash: 欄位。

語言 

12.7.10 設定標頭中的預設語言

指定標頭中的預設語言。 

maxheaderaddrs 

12.7.6 自動分割長標頭行

控制一行中可以顯示的位址數。 

maxheaderchars 

12.7.6 自動分割長標頭行

控制一行中可以顯示的字元數。 

missingrecipientpolicy 

12.6.7 合法化無收件者標頭行的郵件

為如何使缺少任何收件者標頭的郵件合法化 (加入哪些標頭) 設定策略。 

nodayofweek 

12.7.5 在日期中指定星期

從日期與時間標頭中移除星期。提供與無法處理該資訊的郵件系統的相容性;不應用於其他任何目的。 

nodefaulthost 

12.6.6 指定校正不完整的位址時要使用的主機名稱

不指定用於使位址完整的網域名稱 

nodropblank 

12.6.8 刪除非法空白收件者標頭

不刪除內送的郵件中非法的空標頭。 

noheaderread 

12.7.2 移除選取的郵件標頭行

不套用選項檔案的標頭修整規則。 

noheadertrim 

12.7.2 移除選取的郵件標頭行

不套用選項檔案的標頭修整規則。 

noinner 

12.7.1 重寫內嵌式標頭

不重寫內部郵件標頭行。 

noinnertrim 

12.7.2 移除選取的郵件標頭行

不對內部郵件標頭套用標頭修整。 

noreceivedfor 

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

建構 Received: 標頭行,但不包含訊息封收件者資訊。

noreceivedfrom 

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

建構 Received: 標頭行,但不包含原始訊息封 From: 位址。

noremotehost 

12.6.6 指定校正不完整的位址時要使用的主機名稱

使用本地主機的網域名稱做為預設的網域名稱,使位址完整 

noreverse 

12.6.9 啟用通道特定的反向資料庫用途

在通道上排入佇列的郵件中的位址免於進行位址反向處理 

norules 

12.6.17 啟用通道特定的重寫規則檢查

不強制檢查此通道的通道特定重寫規則。 

nox_env_to 

12.7.3 產生/移除 X-Envelope-to 標頭行

移除 X-Envelope-to 標頭行。

personalinc 

12.6.14 處理位址標頭行中的個人名稱

保留郵件標頭行中的個人名稱欄位不變。 

personalmap 

12.6.14 處理位址標頭行中的個人名稱

透過 PERSONAL_NAMES 對映表執行個人名稱。 

personalomit 

12.6.14 處理位址標頭行中的個人名稱

移除郵件標頭行中的個人名稱欄位。 

personalstrip 

12.6.14 處理位址標頭行中的個人名稱

刪除標頭行中個人名稱欄位內有問題的字元。 

receivedfor 

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

如果郵件僅傳送至一個訊息封收件者,請將該訊息封 To: 位址包含在它建構的 Received: 標頭行中。

receivedfrom 

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

如果 MTA 已變更訊息封 From: 位址,則在為內送郵件建構 Received: 標頭行時,包含原始訊息封 From: 位址。

remotehost 

12.6.6 指定校正不完整的位址時要使用的主機名稱

使用遠端主機名稱做為預設的網域名稱,使位址完整 

restricted 

12.6.10 啟用有限電子信箱編碼

通道連線至需要此編碼的郵件系統。 

reverse 

12.6.9 啟用通道特定的反向資料庫用途

對照位址反向資料庫或 REVERSE 對映檢查位址 

rules 

12.6.17 啟用通道特定的重寫規則檢查

強制檢查此通道的通道特定重寫規則。 

sensitivitycompanyconfidential 

12.7.9 敏感性檢查

Companyconfidential 是郵件能接受的敏感性上限。

sensitivitynormal 

12.7.9 敏感性檢查

Normal 是郵件能接受的敏感性上限。

sensitivitypersonal 

12.7.9 敏感性檢查

Personal 是郵件能接受的 敏感性上限。

sensitivityprivate 

12.7.9 敏感性檢查

Private 是郵件能接受的敏感性上限。

sourcecommentinc 

12.6.13 處理位址標頭行中的註釋

保留內送的郵件標頭行中的註釋。 

sourcecommentmap 

12.6.13 處理位址標頭行中的註釋

透過來源通道執行郵件標頭行中的註釋字串。 

sourcecommentomit 

12.6.13 處理位址標頭行中的註釋

移除內送郵件標頭行中的註釋,如 To:、From: 和 Cc: 標頭) 中的所有註釋。 

sourcecommentstrip 

12.6.13 處理位址標頭行中的註釋

移除內送的標頭行中註釋欄位內有問題的字元。 

sourcecommenttotal 

12.6.13 處理位址標頭行中的註釋

刪除內送的郵件中的註釋 (括號中的內容)。 

sourcepersonalinc 

12.6.14 處理位址標頭行中的個人名稱

保留內送的郵件標頭行中的個人名稱不變。 

sourcepersonalmap 

12.6.14 處理位址標頭行中的個人名稱

透過來源通道執行個人名稱。 

sourcepersonalomit 

12.6.14 處理位址標頭行中的個人名稱

移除內送的郵件標頭行中的個人名稱欄位。 

sourcepersonalstrip 

12.6.14 處理位址標頭行中的個人名稱

刪除內送的郵件標頭行中個人名稱欄位內有問題的字元。 

unrestricted 

12.6.10 啟用有限電子信箱編碼

告知 MTA 不執行 RFC 1137 編碼和解碼。 

x_env_to 

12.7.3 產生/移除 X-Envelope-to 標頭行

產生 X-Envelope-to 標頭行。

表 12–7 內送通道之比對和切換關鍵字

關鍵字 

定義 

allowswitchchannel 

12.4.3.8 內送的郵件的替代通道 (切換通道)

允許從 switchchannel 通道切換至此通道

nosaslswitchchannel 

12.4.4 SMTP 認證、SASL 與 TLS

SASL 認證成功時不切換至此通道 

noswitchchannel 

12.4.3.8 內送的郵件的替代通道 (切換通道)

不應自該通道進行切換,也不應切換至該通道。 

switchchannel 

12.4.3.8 內送的郵件的替代通道 (切換通道)

從伺服器通道切換至與原始主機關聯的通道。 

saslswitchchannel 

12.4.4 SMTP 認證、SASL 與 TLS

用戶端成功使用 SASL 時,使內送連線切換至指定的通道。 

tlsswitchchannel 

12.4.8 傳輸層安全

TLS 協商成功時切換至其他通道。 

userswitchchannel 

12.4.3.9 來源通道會根據使用者或網域設定進行切換

根據使用者或網域設定切換來源通道。 

表 12–8 記錄和除錯通道關鍵字

關鍵字 

定義 

記錄 

12.11.1 記錄關鍵字

在記錄檔中記錄訊息排入佇列和移出佇列的情況,並啟動對特定通道的記錄。 

loopcheck 

12.11.3 設定迴圈檢查

將字串置入 SMTP EHLO 回應大標題中,使 MTA 檢查是否正與其自身通訊。 

master_debug 

12.11.2 除錯關鍵字

在通道的主要程式輸出中建立除錯輸出。 

nologging 

12.11.1 記錄關鍵字

不在記錄檔中記錄訊息排入佇列和移出佇列的情況。 

noloopcheck 

12.11.3 設定迴圈檢查

不在 SMTP EHLO 回應大標題中置入字串。 

nomaster_debug 

12.11.2 除錯關鍵字

在通道的主要程式輸出中沒有除錯輸出。 

noslave_debug 

12.11.2 除錯關鍵字

不產生從屬除錯輸出。 

slave_debug 

12.11.2 除錯關鍵字

產生從屬除錯輸出。 

表 12–9 詳細位址清單或標頭通道關鍵字

關鍵字 

定義 

expandchannel 

12.5.9 多位址延伸

指定因應用而執行延遲延伸時所在的通道。 

expandlimit 

12.5.9 多位址延伸

位址數量超過此限制時,「離線」處理內送郵件。 

holdlimit 

12.5.9 多位址延伸

當郵件位址數量超過此限制時扣留該郵件。 

maxprocchars 

12.7.7 標頭對齊和摺疊

可以處理與重寫的標頭最大長度。 

表 12–10 電子信箱篩選器通道關鍵字

關鍵字 

定義 

channelfilter 

12.12.4 指定電子信箱篩選器檔案位置

通道篩選器檔案的位置;與 destinationfilter 相同。

destinationfilter 

套用於外寄的郵件的通道篩選器檔案的位置。 

destinationspamfilterX 

12.12.5 垃圾郵件篩選器關鍵字

透過垃圾郵件篩選軟體 X 執行發往此通道的郵件。不接受垃圾郵件篩選軟體參數。 

destinationspamfilterXoptin 

12.12.5 垃圾郵件篩選器關鍵字

透過垃圾郵件篩選軟體 X 執行發往此通道的郵件。 

disabledestinationspamfilterX 

12.12.5 垃圾郵件篩選器關鍵字

針對發往此通道的郵件停用垃圾郵件篩選器 X。 

disablesourcespamfilterX 

12.12.5 垃圾郵件篩選器關鍵字

針對來自此通道的郵件停用垃圾郵件篩選器 X。 

fileinto 

12.12.4 指定電子信箱篩選器檔案位置

指定在套用電子信箱篩選器 fileinto 作業時對位址的影響。

filter 

12.12.4 指定電子信箱篩選器檔案位置

指定使用者篩選器檔案的位置。 

nochannelfilter 

12.12.4 指定電子信箱篩選器檔案位置

沒有用於外寄的郵件的通道篩選。也稱為 nodestinationfilter

nodestinationfilter 

12.12.4 指定電子信箱篩選器檔案位置

不對外寄的郵件執行通道篩選。 

nofileinto 

12.12.4 指定電子信箱篩選器檔案位置

電子信箱篩選器運算子無效。 

nofilter 

12.12.4 指定電子信箱篩選器檔案位置

不執行使用者電子信箱篩選。 

nosourcefilter 

12.12.4 指定電子信箱篩選器檔案位置

不對內送的郵件執行通道篩選。 

sourcefilter 

12.12.4 指定電子信箱篩選器檔案位置

指定用於內送的郵件之通道篩選器檔案的位置。 

sourcespamfilterX 

12.12.5 垃圾郵件篩選器關鍵字

透過垃圾郵件篩選軟體 X 執行源自此通道的郵件。不接受垃圾郵件篩選軟體參數。 

sourcespamfilterXoptin 

12.12.5 垃圾郵件篩選器關鍵字

透過垃圾郵件篩選軟體 X 執行源自此通道的郵件。接受垃圾郵件篩選軟體參數。 

表 12–11 NO-SOLICIT SMTP 延伸支援

關鍵字 

定義 

sourcenosolicit 

12.12.7 NO-SOLICIT SMTP 延伸支援

指定推銷信的欄位值清單用逗號分隔,此通道寄出的郵件將被封鎖。 

destinationnosolicit 

12.12.7 NO-SOLICIT SMTP 延伸支援

指定推銷信的欄位值清單用逗號分隔,在此通道佇列的郵件將不被接受。 

表 12–12 通知與 Postmaster 郵件關鍵字

關鍵字 

定義 

(請參閱10.10 控制遞送狀態通知郵件,以取得完整的通知程序)

aliaspostmaster 

Postmaster 返回的郵件內容

用正式通道名稱傳送給使用者名稱的郵件會重新導向至 postmaster@local-host,其中 local-host 是本地主機名稱 (本機通道的名稱)。 

copysendpost 

傳回失敗郵件

除非失敗的郵件上創建者的位址為空白,否則將失敗通知的副本傳送給 postmaster。 

copywarnpost 

警告郵件

除非未遞送郵件的創建者位址為空,否則將警告郵件的副本傳送至 postmaster。 

errsendpost 

傳回失敗郵件

僅當無法將失敗通知傳回給創建者時,才將其副本傳送給 postmaster。 

errwarnpost 

警告郵件

僅當無法將警告通知傳回給創建者時,才將警告郵件的副本傳送給 postmaster。 

includefinal 

10.10.4.4 在狀態通知郵件中包含已改變的位址

在遞送通知中納入最終形式的收件者位址。 

nonurgentnotices 

10.10.4.3 設定通知郵件遞送間隔時間

指定在非緊急優先順序的郵件之通知傳送及郵件傳回之前可以經過的時間。 

noreturnaddress 

Postmaster 返回的郵件內容

使用 RETURN_ADDRESS 選項值做為 Postmaster 位址名稱。

noreturnpersonal 

Postmaster 返回的郵件內容

使用 RETURN_PERSONAL 選項值做為 Postmaster 個人名稱。

normalnotices 

10.10.4.3 設定通知郵件遞送間隔時間

指定在一般優先順序的郵件之通知傳送及郵件傳回之前可以經過的時間。 

nosendpost 

傳回失敗郵件

停用將所有失敗郵件的副本傳送至 postmaster 的功能。 

notices 

10.10.4.3 設定通知郵件遞送間隔時間

指定在通知傳送及郵件傳回之前可以經過的時間。 

nowarnpost 

警告郵件

停用將警告郵件的副本傳送至 postmaster 的功能。 

postheadbody 

Postmaster 返回的郵件內容

傳回郵件的標頭和內容。 

postheadonly 

Postmaster 返回的郵件內容

僅將標頭傳回給 postmaster。 

returnaddress 

Postmaster 返回的郵件內容

指定本地 postmaster 的傳回位址。 

returnenvelope 

空白訊息封傳回位址

控制空白訊息封傳回位址的使用。 

returnpersonal 

Postmaster 返回的郵件內容

設定本地 postmaster 的個人名稱。 

sendpost 

傳回失敗郵件

啟用將所有失敗郵件的副本傳送至 postmaster 的功能。 

suppressfinal 

10.10.4.4 在狀態通知郵件中包含已改變的位址

抑制通知郵件中的最終位址格式,如果通知郵件中存在原始位址格式。 

urgentnotices 

10.10.4.3 設定通知郵件遞送間隔時間

指定在緊急優先順序的郵件之通知傳送及郵件傳回之前可以經過的時間。 

useintermediate 

10.10.4.4 在狀態通知郵件中包含已改變的位址

使用在清單延伸之後但在使用者電子信箱名稱產生之前產生的中間格式。 

warnpost 

警告郵件

啟用將警告郵件的副本傳送至 postmaster 的功能。 

表 12–13 處理控制與工作提交關鍵字

關鍵字 

定義 

(請參閱12.5 配置郵件處理和遞送,以瞭解更強的功能單位)

backoff 

12.5.3 指定遞送失敗之郵件的重試頻率

嘗試重新遞送先前遞送失敗之郵件的頻率。可以用 normalbackoffnonurgentbackoffurgentbackoff 關鍵字進行覆寫。

bidirectional 

12.5.1 設定通道定向性

由主要程式和從屬程式提供服務的通道。 

deferred 

12.5.2 實作延遲遞送日期

識別和接受 Deferred-delivery: 標頭行。

expandchannel 

12.5.9 多位址延伸

指定因應用而執行延遲延伸時所在的通道。 

expandlimit 

12.5.9 多位址延伸

位址數量超過此限制時,「離線」處理內送郵件。 

filesperjob 

12.5.5 服務工作限制

由單一工作處理的佇列項目數量。 

immnonurgent

12.5.2 實作延遲遞送日期

提交緊急、一般與非緊急郵件之後立即開始遞送。 

master 

12.5.1 設定通道定向性

由主要程式提供服務的通道 (master)。

maxjobs 

12.5.5 服務工作限制

可為通道並行執行的最大工作數量。 

nodeferred 

12.5.2 實作延遲遞送日期

指定不接受 Deferred-delivery: 標頭行。

nonurgentbackoff 

12.5.3 指定遞送失敗之郵件的重試頻率

嘗試重新遞送非緊急郵件的頻率。 

nonurgentblocklimit 

12.5.7 基於大小的郵件優先順序

強制將大於此大小的郵件降為低於非緊急優先順序 (第二級優先順序),這表示這些郵件總是要等待下一個週期性工作來進一步處理。 

normalbackoff 

12.5.3 指定遞送失敗之郵件的重試頻率

嘗試重新遞送一般郵件的頻率。 

normalblocklimit 

12.5.7 基於大小的郵件優先順序

強制將大於此大小的郵件設定為非緊急優先順序。 

noservice 

12.5.10 啟用服務轉換

必須透過 CHARSET-CONVERSION 啟用對進入此通道之郵件的服務轉換。

pool 

12.5.4 通道執行工作的處理區

指定通道的處理區。必須後接目前通道的遞送工作匯集時所在的處理區名稱。 

service 

12.5.10 啟用服務轉換

無條件啟用服務轉換,不論 CHARSET-CONVERSION 項目為何。

slave 

12.5.1 設定通道定向性

由從屬程式 (slave) 提供服務的通道。 

threaddepth 

12.5.8 SMTP 通道執行緒

透過多重執行緒 SMTP 用戶端觸發新執行緒的郵件數量。 

transactionlimit 

限制每個連線允許的郵件數目。 

urgentbackoff 

12.5.3 指定遞送失敗之郵件的重試頻率

嘗試重新遞送緊急郵件的頻率。 

urgentblocklimit 

12.5.7 基於大小的郵件優先順序

強制將大於此大小的郵件設定為一般優先順序。 

使用者 

12.12.3 管道通道

用於管道通道指示執行時使用的使用者名稱。 

表 12–14 敏感性限制關鍵字

關鍵字 

定義 

sensitivitycompanyconfidential 

12.7.9 敏感性檢查

郵件能接受的敏感性上限。 

sensitivitynormal 

12.7.9 敏感性檢查

Normal 是郵件能接受的敏感性上限。

sensitivitypersonal 

12.7.9 敏感性檢查

Personal 是郵件能接受的 敏感性上限。

sensitivityprivate 

12.7.9 敏感性檢查

Private 是郵件能接受的敏感性上限。

表 12–15 郵件、使用者配額、權限和認證嘗試次數限制的關鍵字

關鍵字 

定義 

alternatechannel 

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

alternateblocklimit、alternatelinelimit 與 alternaterecipientlimit 的替代目標通道 

alternateblocklimit 

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

指定在郵件傳送至替代通道之前郵件中的區塊數量限制。 

alternatelinelimit 

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

指定在郵件傳送至替代通道之前郵件中的行數限制。 

alternaterecipientlimit 

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

指定在郵件傳送至替代通道之前郵件中的收件者數量限制。 

blocklimit 

12.9.2 指定絕對郵件大小限制

每封郵件允許的 MTA 區塊最大數量。 

disconnectbadauthlimit 

12.9.1 對不成功的認證嘗試的限制

對中斷連線之前階段作業內所允許的不成功的認證嘗試的次數的限制。 

disconnectbadcommandlimit 

12.10.3 設定階段作業限制

限制階段作業錯誤指令的數目。 

disconnectrecipientlimit 

12.10.3 設定階段作業限制

限制階段作業收件者的數目。 

disconnectrejectlimit 

12.10.3 設定階段作業限制

限制被拒絕的收件者之數目。 

disconnecttransactionlimit 

12.10.3 設定階段作業限制

限制作業事件的數目。 

headerlimit 

12.9.8 限制標頭大小

對主要 (最外層) 郵件標頭最大大小的限制 

holdexquota 

12.9.4 處理對超過配額的使用者的郵件遞送

扣留超過配額的使用者之郵件。 

holdlimit 

12.5.9 多位址延伸

當內送的郵件之位址數量超過此限制時扣留該郵件。 

linelength 

12.8.4 設定郵件行長度限制

逐個通道地限制允許的郵件行最大長度。 

linelimit 

12.9.2 指定絕對郵件大小限制

每封郵件允許的最大行數。 

maxblocks 

12.8.3 大型郵件的自動分段程序

指定郵件中允許的最大區塊數。 

maxlines 

12.8.3 大型郵件的自動分段程序

指定郵件中允許的最大行數。 

nameparameterlengthlimit 

12.9.6 控制一般和檔案名稱內容類型及內容處理參數的長度

控制名稱內容類型和檔案名稱內容處理參數的截斷點。 

noblocklimit 

12.9.2 指定絕對郵件大小限制

不限制每封郵件允許的 MTA 區塊數量。 

noexquota 

12.9.4 處理對超過配額的使用者的郵件遞送

將傳送給超過配額的使用者之所有郵件傳回給創建者。 

nolinelimit 

12.9.2 指定絕對郵件大小限制

不限制每封郵件允許的行數。 

nonurgentblocklimit 

12.5.7 基於大小的郵件優先順序

強制將大於此大小的郵件降為低於非緊急優先順序 (第二級優先順序),這表示這些郵件總是要等待下一個週期性工作來進一步處理。 

normalblocklimit 

12.5.7 基於大小的郵件優先順序

強制將大於此大小的郵件設定為非緊急優先順序。 

parameterlengthlimit 

12.9.6 控制一般和檔案名稱內容類型及內容處理參數的長度

控制一般內容類型和內容處理參數的截斷點。 

recipientcutoff. 

12.9.7 限制郵件收件者

如果收件者數目超過此值,則拒絕郵件。 

recipientlimit 

12.9.7 限制郵件收件者

限制郵件將接受的收件者位址之數目。 

rejectsmtplonglines 

12.9.5 處理行長度超過 1000 個字元的 SMTP 郵件

拒絕行長度超過個字元 (包括 CRLF) 的郵件。 

sourceblocklimit 

12.9.2 指定絕對郵件大小限制

每封內送的郵件允許的 MTA 區塊最大數量。 

truncatesmtplonglines 

12.9.5 處理行長度超過 1000 個字元的 SMTP 郵件

行長度超過 1000 個字元時截斷該行。 

wrapsmtplonglines 

12.9.5 處理行長度超過 1000 個字元的 SMTP 郵件

行長度超過 1000 個字元時換行。 

urgentblocklimit 

12.5.7 基於大小的郵件優先順序

強制將大於此大小的郵件設定為一般優先順序。 

表 12–16 SMTP 認證、SASL 與 TLS 關鍵字

關鍵字 

定義 

(請參閱12.4.4 SMTP 認證、SASL 與 TLS,以瞭解更強的功能單位)

authrewrite 

12.4.3 TCP/IP 連線和 DNS 查詢支援

用於來源通道讓將經認證的創建者資訊 (如果有) 傳至標頭。 

maysaslserver 

12.4.4 SMTP 認證、SASL 與 TLS

允許用戶端嘗試使用 SASL 認證。 

maytls 

12.4.8 傳輸層安全

使 MTA 為內送的連線提供 TLS 並對外寄的連線嘗試 TLS。 

maytlsclient 

12.4.8 傳輸層安全

在傳送外寄的郵件時,如果是傳送至支援 TLS 的 SMTP 伺服器,則 MTA SMTP 用戶端將嘗試 TLS 使用。 

maytlsserver 

12.4.8 傳輸層安全

MTA SMTP 伺服器將公佈其支援 STARTTLS 延伸並,將在接收郵件時允許 TLS 使用。 

msexchange 

12.4.7 指定 Microsoft Exchange 閘道通道

用於 TCP/IP 通道告知 MTA 此通道與 Microsoft Exchange 閘道和用戶端通訊。 

mustsaslserver 

12.4.4 SMTP 認證、SASL 與 TLS

SMTP 伺服器不接受郵件,除非遠端用戶端認證成功。 

musttls 

12.4.8 傳輸層安全

堅持要求在外寄的與內送的連線中都使用 TLS。 

musttlsclient 

12.4.8 傳輸層安全

傳送外寄的郵件時,MTA SMTP 用戶端將堅持要求 TLS 使用 (將發出 STARTTLS 指令,而且該指令必須成功)。 

musttlsserver 

12.4.8 傳輸層安全

MTA SMTP 伺服器將公佈其支援 STARTTLS 延伸並將在接收內送的郵件時堅持要求 TLS 使用。 

nomsexchange 

12.4.3 TCP/IP 連線和 DNS 查詢支援

預設。 

nosasl 

12.4.4 SMTP 認證、SASL 與 TLS

不允許或不嘗試使用 SASL 認證。 

nosaslserver 

12.4.4 SMTP 認證、SASL 與 TLS

不允許使用 SASL 認證。 

notls 

12.4.8 傳輸層安全

不允許或不嘗試使用 TLS。 

notlsclient 

12.4.8 傳輸層安全

MTA SMTP 用戶端不會對外寄的連線嘗試使用 TLS (在外寄的連線期間不會發出 STARTTLS 指令)。 

notlsserver 

12.4.8 傳輸層安全

MTA SMTP 伺服器將不允許對內送的連線使用 TLS (SMTP 伺服器不會公佈 STARTTLS 延伸,指令本身也不會被接受)。 

saslswitchchannel 

12.4.4 SMTP 認證、SASL 與 TLS

用戶端成功使用 SASL 時,使內送連線切換至指定的通道。 

tlsswitchchannel 

12.4.8 傳輸層安全

當用戶端的 TLS 協商成功時,使內送的連線切換至指定的通道。它接受所需的值,以指定要切換至哪個通道。 

表 12–17 SMTP 指令和協定關鍵字

關鍵字 

定義 

(請參閱12.4.2 SMTP 指令和協定支援,以瞭解更強的功能單位)

allowetrn 

12.4.2.3 ETRN 指令支援

接受 ETRN 指令。 

blocketrn 

12.4.2.3 ETRN 指令支援

封鎖 ETRN 指令。 

checkehlo 

12.4.2.2 EHLO 指令支援

檢查 SMTP 回應大標題以確定是使用 EHLO 還是 HELO。 

chunkingclient 

12.4.6 SMTP 資料塊支援

啟用伺服器資料塊支援 (預設)。 

chunkingserver 

12.4.6 SMTP 資料塊支援

啟用伺服器資料塊支援 (預設)。 

disableetrn 

12.4.2.3 ETRN 指令支援

停用對 ETRN SMTP 指令的支援。 

domainetrn 

12.4.2.3 ETRN 指令支援

僅接受那些 ETRN 指定網域的指令。 

domainvrfy 

12.4.2.4 VRFY 指令支援

使用完整的位址發出 VRFY 指令。 

ehlo 

12.4.2.2 EHLO 指令支援

對初始連線使用 SMTP EHLO 指令。 

eightbit 

12.4.2.7 字元集標記與八位元資料

通道支援八位元字元。 

eightnegotiate 

12.4.2.7 字元集標記與八位元資料

如有可能,通道應協商使用八位元傳輸。 

eightstrict 

12.4.2.7 字元集標記與八位元資料

拒絕具有包含未經協商之八位元資料的標頭的郵件。 

expnallow 

12.4.2.5 EXPN 支援

允許 EXPN,即使已在 SMTP 伺服器層級使用 DISABLE_EXPAND SMTP 通道選項將其停用。

expndisable 

12.4.2.5 EXPN 支援

無條件停用 EXPN

expndefault 

12.4.2.5 EXPN 支援

如果 SMTP 伺服器設定為允許 EXPN,則允許。

localvrfy 

12.4.2.4 VRFY 指令支援

使用本機位址發出 VRFY 指令。 

mailfromdnsverify 

12.4.2.6 DNS 網域驗證

驗證用於 MAIL FROM: 指令的網域是否存在於 DNS 中。

nochunkingclient 

12.4.6 SMTP 資料塊支援

停用伺服器資料塊支援。 

nochunkingserver 

12.4.6 SMTP 資料塊支援

停用伺服器資料塊支援。 

noehlo 

12.4.2.2 EHLO 指令支援

不使用 EHLO 指令。 

nomailfromdnsverify 

12.4.2.6 DNS 網域驗證

不驗證用於 MAIL FROM: 指令的網域是否存在於 DNS 中。

nosendetrn 

12.4.2.3 ETRN 指令支援

不傳送 ETRN 指令。 

nosmtp 

12.4.2.1 通道協定選取和行終止符號

不支援 SMTP 協定。這是預設。 

novrfy 

12.4.2.4 VRFY 指令支援

不發出 VRFY 指令。 

sendetrn 

12.4.2.3 ETRN 指令支援

傳送 ETRN 指令。 

sevenbit 

12.4.2.7 字元集標記與八位元資料

不支援 8 位元字元;8 位元字元必須經過編碼。 

silentetrn 

12.4.2.3 ETRN 指令支援

接受 ETRN 指令但不回應通道資訊。 

smtp 

12.4.2.1 通道協定選取和行終止符號

支援 SMTP 協定。關鍵字 smtp 對於所有 SMTP 通道都具有強制性。(此關鍵字相當於 smtp_crlf。)

smtp_cr 

12.4.2.1 通道協定選取和行終止符號

接受以換行鍵 (CR) 終止但後面沒有換行 (LF) 的行。 

smtp_crlf 

12.4.2.1 通道協定選取和行終止符號

行必須以換行鍵 (CR) 換行 (LF) 序列終止。 

smtp_crorlf 

12.4.2.1 通道協定選取和行終止符號

行能以換行鍵 (CR)、換行 (LF) 序列或完整的 CRLF 終止。 

smtp_lf 

12.4.2.1 通道協定選取和行終止符號

接受以換行 (LF) 終止但前面沒有 CR 的行。 

streaming 

12.4.2.8 協定串流

控制在與通道關聯的協定中使用的協定串流之程度。 

vrfyallow 

12.4.2.4 VRFY 指令支援

對 VRFY 指令提供資訊回應。 

vrfydefault 

12.4.2.4 VRFY 指令支援

根據通道的 HIDE_VERIFY 選項設定,提供 VRFY 指令的預設回應。 

vrfyhide 

12.4.2.4 VRFY 指令支援

對 SMTP VRFY 指令提供模糊回應。 

表 12–18 TCP/IP 連線和 DNS 查詢支援關鍵字

關鍵字 

定義 

TCP/IP 連線和 DNS 查詢支援 

(請參閱12.4.3 TCP/IP 連線和 DNS 查詢支援,以瞭解更強的功能單位)

cacheeverything 

12.4.3.2 快取通道連線資訊

快取所有連線資訊。 

cachefailures 

12.4.3.2 快取通道連線資訊

僅快取連線失敗資訊。 

cachesuccesses 

12.4.3.2 快取通道連線資訊

僅快取連線成功資訊。 

connectalias 

12.6.5 郵件移出佇列時重寫位址

遞送至收件者位址中列出的任一主機。 

connectcanonical 

12.6.5 郵件移出佇列時重寫位址

連線至可以連線至 MTA 的系統之主機別名。 

daemon 

12.4.3.10 目標主機選擇

連線至特定的主機系統,不論訊息封位址為何。 

defaultmx 

12.4.3.5 TCP/IP MX 記錄支援

通道確定是否從網路執行 MX 查詢。 

defaultnameservers 

12.4.3.6 名稱伺服器查詢

查閱 TCP/IP 堆疊的名稱伺服器選項。 

forwardcheckdelete 

12.4.3.3 反向 DNS 查詢

如果執行了反向 DNS 查詢,接著會對傳回的名稱執行正向查詢以檢查傳回的 IP 號碼是否符合原始號碼;如果不符合,則刪除此名稱並使用 IP 位址。 

forwardchecknone 

12.4.3.3 反向 DNS 查詢

執行反向 DNS 查詢之後,不執行正向查詢。 

forwardchecktag 

12.4.3.3 反向 DNS 查詢

如果已執行了反向 DNS 查詢,接著會對傳回的名稱執行正向查詢以檢查傳回的 IP 號碼是否符合原始號碼;如果不符合,用 * 標記該名稱。 

identnone 

12.4.3.4 IDENT 查詢

不執行 IDENT 查詢;執行 IP 至主機名稱轉換;包含 Received: 標頭中的主機名稱和 IP 位址。

identnonelimited 

12.4.3.4 IDENT 查詢

不執行 IDENT 查詢;執行 IP 至主機名稱轉換,但在通道切換期間不使用主機名稱;包含 Received: 標頭中的主機名稱和 IP 位址。

identnonenumeric 

12.4.3.4 IDENT 查詢

不執行 IDENT 查詢 IP 或至主機名稱轉換。 

identnonesymbolic 

12.4.3.4 IDENT 查詢

不執行 IDENT 查詢;執行 IP 至主機名稱轉換;在 Received: 標頭中僅包含主機名稱。

identtcp 

12.4.3.4 IDENT 查詢

對內送 SMTP 連線執行 IDENT 查詢,並執行 IP 至主機名稱轉換;在 Received: 標頭中包含主機名稱和 IP 位址

identtcplimited 

12.4.3.4 IDENT 查詢

對內送的 SMTP 連線執行 IDENT 查詢及 IP 至主機名稱轉換,但在通道切換期間不使用主機名稱。包含 Received: 標頭中的主機名稱和 IP 位址。

indenttcpnumeric 

12.4.3.4 IDENT 查詢

對內送的 SMTP 連線執行 IDENT 查詢,但不執行 IP 至主機名稱轉換。 

identtcpsymbolic 

12.4.3.4 IDENT 查詢

對內送 SMTP 連線執行 IDENT 查詢和 IP 至主機名稱轉換;在 Received: 標頭中僅包含主機名稱。

interfaceaddress 

12.4.3.1 TCP/IP 連接埠號和介面位址

連結至特定的 TCP/IP 介面位址。 

lastresort 

12.4.3.7 最後一台主機

指定最後一台主機。 

mailfromdnsverify 

12.4.2.6 DNS 網域驗證

驗證用於 MAIL FROM: 指令的網域是否存在於 DNS 中。

mx 

12.4.3.5 TCP/IP MX 記錄支援

TCP/IP 網路和軟體支援 MX 記錄查詢。 

nameservers 

12.4.3.6 名稱伺服器查詢

指定要查閱的名稱伺服器清單,而不查閱 TCP/IP 堆疊自己的名稱伺服器選項;nameservers 需要這些名稱伺服器的 IP 位址清單 (各 IP 位址之間以空格分隔)。

nocache 

12.4.3.2 快取通道連線資訊

不快取任何連線資訊。 

nomailfromdnsverify 

12.4.2.6 DNS 網域驗證

不驗證用於 MAIL FROM: 指令的網域是否存在於 DNS 中。

nomx 

12.4.3.5 TCP/IP MX 記錄支援

TCP/IP 網路不支援 MX 查詢。 

nonrandomemx 

12.4.3.5 TCP/IP MX 記錄支援

執行 MX 查詢;不隨機排序具有同等優先順序的傳回項目。 

port 

12.4.3.1 TCP/IP 連接埠號和介面位址

指定 SMTP 連線的預設連接埠號。標準連接埠是 25。 

randommx 

12.4.3.5 TCP/IP MX 記錄支援

執行 MX 查詢;隨機排序具有同等優先順序的傳回項目。 

single 

12.4.3.10 目標主機選擇

指定將為通道中的每個目標位址建立單獨的郵件副本。 

single_sys 

12.4.3.10 目標主機選擇

為使用的每個目標系統建立單份郵件副本。 

threaddepth 

12.5.8 SMTP 通道執行緒

透過多重執行緒 SMTP 用戶端觸發新執行緒的郵件數量。 

表 12–19 其他關鍵字

關鍵字 

定義 

addresssr 

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

控制 SRS 編碼。 

deferralrejectlimit 

12.12.8 設定對錯誤 RCPT TO 位址的限制

設定對錯誤 RCPT TO: 數的限制位址 

標籤 

12.12.9 設定 Monitoring Framework 的通道顯示

設定 Monitoring Framework 的簡短通道顯示字串 

說明 

12.12.9 設定 Monitoring Framework 的通道顯示

設定 Monitoring Framework 的通道顯示字串 

destinationsrs 

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

控制 SRS 編碼。 

dispositionchannel 

12.12.1 程序通道覆寫

將程序通道覆寫為最初形成遞送狀態通知 (DSN) 佇列的位置。 

destinationfilter 

12.12.4 指定電子信箱篩選器檔案位置

用於在一般 MTA 通道上指定套用於外寄郵件之通道層級的篩選器。 

filter 

12.12.4 指定電子信箱篩選器檔案位置

接受描述篩選器檔案位置所必需的 URL 引數 

noaddresssrs 

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

控制 SRS 編碼。 

nodestinationfilter 

12.12.4 指定電子信箱篩選器檔案位置

通道任一方向均未啟用通道電子信箱篩選器。 

nodestinationsrs 

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

控制 SRS 編碼。 

nosourcefilter 

12.12.4 指定電子信箱篩選器檔案位置

來源通道未啟用通道電子信箱篩選器。 

nosourcesrs 

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

控制 SRS 編碼。 

nofilter 

12.12.4 指定電子信箱篩選器檔案位置

該預設表示此通道未啟用使用者電子信箱篩選器。 

notificationchannel 

12.12.1 程序通道覆寫

將程序通道覆寫為最初形成郵件處理通知 (MDN) 佇列的位置。 

sourcefilter 

12.12.4 指定電子信箱篩選器檔案位置

用於在一般 MTA 通道上指定套用於內送的郵件之通道層級的篩選器 

sourcesrs 

15.7 使用寄件者重寫機制 (SRS) 處理 SPF 中的轉寄郵件

控制 SRS 編碼。 

submit 

12.12.2 通道作業類型

用於將通道標記為僅供提交通道。 

使用者 

12.12.3 管道通道

用於管道通道指示執行時使用的使用者名稱。 

12.4 配置 SMTP 通道

根據安裝類型,在安裝時,Messaging Server 提供數種 SMTP 通道 (請參見下表)。這些通道實作經由 TCP/IP 的 SMTP。多重執行緒 TCP SMTP 通道包括在派送程式控制下執行的多重執行緒 SMTP 伺服器。外寄 SMTP 郵件由通道程式 tcp_smtp_client 處理,且依需要在工作控制器控制下執行。

表 12–20 SMTP 通道

通道 

定義 

tcp_local

接收來自遠端 SMTP 主機的內送郵件。根據您是否使用智慧主機/防火牆配置,將外寄郵件直接傳送至遠端 SMTP 主機,或將外寄郵件傳送至智慧主機/防火牆系統。 

tcp_intranet

接收和傳送企業內部網路中的郵件。 

tcp_auth

用做 tcp_local 的切換通道;認證使用者切換至 tcp_auth 通道,以避免轉送封鎖功能的限制。

tcp_submit

在預留的提交連接埠 587 上接受通常來自使用者代理程式的郵件提交作業 (請參閱 RFC 2476)。 

tcp_tas

由執行統一郵件傳送的站點使用的 IA 特殊通道。 

透過增加或移除本節所述的通道關鍵字,您可以修改這些通道的定義或者建立新的通道。此外,可能會使用某選項檔案來控制 TCP/IP 通道的各種特性。此類選項檔案必須儲存在 MTA 配置目錄 (msg-svr-base/config) 中,並且命名為 x_option,其中 x 是通道名稱。如需詳細資訊,請參閱「Sun Java System Messaging Server 6.3 Administration Reference」中的「Option File」

本節分為以下子節:

12.4.1 配置 SMTP 通道選項

TCP/IP 通道選項檔案可控制 TCP/IP 通道的各種特性。通道選項檔案必須儲存在 MTA 配置目錄中,並且命名為 x_option (其中 x 是通道的名稱)。例如,/msg-svr-base/config/tcp_local_option

選項檔案包含一個或多個關鍵字及關聯值。例如,可以在選項檔案中包含 DISABLE_EXPAND 關鍵字,並將其值設為 1,以停用伺服器上郵遞清單的擴充。

其他選項檔案關鍵字可讓您執行以下作業:

如需有關所有通道選項關鍵字和語法的資訊,請參閱「Sun Java System Messaging Server 6.3 Administration Reference」

12.4.2 SMTP 指令和協定支援

您可以指定 SMTP 通道是否支援某些 SMTP 指令 (例如 EHLO、ETRN、EXPN 和 VRFY)。還可以指定該通道是否支援 DNS 網域驗證、該通道接受哪些字元作為行終止符號等。本節描述以下內容:

表 12–21 摘要本小節所說明的關鍵字。

表 12–21 SMTP 指令和協定關鍵字

通道關鍵字 

說明 

協定選取和行終止符號

指定通道是否支援 SMTP 協定,並指定接受做為行終止符號的字元序列

smtp

支援 SMTP 協定。關鍵字 smtp 對於所有 SMTP 通道都具有強制性。(此關鍵字相當於 smtp_crorlf。)

nosmtp

不支援 SMTP 協定。這是預設。 

smtp_cr

接受以換行鍵 (CR) 終止但後面沒有換行 (LF) 的行。 

smtp_crlf

行必須以換行鍵 (CR) 換行 (LF) 序列終止。 

smtp_lf

接受以換行 (LF) 終止但前面沒有的行 (CR)。 

smtp_crorlf

行能以換行鍵 (CR)、換行 (LF) 序列或完整的 CRLF 終止。 

EHLO 關鍵字

指定通道處理 EHLO 指令的方式

ehlo

對初始連線使用 SMTP EHLO 指令。 

checkehlo

檢查 SMTP 回應大標題以確定是使用 EHLO 還是 HELO。 

noehlo

不使用 EHLO 指令。 

ETRN 關鍵字

指定通道處理 ETRN 指令 (請求處理佇列) 的方式

allowetrn

接受 ETRN 指令。 

blocketrn

封鎖 ETRN 指令。 

domainetrn

僅接受那些 ETRN 指定網域的指令。 

silentetrn

接受 ETRN 指令但不回應通道資訊。 

sendetrn

傳送 ETRN 指令。 

nosendetrn

不傳送 ETRN 指令。 

VRFY 關鍵字

指定通道處理 VRFY 指令的方式

domainvrfy

使用完整的位址發出 VRFY 指令。 

localvrfy

使用本機位址發出 VRFY 指令。 

novrfy

不發出 VRFY 指令。 

vrfyallow

對 VRFY 指令提供資訊回應。 

vrfydefault

根據通道的 HIDE_VERIFY 選項設定,提供 VRFY 指令的預設回應。 

vrfyhide

對 SMTP VRFY 指令提供模糊回應。 

EXPN 關鍵字

指定通道處理 EXPN 關鍵字的方式 

expnallow

允許 EXPN,即使已在 SMTP 伺服器層級使用 DISABLE_EXPAND SMTP 通道選項將其停用。

expndisable

無條件停用 EXPN

expndefault

如果 SMTP 伺服器設定為允許 EXPN,則允許。(預設)

DNS 網域驗證

指定通道是否執行 DNS 網域驗證

mailfromdnsverify

驗證用於 MAIL FROM: 指令的網域是否存在於 DNS 中。

nomailfromdnsverify

不驗證用於 MAIL FROM: 指令的網域是否存在於 DNS 中。

字元集和八位元資料

指定通道處理八位元資料的方式 (備註:雖然這些關鍵字通常用於 SMTP 通道,但也可能與任何類型的通道相關。)

charset7

與 7 位元文字郵件關聯的預設字元集 

charset8

與 8 位元文字郵件關聯的預設字元集 

charsetesc

與包含退出字元的 7 位元文字關聯的預設字元集 

eightbit

通道支援八位元字元。 

eightnegotiate

如有可能,通道應協商使用八位元傳輸。 

eightstrict

通道應拒絕標頭包含非法八位元資料的郵件。 

sevenbit

通道不支援八位元字元;八位元字元必須經過編碼。 

協定串流

指定通道使用的協定串流之程度。

streaming

控制在與通道關聯的協定中使用的協定串流之程度。 

12.4.2.1 通道協定選取和行終止符號

關鍵字:smtpnosmtpsmtp_crlfsmtp_crsmtp_crorlfsmtp_lf

smtpnosmtp 關鍵字可指定通道是否支援 SMTP 協定。smtp 關鍵字或其變化形式之一,對於所有 SMTP 通道都具有強制性。

關鍵字 smtp_crlfsmtp_crsmtp_crorlfsmtp_lf 可用於 SMTP 通道,指定 MTA 將接受做為行終止符號的字元序列。關鍵字 smtp_crlf 表示行必須以換行鍵 (CR) 換行 (LF) 序列終止。關鍵字 smtp_lfsmtp 表示接受前面沒有 CR 的 LF。最後,smtp_cr 表示接受後面沒有 LF 的 CR。這些選項僅影響內送的郵件之處理。

由於 SMTP 標準需要 CRLF 以作為行終止符號,因此 MTA 始終會產生標準 CRLF 序列。各種 smtp 關鍵字僅控制 MTA 是否接受其他非標準的行終止符號。例如,如果要 MTA 僅接受完全合法的 SMTP 郵件並拒絕所有包含非標準行終止符號的郵件,則可以指定 smtp_crlf

12.4.2.2 EHLO 指令支援

關鍵字:ehlonoehlocheckehlo

SMTP 協定已延伸 (RFC 1869) 為允許協商其他指令。使用新的 EHLO 指令便可達此目的,該指令取代了 RFC 821 的 HELO 指令。延伸的 SMTP 伺服器透過提供其支援的延伸清單來回應 EHLO。未延伸的伺服器則會傳回不明的指令錯誤,然後用戶端會傳送舊的 HELO 指令。

退回策略通常可與延伸的以及未延伸的伺服器正常配合工作。但是如果伺服器未根據實作,則會發生問題。具體來說,曾經有某些不符合的伺服器在接收未知指令時中斷連線。

SMTP 用戶端會實作一種策略,如果任一伺服器在接收 EHLO 時中斷連線,SMTP 用戶端便會藉此策略嘗試重新連線並使用 HELO。但是,如果遠端伺服器在接收 EHLO 時,不僅中斷了連線,還處於問題狀態,則此策略可能無法奏效。

通道關鍵字 ehlonoehlocheckehlo 可用於處理此類情況。ehlo 關鍵字告知 MTA 在嘗試所有的初始連線時,使用 EHLO 指令。noehlo 關鍵字可完全停用 EHLO 指令。checkehlo 關鍵字測試由遠端 SMTP 伺服器傳回的回應大標題中有無字串「ESMTP」。如果發現此字串,則使用 EHLO;如果未發現,則使用 HELO。預設運作方式是在嘗試所有初始連線時使用 EHLO,除非大標題行包含字串「fire away」(在此情況下使用 HELO);請注意,由於此預設運作方式介於 ehlocheckehlo 關鍵字產生的運作方式之間,因此沒有對應於此預設運作方式的關鍵字。

12.4.2.3 ETRN 指令支援

關鍵字:allowetrnblocketrndisableetrndomainetrnsilentetrnsendetrnnosendetrnnovrfy

ETRN 指令定義於 RFC 1985 中,可提供 SMTP 服務的延伸,藉此,SMTP 用戶端與伺服器可以互動,使伺服器可以開始處理其要傳送至指定主機之郵件的佇列。

使用 ETRN,SMTP 用戶端可以請求遠端 SMTP 伺服器啟動對預定要傳送至 SMTP 用戶端的郵件佇列的處理。因此,ETRN 可提供一種實作遠端 SMTP 系統「輪詢」的方法,以便郵件內送至自己的系統。這對於彼此之間只有暫態連線的系統很有用,例如,作為其他站點之次要郵件交換 (MX) 主機而設定的站點與網際網路之間僅有撥接連線。透過啟用此指令,可允許遠端 (可能是撥接) 伺服器請求遞送它們的郵件。

SMTP 用戶端在 ETRN 指令行中指定郵件要傳送到的系統之名稱 (通常是 SMTP 用戶端系統自己的名稱)。如果遠端 SMTP 伺服器支援 ETRN 指令,它將會觸發獨立程序的執行,以連線回已命名的系統,並為該系統傳送正等候遞送的所有郵件。

回應 ETRN 指令

allowetrnblocketrndomainetrnsilentetrn 關鍵字可控制傳送 SMTP 用戶端發出 ETRN 指令以請求 MTA 嘗試遞送 MTA 佇列中郵件時的 MTA 回應。

依預設,MTA 將嘗試允許所有 ETRN 指令;亦即啟用 allowetrn 關鍵字。可以在通道定義中包含 blocketrn 關鍵字,從而指定 MTA 不允許 ETRN 指令。

可以包含 silentetrn 關鍵字,從而指定 MTA 允許所有 ETRN 指令,但不回應與網域相符的且 MTA 將嘗試執行的通道之名稱。domainetrn 關鍵字會指定 MTA 僅接受用於指定網域的 ETRN 指令;它也會使得 MTA 不會回應與網域相符且 MTA 將嘗試執行的通道名稱。

disableetrn 可完全停用對 ETRN 指令的支援;SMTP 伺服器不會將 ETRN 做為支援的指令進行通告。

傳送 ETRN 指令

sendetrnnosendetrn 通道關鍵字可控制 MTA 在開始 SMTP 連線時是否要傳送 ETRN 指令。預設值是 nosendetrn,表示 MTA 不會傳送 ETRN 指令。如果遠端 SMTP 伺服器表示支援 ETRNsendetrn 關鍵字即會告知 MTA 傳送 ETRN 指令。sendetrn 關鍵字後面應加上請求其郵件接收遞送嘗試的系統名稱。

12.4.2.4 VRFY 指令支援

關鍵字:domainvrfylocalvrfyvrfyallowvrfydefaultvrfyhide

VRFY 指令可讓 SMTP 用戶端傳送請求至 SMTP 伺服器,以驗證特定使用者名稱的郵件是否位於該伺服器上。VRFY 指令在 RFC 821 中定義。

伺服器傳送回應指示該使用者是否位於本機、郵件是否將被轉寄等。250 回應指示使用者名稱位於本機,251 回應指示使用者名稱不在本機,但伺服器可轉寄該郵件。伺服器回應中包含電子信箱名稱。

傳送 VRFY 指令

一般情況下,沒有必要發出 VRFY 指令做為 SMTP 對話的一部分。SMTP RCPT TO 指令執行的功能應與 VRFY 所執行的功能相同,並傳回相應的錯誤。但是,有些伺服器可以接受 RCPT TO 中的任何位址 (並在以後退回),而這些相同伺服器會執行更廣泛的檢查來做為 VRFY 指令的一部分。

依預設,MTA 不會傳送 VRFY 指令 (啟用 novrfy 關鍵字)。

請視需要在通道定義中包含 domainvrfylocalvrfy 關鍵字,從而將 MTA 配置為發出 SMTP VRFY 指令。關鍵字 domainvrfy 可導致發出 VRFY 指令,並包含完整的位址 (user@host) 做為該指令的引數。localvrfy 關鍵字可使 MTA 發出 VRFY 指令,但僅包含位址中的本機部分 (user)。

回應 VRFY 指令

vrfyallowvrfydefaultvrfyhide 關鍵字可控制傳送 SMTP 用戶端發出 SMTP VRFY 指令時,SMTP 伺服器的回應。

vrfyallow 關鍵字告知 MTA 發出詳細的資訊回應。vrfydefault 告知 MTA 提供詳細的資訊回應,除非已指定通道選項 HIDE_VERIFY=1vrfyhide 關鍵字告知 MTA 僅發出模糊的回應。這些關鍵字允許針對各通道控制 VRFY 回應,而與之相對的 HIDE_VERIFY 選項通常適用於透過同一 SMTP 伺服器處理的所有內送 TCP/IP 通道。

12.4.2.5 EXPN 支援

關鍵字:expnallowexpndisableexpndefault

expnallow 允許 EXPN,即使已在 SMTP 伺服器層級透過 DISABLE_EXPAND SMTP 通道選項停用了 EXPN。expndisable 無條件停用 EXPN。如果 SMTP 伺服器設定為允許 EXPN (預設),則 expndefault 允許 EXPN。可針對每個清單停用延伸,但如果在伺服器層級停用延伸,則每個清單的設定不相關。

12.4.2.6 DNS 網域驗證

關鍵字:mailfromdnsverifynomailfromdnsverify

對內送 TCP/IP 通道設定 mailfromdnsverify,會使得 MTA 驗證 DNS 中是否存在 SMTP MAIL FROM 指令中所用網域的項目,如果該項目不存在,則拒絕該郵件。預設值為 nomailfromdnsverify,表示不執行上述檢查。請注意,對傳回位址網域執行 DNS 檢查可能會導致某些需要的有效郵件被拒絕 (例如,來自只是尚未註冊網域名稱,或有時在 DNS 中存在錯誤資訊的合法站點的郵件);這樣就違背了 RFC 1123「Requirements for Internet Hosts」所體現的在接受與傳送電子郵件方面的包容性。但是,有些站點可能希望執行上述檢查,以避免傳送不存在的網域的帶有偽造電子郵件位址的垃圾電子郵件 (UBE)。

由於 COMORG 頂層網域中引入 DNS 萬用字元項目使 mailfromdnsverify 的作用降低,因此對 mailfromdnsverify 代碼進行了修改。DNS 傳回一個或多個 A 記錄時,這些值會與由新的 MTA 選項 BLOCKED_MAIL_FROM_IPS 所指定的網域文字列進行比較。如果相符,該網域會視為無效。為了復原正確的運作方式,目前的正確設定為:

BLOCKED_MAIL_FROM_IPS=[64.94.110.11]

此選項的值預設為空字串。

12.4.2.7 字元集標記與八位元資料

關鍵字:charset7charset8charsetescsevenbiteightbiteightnegotiateeightstrict

字元集標記

MIME 規格提供標記一般文字郵件中所使用的字元集的機制。具體來說,可指定 charset= 參數做為 Content-type: 標頭行的一部分。MIME 中定義了多種字元集名稱,包括 US-ASCII (預設)、ISO-8859-1 和 ISO-8859-2,後續還定義了許多其他字元集。

某些現有系統與使用者代理程式不提供產生上述字元集標籤的機制;因此,有些一般文字郵件可能無法正確標記。charset7charset8charsetesc 通道關鍵字提供針對各通道的機制,可指定要在缺少字元集標記的郵件標頭中插入的字元集名稱。 每個關鍵字都需要單一引數,以提供字元集名稱。這些名稱的有效性不會被檢查。但請注意,只能對 MTA 表目錄字元集定義檔案 charsets.txt 中所指定的字元集執行字元集轉換。如有可能,應使用該檔案中定義的名稱。

如果郵件僅包含七位元字元,則使用 charset7 字元集名稱;如果郵件包含八位元資料,則使用 charset8 字元集名稱;如果在僅包含七位元資料的郵件中碰巧還包含退出字元,則使用 charsetesc。如果未指定適當的關鍵字,則不會在 Content-type: 標頭行中插入任何字元集名稱。

請注意,charset8 關鍵字還控制郵件標頭中 (8 位元資料對於該標頭絕對為非法) 8 位元字元的 MIME 編碼。如果未指定 charset8 值,MTA 通常會將在郵件標頭中遇到的所有 (非法) 8 位元資料進行 MIME 編碼,將其標記為 UNKNOWN 字元集。

這些字元集規格永遠不會覆寫現有標籤,即如果郵件已有字元集標籤或郵件是文字以外的其他類型,則這些字元集規格都無效。通常適合將 MTA 本機通道標記為以下形式:


l ... charset7 US-ASCII charset8 ISO-8859-1 ...
hostname

如果郵件中沒有 Content-type 標頭,則會加入該標頭。如果沒有 MIME-version: 標頭行,此關鍵字還會加入該標頭行。

對於接收使用日語或韓語字元集、且包含退出字元之未標記郵件的通道,charsetesc 關鍵字極其有用。

八位元資料

某些傳輸會限制使用序數值大於 127 (十進位) 的字元。最明顯的是,某些 SMTP 伺服器會刪除高位元,並因此竄改使用此八位元範圍內字元的郵件。

Messaging Server 提供對這類郵件自動編碼的功能,使棘手的八位元字元不會直接顯示在郵件中。透過指定 sevenbit 關鍵字,此編碼可套用於在指定通道上排入佇列的所有郵件。如果不存在此類限制,則應將通道標記為 eightbit

SMTP 協定不允許使用 eightbit,「除非遠端 SMTP 伺服器明確表示支援允許使用 eightbit 的 SMTP 延伸」。某些傳輸 (例如延伸的 SMTP) 可以實際支援某種協商形式,以確定是否可以傳輸八位元字元。因此,極力建議使用 eightnegotiate 關鍵字來指示通道在協商失敗時對郵件進行編碼。這是所有通道的預設;不支援協商的通道只假定傳輸能夠處理八位元資料。

eightstrict 關鍵字會告知 Messaging Server 拒絕所有標頭包含非法八位元資料的內送郵件。

12.4.2.8 協定串流

關鍵字:streaming

某些郵件協定支援串流作業。這表示 MTA 可以一次發出多個作業,並等候各作業的回覆成批到達。streaming 關鍵字控制在與通道關聯的協定中使用的協定串流程度。此關鍵字需要整數參數,而參數的解譯方式特定於使用的協定。

在一般情況下,串流支援的有效程度透過 SMTP 管線化作業延伸來進行協商。因此,此關鍵字不應用於一般情況。

串流值有效範圍為到。數值 0 指定無串流,數值 1 會使 RCPT TO 指令群組串流,數值 2 會使 MAIL FROM/RCPT TO 串流,而數值 3 會使 HELO/MAIL FROM/RCPT TO 或 RSET/MAIL FROM/RCPT TO 串流被使用。預設值為 0。

12.4.3 TCP/IP 連線和 DNS 查詢支援

您可以指定有關伺服器如何處理 TCP/IP 連線與位址查詢的資訊。本節描述以下內容:

表 12–22 列出本小節說明的 TCP/IP 連線和 DNS 查詢關鍵字。

表 12–22 TCP/IP 連線和 DNS 查詢關鍵字

通道關鍵字 

說明 

選取連接埠和介面位址

指定 SMTP 連線的預設連接埠號和介面位址

port

指定 SMTP 連線的預設連接埠號。標準連接埠是 25。 

interfaceaddress

連結至特定的 TCP/IP 介面位址。 

快取關鍵字

指定如何快取連線資訊

cacheeverything

快取所有連線資訊。 

cachefailures

僅快取連線失敗資訊。 

cachesuccesses

僅快取連線成功資訊。 

nocache

不快取任何連線資訊。 

反向 DNS 查詢

指定如何對內送 SMTP 連線處理反向 DNS 查詢

forwardcheckdelete

如果已執行了反向 DNS 查詢,接著會對傳回的名稱執行正向查詢以檢查傳回的 IP 號碼是否符合原始號碼;如果不符合,則刪除此名稱並使用 IP 位址。 

forwardchecknone

執行反向 DNS 查詢之後,不執行正向查詢。 

forwardchecktag

如果已執行了反向 DNS 查詢,接著會對傳回的名稱執行正向查詢以檢查傳回的 IP 號碼是否符合原始號碼;如果不符合,用 * 標記該名稱。 

IDENT 查詢/DNS 反向查詢

指定如何對內送 SMTP 連線處理 IDENT 查詢和 DNS 反向查詢

identnone

不執行 IDENT 查詢;執行 IP 至主機名稱轉換;在 Received: 標頭中包含主機名稱和 IP 位址。

identnonelimited

不執行 IDENT 查詢;執行 IP 至主機名稱轉換,但在通道切換過程中不使用主機名稱;在 Received: 標頭中包含主機名稱和 IP 位址。

identnonenumeric

不執行 IDENT 查詢 IP 或至主機名稱轉換。 

identnonesymbolic

不執行 IDENT 查詢;執行 IP 至主機名稱轉換;在 Received: 標頭中僅包含主機名稱。

identtcp

對內送 SMTP 連線執行 IDENT 查詢,並執行 IP 至主機名稱轉換;在 Received: 標頭中包含主機名稱和 IP 位址

identtcplimited

對內送的 SMTP 連線執行 IDENT 查詢及 IP 至主機名稱轉換,但在通道切換期間不使用主機名稱。在 Received: 標頭中包含主機名稱和 IP 位址。

indenttcpnumeric

對內送的 SMTP 連線執行 IDENT 查詢,但不執行 IP 至主機名稱轉換。 

identtcpsymbolic

對內送 SMTP 連線執行 IDENT 查詢和 IP 至主機名稱轉換;在 Received: 標頭中僅包含主機名稱。

MX 記錄支援和 TCP/IP 名稱伺服器

指定通道是否支援 MX 記錄查詢以及方法

mx

TCP/IP 網路和軟體支援 MX 記錄查詢。 

nomx

TCP/IP 網路不支援 MX 查詢。 

defaultmx

通道確定是否從網路執行 MX 查詢。 

randommx

執行 MX 查詢;隨機排序具有同等優先順序的傳回項目。 

nonrandomemx

執行 MX 查詢;不隨機排序具有同等優先順序的傳回項目。 

nameservers

指定要查閱的名稱伺服器清單,而不查閱 TCP/IP 堆疊自己的名稱伺服器選項;nameservers 需要這些名稱伺服器的 IP 位址清單 (各 IP 位址之間以空格分隔)。

defaultnameservers

查閱 TCP/IP 堆疊的名稱伺服器選項。 

lastresort

指定最後一台主機。 

切換關鍵字

控制內送郵件之替代通道的選取

allowswitchchannel

允許從 switchchannel 通道切換至此通道

noswitchchannel

繼續使用伺服器通道;不切換至與原始主機關聯的通道;不允許被切換。 

switchchannel

從伺服器通道切換至與原始主機關聯的通道。 

userswitchchannel

來源通道會根據使用者或網域設定進行切換。 

tlsswitchchannel

TLS 協商成功時切換至其他通道。 

saslswitchchannel

SASL 認證成功時切換至其他通道。 

目標主機選擇和郵件副本儲存

指定目標主機系統以及儲存郵件副本的方法。

daemon

連線至特定的主機系統,不論訊息封位址為何。 

single

指定將為通道中的每個目標位址建立單獨的郵件副本。 

single_sys

為使用的每個目標系統建立單份郵件副本。 

12.4.3.1 TCP/IP 連接埠號和介面位址

關鍵字:portinterfaceaddress

經由 TCP/IP 通道的 SMTP 在傳送郵件時,通常會連線至連接埠 25。port 關鍵字可用於指示經由 TCP/IP 通道的 SMTP,連線至非標準連接埠。請注意,此關鍵字與派送程式選項 PORT 互補,該選項用於控制 MTA 偵聽哪些連接埠以接受 SMTP 連線。

interfaceaddress 關鍵字控制 TCP/IP 通道所連結做為外寄連線來源位址的位址;亦即在具有多個介面位址的系統上,此關鍵字可控制在 MTA 傳送外寄 SMTP 郵件時用做來源 IP 位址的位址。請注意,此關鍵字與派送程式選項 INTERFACE_ADDRESS 互補,該選項用於控制 TCP/IP 通道偵聽哪個介面位址,以接受內送連線與郵件。

12.4.3.2 快取通道連線資訊

關鍵字:cacheeverythingnocachecachefailurescachesuccesses

使用 SMTP 協定的通道會維護包含先前連線嘗試歷程記錄的快取記憶體。此快取記憶體可用於避免多次重新連線至無法存取的主機,以免浪費大量時間並延遲其他郵件。此快取記憶體針對各個程序,而且只在外寄 SMTP 遞送通道單次執行期間存留。

此快取記憶體通常會記錄連線成功與失敗。(記錄成功的連線嘗試是為了彌補後續的失敗 - 一台先前成功但現在失敗的主機並不保證進行另一次連線嘗試之前的延遲時間會與從未嘗試或先前失敗時進行連線嘗試之前的延遲時間一樣長。)

但是,MTA 所使用的快取策略不一定適合所有情況。因此,提供通道關鍵字來調整 MTA 快取記憶體。

cacheeverything 關鍵字會啟用所有形式的快取,該預設會如此做。nocache 關鍵字可停用所有快取。

cachefailures 關鍵字會啟用連線失敗而未成功的快取 — 如此會強制進行重試,而重試的限制比 cacheeverything 的限制更為嚴格。最後,cachesuccesses 只會快取成功的連線。最後這個關鍵字對於 SMTP 通道的效果等同於 nocache

12.4.3.3 反向 DNS 查詢

關鍵字:forwardchecknoneforwardchecktagforwardcheckdelete

forwardchecknoneforwardchecktagforwardcheckdelete 通道關鍵字可修改執行反向 DNS 查詢的效果。這些關鍵字可控制 MTA 是否對使用 DNS 反向查詢找到的 IP 名稱執行正向查詢,如果請求執行正向查詢,這些關鍵字還可指定當 IP 名稱的正向查詢結果與連線中原始 IP 號碼不相符時,MTA 應執行何種作業。

forwardchecknone 關鍵字為預設,它表示不執行正向查詢。forwardchecktag 關鍵字告知 MTA 在每次反向查詢之後執行正向查詢,如果使用正向查詢找到的號碼與原始連線的號碼不相符,就以星號 (*) 標記相應的 IP 名稱。forwardcheckdelete 關鍵字告知 MTA 在每次反向查詢之後執行正向查詢,如果反向查詢傳回的名稱之結果與原始連線 IP 位址不相符,就忽略 (刪除) 該名稱;在這種情況下,MTA 改為使用原始 IP 位址。


備註 –

對於許多站點,正向查詢的結果與原始 IP 位址不相符這種情況很正常,因為這些站點對數個不同的 IP 位址使用更「通用」的 IP 名稱。


12.4.3.4 IDENT 查詢

關鍵字:identnoneidentnonelimitedidenttnonnumericidentnonesymbolicidenttcpidenttcpnumericidenttcpsymbolicidenttcplimited

IDENT 關鍵字會控制 MTA 如何使用 IDENT 協定,來處理連線與查詢。IDENT 協定在 RFC 1413 中加以說明。

identtcpidenttcpsymbolicidenttcpnumeric 關鍵字會告知 MTA 使用 IDENT 協定來執行連線與查詢。從 IDENT 協定獲取的資訊 ( 通常是進行 SMTP 連線的使用者身份) 會插入到郵件的 Received: 標頭中,如下所示:


備註 –

遠端系統必須為 identtcpidenttcpsymbolicidenttcpnumeric 引起的 IDENT 查詢執行 IDENT 伺服器,使其發揮作用。


請注意,IDENT 查詢嘗試可能會影響效能。路由器會越來越多地「鎖定」嘗試與它們無法識別的連接埠進行的連線。如果 IDENT 查詢發生這種情況,則 MTA 在連線逾時 (TCP/IP 堆疊控制的逾時,通常是一兩分鐘) 之前將不會回聽。

identtcpindenttcplimitedidenttcpsymbolicidenttcpnumeric 比較時,會發現其他影響效能的因素。透過 identtcpidenttcplimitedidenttcpsymbolic 呼叫的 DNS 反向查詢,會產生一些額外的經常性耗用間,才可獲取更易使用的主機名稱。

identnone 關鍵字會停用 IDENT 查詢,但會指定 IP 至主機名稱的轉換,而且 IP 號碼和主機名稱都將包含在郵件的 Received: 標頭中。

identnonesymbolic 關鍵字會停用 IDENT 查詢,但會進行 IP 至主機名稱的轉換;僅有主機名稱會包含在郵件的 Received: 標頭中。

identnonenumeric 關鍵字會停用此 IDENT 查詢,禁止執行通常 IP 號碼至主機名稱的 DNS 反向查詢轉換,並可能會提昇效能,但會造成 Received: 標頭中較易使用的資訊變少。這是預設。

對於 IDENT 查詢、反向 DNS 查詢和 Received: 標頭中顯示的資訊而言,identtcplimitedidentnonelimited 關鍵字的效果分別與 identtcpidentnone 的效果相同。不同之處在於,使用 identtcplimitedidentnonelimited 時,不論 DNS 反向查詢是否成功地決定了主機名稱,IP 文字列位址一律會用做於使用 switchchannel 關鍵字而進行的任一通道切換之基礎。

12.4.3.5 TCP/IP MX 記錄支援

關鍵字:mxnomxdefaultmxrandommxnonrandommx

有些 TCP/IP 網路支援使用 MX (郵件轉寄) 記錄,有些則不支援。如果 MTA 系統所連線的網路不提供 MX 記錄,有些 TCP/IP 通道程式可被配置為不使用 MX 記錄。mxnomxdefaultmxrandommxnonrandommx 關鍵字控制 MX 記錄支援。

關鍵字 randommx 指定應執行 MX 查詢,而且應以隨機順序處理同等優先順序的 MX 記錄值。關鍵字 nonrandommx 指定應執行 MX 查詢,而且應以接收時的順序處理同等優先順序的 MX 值。

目前,mx 關鍵字等同於 nonrandommx;在未來的發行版本中可能會變更為等同於 randommxnomx 關鍵字停用 MX 查詢。defaultmx 關鍵字會指定在網路表示支援 MX 記錄時,應使用 mx。關鍵字 defaultmx 是以任何形式支援 MX 查詢的通道上之預設值。

12.4.3.6 名稱伺服器查詢

關鍵字:nameserversdefaultnameservers

執行名稱伺服器查詢時,nameservers 通道關鍵字可用於指定要查閱的名稱伺服器清單,而不是查閱 TCP/IP 堆疊自己的名稱伺服器選項。nameservers 關鍵字需要以空格分隔的名稱伺服器 IP 位址清單,如下例所示:

nameservers 1.2.3.1 1.2.3.2

預設值 defaultnameservers 表示使用 TCP/IP 堆疊自己的名稱伺服器選項。

為避免在 UNIX 上執行名稱伺服器查詢,可以修改 nsswitch.conf 檔案。在 NT 上修改 TCP/IP 配置。

12.4.3.7 最後一台主機

關鍵字:lastresort

lastresort 關鍵字用於指定即使所有其他連線嘗試均失敗,仍可連線的主機。實際上,它充當最後一個 MX 記錄。此關鍵字僅適用於 SMTP 通道。

此關鍵字需要單一引數以指定「最後一個可用的系統」之名稱。例如:

tcp_local single_sys smtp mx lastresort mailhub.siroe.com
TCP-DAEMON

12.4.3.8 內送的郵件的替代通道 (切換通道)

關鍵字:switchchannelallowswitchchannelnoswitchchannel。另請參閱12.4.4 SMTP 認證、SASL 與 TLS上的 saslswitchchannel12.4.8 傳輸層安全上的 tlsswitchchannel12.4.3.9 來源通道會根據使用者或網域設定進行切換上的 userswitchchannel

以下關鍵字會控制內送郵件的替代通道之選取:switchchannelallowswitchchannelnoswitchchannel

MTA 接受來自遠端系統的內送連線時,它必須選擇與此連線關聯的通道。通常此決定依使用的傳輸而定;例如,經由 TCP/IP 的內送 SMTP 連線會自動與 tcp_local 通道相關聯。

但是,使用具有不同特性的多個外寄通道處理經由同一傳輸的不同系統時,此慣例就無法奏效。發生這種情況時,內送連線不會與外寄連線所關聯的通道相關聯,因此對應的通道特性也不會與遠端系統相關聯。

switchchannel 關鍵字提供了解決此難題的方法。如果對伺服器使用的初始通道指定了 switchchannel,連線 (原始) 主機的 IP 位址將對照通道表進行比對,如果相符,則來源通道會隨之變更。如果找不到相符的 IP 位址,或發現相符結果符合原始預設的內送的通道,則 MTA 可以選擇使用 DNS 反向查詢所找到的主機名稱來嘗試比對。來源通道可以變更為標記了 switchchannelallowswitchchannel (預設) 的任何通道。noswitchchannel 關鍵字會指定不應自該通道進行切換,也不應切換至該通道。

switchchannel 的規格對於伺服器依預設關聯的通道以外的任何通道都無效。目前,switchchannel 僅會影響 SMTP 通道,但實際上也沒有其他通道適合使用 switchchannel

12.4.3.9 來源通道會根據使用者或網域設定進行切換

關鍵字:userswitchchannel。另請參閱12.4.3.8 內送的郵件的替代通道 (切換通道)上的 switchchannel

來源通道現在可以根據使用者或網域設定進行切換。其中包含三項新設定:

  1. 新的通道關鍵字 userswitchchannel。初始來源通道上必須有此關鍵字,使用者通道才能切換。

  2. 新的 MTA 選項 LDAP_DOMAIN_ATTR_SOURCE_CHANNEL,指定網域層級屬性名稱包含要切換的通道名稱。

  3. 新的 MTA 選項 LDAP_SOURCE_CHANNEL,指定使用者層級屬性名稱包含要切換的通道名稱。

此外,切換至的通道必須設定為允許通道切換。亦即,其不得以 noswitchchannel 關鍵字進行標記。切換會根據重寫 MAIL FROM 位址所傳回的資訊完成。請注意,由於這些 MAIL FROM 位址很容易遭偽造,因此請格外小心使用此功能。

12.4.3.10 目標主機選擇

關鍵字:daemonsinglesingle_sys

daemon 關鍵字的解譯與用法取決於其所套用之通道的類型。

daemon 關鍵字用於 SMTP 通道,可控制目標主機的選擇。

通常,通道會連線至要處理的郵件之訊息封位址中列出的任一台主機。daemon 關鍵字用於告知通道改為連線特定的遠端系統,通常是防火牆或郵件中心系統,而不論訊息封位址為何。實際的遠端系統名稱應直接出現在 daemon 關鍵字之後,如以下範例所示:

tcp_firewall smtp mx daemon firewall.acme.com
TCP-DAEMON

如果 daemon 關鍵字之後的引數並非完全合格的網域名稱,該引數會被忽略,而通道將連線至其正式主機。正式主機是與通道相關的完全合格的主機名稱。它可以在三行通道區塊的第二行中進行指定:

tcp_firewall smtp mx daemon router
firewall.acme.com
TCP-DAEMON

正式主機也可以在兩行通道區塊的 TCP-DAEMON 之後指定,因此,外寄連線將其做為特定主機來識別自己:

tcp_firewall smtp mx daemon router
TCP-DAEMON firewall.acme.com

指定防火牆或閘道系統名稱做為正式主機名稱時,通常將指定給 daemon 關鍵字的引數指定為路由器,如下例所示:

tcp_firewall smtp mx daemon router
firewall.acme.com
TCP-DAEMON

其他所需關鍵字為 singlesingle_syssingle 關鍵字指定將為通道中的每個目標位址建立單份郵件副本。single_sys 關鍵字為使用的每個目標系統建立單份郵件副本。請注意,不論使用的關鍵字為何,都要為郵件排入佇列時所在的每個通道至少建立一份郵件副本。

12.4.4 SMTP 認證、SASL 與 TLS

關鍵字:maysaslservermustsaslservernosaslnosaslserversaslswitchchannelnosaslswitchchannel

可以使用 SASL ( 簡單認證與安全層) 控制 Messaging Server 是否支援 SMTP 伺服器認證。SASL 定義於 RFC 2222 中。如需有關 SASL、SMTP 認證和安全性的更多資訊,請參閱第 23 章, 配置安全性和存取控制

maysaslservermustsaslservernosaslnosaslserver、switchchannelsaslswitchchannel 通道關鍵字可用於將 SASL (SMTP AUTH) 配置為可由 SMTP 通道 (例如 TCP/IP 通道) 在 SMTP 協定期間使用。

nosasl 為預設,表示不允許或不嘗試 SASL 認證。它包含 nosaslserver,該關鍵字表示不允許 SASL 認證。指定 maysaslserver 會使 SMTP 伺服器允許用戶端嘗試使用 SASL 認證。指定 mustsaslserver 可使 SMTP 伺服器堅持要求用戶端使用 SASL 認證;除非遠端用戶端認證成功,否則 SMTP 伺服器不接受郵件。

使用 saslswitchchannel 可使內送連線在用戶端成功使用 SASL 時切換至指定的通道。它接受所需的值,以指定要切換至哪個通道。

12.4.5 使用標頭中 SMTP AUTH 的經認證的位址

關鍵字:authrewrite

authrewrite 通道關鍵字和相關的 AUTH_REWRITE 對映表允許使用從認證作業獲得的定址資訊修改標頭和訊息封位址。具體來說,SASL 可以將認證配置為提供授權的電子郵件位址。雖然也可以透過 FROM_ACCESS 對映來覆寫該資訊,但通常會使用 SMTP AUTH 資訊。authrewrite 關鍵字根據表 12–23 取用所需的位元值。

表 12–23 authrewrite 位元值

位元 

值 

說明 

請勿做任何變更 (預設) 

增加含有認證作業提供的位址之 Sender: 或 Resent-sender: 標頭欄位。如果存在其他 resent- 欄位,則使用 Resent- 變體。 

增加含有認證作業提供的位址之 Sender: 標頭欄位。 

在名為 AUTH_REWRITE 的對映表中建構以下形式的探測:

mail-from|sender|from|auth-sender

其中,mail-from 為訊息封 From: 位址,sender 為來自 Sender:Resent-sender: 標頭欄位的位址,from 為來自 From:Resent-From: 標 頭欄位的位址,auth-sender 是認證作業提供的位址。

透過 AUTH_REWRITE 對映來執行結果。該對映應傳回以垂直線 ( |) 分隔的項目清單。可透過設定以下旗標按順序來使用這些項目:

$J $K 替代郵件的訊息封 From: 位址

$Y $T 增加相應的 Sender:Resent-sender: 標頭欄位。

$N 拒絕郵件。對映結果提供錯誤訊息文字。如果沒有提供文字,則將顯示 invalid originator address used 錯誤訊息。

$Z 增加相應的 From:Resent-from: 標頭欄位。(請注意,通常情況下請勿覆寫 From: 欄位。)

如果標頭中存在其他 Resent- 欄位,則使用 Resent- 變體。

16 

即使認證沒有提供經認證的位址,仍套用 AUTH_REWRITE 對映。如果清除位元,則將僅當有可用的經認證的位址時才套用對映。

32 

AUTH_REWRITE 對映探測開始處包含來源通道。以 | 將其與其餘的資訊分隔開。如果清除位元,則不包含此通道。


注意 – 注意 –

應嚴格限制 $Z 旗標,因為其很少正式用於修改訊息封和標頭位址。


12.4.6 SMTP 資料塊支援

關鍵字: chunkingclientchunkingservernochunkingclient nochunkingserver

SMTP 資料塊 (RFC 3030) 支援已增至 SMTP 用戶端和伺服器。預設啟用這項支援。您可以使用四個新的通道關鍵字控制是否允許資料塊,如下所示:

已延伸記錄檔動作欄位,以指出傳輸指定的郵件時是否使用了資料塊。尤其是,如果使用資料塊,會附加 C。請注意,必須已使用 ESMTP,才能進行資料分塊,因此一般會看到如 EECDEC 的欄位值。

12.4.7 指定 Microsoft Exchange 閘道通道

關鍵字:msexchangenomsexchange

msexchange 通道關鍵字可用於 TCP/IP 通道,告知 MTA 此通道與 Microsoft Exchange 閘道和用戶端進行通訊。置於已啟用 SASL (透過 maysaslservermustsaslserver 關鍵字) 的內送 TCP/IP 通道時,它會導致 MTA 的 SMTP 伺服器使用「不正確的」格式 (根據原始 ESMTP AUTH 規格而不是新的已校正 AUTH 規格,原始 ESMTP AUTH 實際上與正確的 ESMTP 用法不相容) 通告 AUTH。例如,某些 Microsoft Exchange 用戶端無法識別正確的 AUTH 格式,僅能識別錯誤的 AUTH 格式。

msexchange 通道關鍵字還會通告 (和識別) 中斷的 TLS 指令。

nomsexchange 為預設。

12.4.8 傳輸層安全

關鍵字:maytlsmaytlsclientmaytlsservermusttlsmusttlsclientmusttlsservernotlsnotlsclientnotlsservertlsswitchchannel

maytlsmaytlsclientmaytlsservermusttlsmusttlsclientmusttlsservernotlsnotlsclientnotlsservertlsswitchchannel 通道關鍵字可用於將 TLS 配置為 SMTP 型通道 ( 例如 TCP/IP 通道) 在 SMTP 協定期間會使用它。

預設為 notls,表示不允許或不嘗試使用 TLS。它包含 notlsclient 關鍵字,該關鍵字表示 MTA SMTP 用戶端不會對外寄連線嘗試使用 TLS (在外寄連線期間不會發出 STARTTLS 指令);還包含 notlsserver 關鍵字,該關鍵字表示 MTA SMTP 伺服器不會對內送連線允許使用 TLS (STARTTLS 延伸不會被 SMTP 伺服器通告,指令本身也不會被接受)。

指定 maytls 會使 MTA 為內送連線提供 TLS 並對外寄連線嘗試 TLS。它包含 maytlsclient,該關鍵字表示 MTA SMTP 用戶端在傳送外寄郵件時,若是傳送給支援 TLS 的 SMTP 伺服器,則將嘗試使用 TLS;還包含 maytlsserver,該關鍵字表示 MTA SMTP 伺服器將通告支援 STARTTLS 延伸,並允許在接收郵件時使用 TLS。

請注意,為了使 TLS 發揮作用,必須滿足以下條件:

指定 musttls 會使 MTA 堅持要求對外寄與內送連線都使用 TLS;如果無法與遠端系統成功協商 TLS 的使用,則不會與之交換電子郵件。它包含 musttlsclient,該關鍵字表示 MTA SMTP 用戶端在傳送外寄郵件時,將堅持要求使用 TLS,並且不會將郵件傳送至未能成功協商使用 TLS 的 SMTP 伺服器 (MTA 將發出 STARTTLS 指令,而且該指令必須成功)。它還包含 musttlsserver,該關鍵字表示 MTA SMTP 伺服器在接收內送郵件時,將通告支援 STARTTLS 延伸,並會堅持要求使用 TLS,且不會接受來自未能成功協商使用 TLS 的用戶端的郵件。

tlsswitchchannel 關鍵字用於使內送連線在用戶端成功協商 TLS 時切換至指定的通道。它接受所需的值,以指定要切換至哪個通道。

12.5 配置郵件處理和遞送

您可以根據特定準則來配置伺服器嘗試遞送郵件的時機。還可以指定工作處理的參數,例如服務工作的處理限制或何時產生新的 SMTP 通道執行緒。本節描述以下內容:

如需有關郵件處理和傳送的概念資訊,請參閱表 12–24

12.5 配置郵件處理和遞送概括了本小節說明的關鍵字。

表 12–24 郵件處理和遞送關鍵字

關鍵字 

定義 

立即傳送

定義郵件的立即傳送規格。

immnonurgent

提交緊急、一般與非緊急郵件之後立即開始遞送。 

通道定向性

指定為通道提供服務的程式之類型

bidirectional 

通道由主要程式和從屬程式提供服務。 

master 

通道由主要程式 (master) 提供服務。

slave 

通道由從屬程式 (slave) 提供服務。

延遲傳送

定義延遲工作的傳送規格。

backoff

指定嘗試重新遞送延遲郵件的頻率。可以用 normalbackoffnonurgentbackoffurgentbackoff 來覆寫。

deferred

實作識別和允許 Deferred-delivery: 標頭行。

nodeferred

預設。指定不接受 Deferred-delivery: 標頭行。

nonurgentbackoff

嘗試重新遞送非緊急郵件的頻率。 

normalbackoff

嘗試重新遞送一般郵件的頻率。 

urgentbackoff

嘗試重新遞送緊急郵件的頻率。 

基於大小的郵件優先順序

根據郵件大小定義郵件優先順序。

nonurgentblocklimit

強制將大於此大小的郵件降為低於非緊急優先順序 (第二級優先順序),這表示這些郵件總是要等待下一個週期性工作來進一步處理。 

normalblocklimit

強制將大於此大小的郵件設定為非緊急優先順序。 

urgentblocklimit

強制將大於此大小的郵件設定為一般優先順序。 

通道執行工作的處理區

為具有不同緊急性的郵件以及工作的延遲指定處理區

pool

指定通道執行時所在的處理區。 

after

指定通道執行前的時間延遲。 

服務工作限制

針對每個工作指定可處理的服務工作數目與郵件檔案最大數目

maxjobs

為通道指定可以並行執行的最大工作數量。 

filesperjob

指定由單一工作處理的佇列項目數量。 

SMTP 通道執行緒

 

threaddepth

透過多重執行緒 SMTP 用戶端觸發新執行緒的郵件數量。 

多位址擴充

定義對具有多位收件者的郵件之處理

expandlimit

位址數量超過此限制時,「離線」處理內送郵件。 

expandchannel

指定因應用而執行延遲延伸時所在的通道。 

holdlimit

當內送的郵件之位址數量超過此限制時扣留該郵件。 

作業事件限制

指定連線作業事件限制

transactionlimit 

限制每個連線允許的郵件數目。 

無法傳送郵件通知

指定何時傳送無法傳送郵件通知。

notices

指定在通知傳送及郵件傳回之前可以經過的時間。 

nonurgentnotices

指定在非緊急優先順序的郵件之通知傳送及郵件傳回之前可以經過的時間。 

normalnotices

指定在一般優先順序的郵件之通知傳送及郵件傳回之前可以經過的時間。 

urgentnotices

指定在緊急優先順序的郵件之通知傳送及郵件傳回之前可以經過的時間。 

12.5.1 設定通道定向性

關鍵字:masterslavebidirectional

這三個關鍵字可用於指定通道是由主要程式 (master) 還是從屬程式 (slave) 提供服務,或是由兩者共同提供服務 (bidirectional)。如果這三個關鍵字都未指定,則預設值為 bidirectional。這些關鍵字可決定當郵件在通道上排入佇列時,MTA 是否啟動遞送活動。

這些關鍵字的使用反映相應通道程式的某些基本特徵。MTA 支援的各種通道的描述都指示這些關鍵字應在何時及何處使用。

12.5.2 實作延遲遞送日期

關鍵字:deferrednodeferredimmnonurgent

deferred 通道關鍵字實作識別和允許 Deferred-delivery: 標頭行。包含未來 deferred 遞送日期的郵件,會在通道佇列中暫停傳送,直到郵件過期被傳回或是到達延遲遞送日期為止。請參閱 RFC 1327,以取得有關 Deferred-delivery: 標頭行的格式與作業之詳細資訊。

關鍵字 nodeferred 為預設。您必須理解,對延遲郵件處理的支援由 RFC 1327 指定,它的實際實作可有效地讓人們使用郵件系統來延伸他們的磁碟配額,這一點很重要。

關鍵字 immnonurgent 在提交緊急、一般與非緊急郵件之後,立即開始傳送。

12.5.3 指定遞送失敗之郵件的重試頻率

關鍵字:backoffnonurgentbackoffnormalbackoffurgentbackoffnotices

依預設,傳送失敗之郵件的傳送重試頻率取決於該郵件的優先順序。遞送嘗試之間的預設間隔時間 (以分鐘為單位) 顯示如下。優先順序後的第一個數字指示初次遞送失敗後第一次嘗試重新遞送的時間 (分鐘數):

urgent: 30, 60, 60, 120, 120, 120, 240
normal: 60, 120, 120, 240, 240, 240, 480
nonurgent: 120, 240, 240, 480, 480, 480, 960

對於緊急郵件,嘗試重新遞送的時間是初次遞送失敗後 30 分鐘,第一次重試後 60 分鐘,第二次重試後 60 分鐘,第三次重試後 120 分鐘,以此類推。在指定的最後一次重試時間之後,都以相同的間隔時間重複。因此,對於緊急郵件,會每 240 分鐘重試一次。

傳送嘗試會持續一段時間,這段時間由 noticesnonurgentnoticesnormalnoticesurgentnotices 關鍵字指定。如果無法成功傳送郵件,就會產生傳送失敗通知,且該郵件將會傳回給寄件者。(如需有關 notices 關鍵字的詳細資訊,請參閱10.10.4.3 設定通知郵件遞送間隔時間

backoff 關鍵字可讓您為不同優先順序的郵件指定幾組自訂的傳送重試間隔。nonurgentbackoff 指定非緊急郵件的間隔。normalbackoff 指定一般郵件的間隔。urgentbackoff 指定緊急郵件的間隔。如果這些關鍵字均未指定,backoff 會為所有郵件指定間隔,而不論其優先順序為何。

範例如下:

urgentbackoff "pt30m" "pt1h" "pt2h" "pt3h" "pt4h" "pt5h" "pt8h" "pt16h"

此時,緊急郵件嘗試重新遞送的時間是初次遞送失敗後 30 分鐘,第一次遞送嘗試後一小時 (初次遞送失敗後小時 30 分鐘),第二次遞送嘗試後兩小時,第三次後三小時,第四次後四小時,第五次後五小時,第六次後八小時,第七次後十六小時。後續嘗試會每 16 小時執行一次,直至達到由 notices 關鍵字指定的時間段為止。如果無法成功遞送,就會產生遞送失敗通知,該郵件會傳回給寄件者。請注意,間隔語法位於 ISO 8601P 中,並在「Sun Java System Messaging Server Administration Reference」中加以說明。

在下一個範例中,

normalbackoff "pt30m" "pt1h" "pt8h" "p1d" "p2d” "p1w"

一般郵件的傳送重試時間是初次傳送失敗後 30 分鐘,第一次傳送嘗試後一小時,第二次嘗試後八小時,第三次後一天,第四次後兩天,第五次後一星期,而後每星期重複一次,直至達到由 notices 關鍵字指定的時間段為止。如果無法成功遞送,就會產生遞送失敗通知,該郵件會傳回給寄件者。

在最後一個範例中,

backoff "pt30m" "pt120m" "pt16h" "pt36h" "p3d"

不論郵件的優先順序為何 (除非以 nonurgentbackoffnormalbackoffurgentbackoff 覆寫),所有傳送失敗的郵件之傳送重試時間都會是初次遞送失敗後 30 分鐘,第一次重試後兩小時,第二次嘗試後十六小時,第三次後三十六小時,第四次後三天,而後每三天重複一次,直至達到由 notices 關鍵字指定的時間段為止。如果無法成功遞送,就會產生遞送失敗通知,該郵件會傳回給寄件者。

12.5.4 通道執行工作的處理區

關鍵字:pool

您可以透過在同一處理區中執行來配置各種通道,以共用資源。您可能想將其他通道配置為在特定通道的專用處理區中執行。在各處理區中,郵件會根據其優先順序,自動排序為不同的處理佇列。處理區中優先順序較高的郵件會比優先順序較低的郵件先得到處理。(請參閱12.5.7 基於大小的郵件優先順序

使用 pool 關鍵字可以逐個通道地選取建立工作的處理區。pool 關鍵字必須後接目前通道的傳送工作匯集時所在處理區的名稱。處理區名稱包含的字元不應超過十二個。

如需有關工作控制器概念和配置的詳細資訊,請參閱10.4.8 工作控制器檔案10.4.8 工作控制器檔案12.5.5 服務工作限制

12.5.5 服務工作限制

關鍵字:maxjobsfilesperjob

每次郵件在通道中排入佇列時,工作控制器均可確保會有一項遞送郵件的工作正在執行中。這可能涉及到啟動新的工作程序、新增執行緒或只指明工作已在執行中。但是,單一服務工作可能不足以確保及時遞送所有的郵件。(如需有關工作控制器概念和配置的詳細資訊,請參閱10.4.8 工作控制器檔案12.5.4 通道執行工作的處理區8.7 工作控制器)。

對於任何指定的安裝都會啟動合理的最大數量的程序與執行緒以遞送郵件。此最大數量取決於幾個因素,例如處理器的數量、磁碟的速度和連線的特徵。在 MTA 配置中,可以控制以下內容:

為執行指定通道而啟動的程序之最大數,是對通道設定的 maxjobs 和通道執行所在的處理區設定之 JOB_LIMIT 最小值。

假定有一封郵件需要處理。通常,工作控制器會啟動新的程序詳情如下:

尤其對於 SMTP 通道,新的執行緒或程序會在不同主機的郵件排入佇列時啟動。因此,對於 SMTP 通道,工作控制器會啟動新的程序,詳情如下。假定有一封郵件需要處理:

請參閱12.5.8 SMTP 通道執行緒

filesperjob 關鍵字可用於使 MTA 建立其他服務工作。此關鍵字接受單一正整數參數,指定在處理佇列項目 (即檔案) 的多個服務工作建立之前,有多少個佇列項目必須傳送至關聯的通道。如果此值小於或等於零,則表示佇列只請求一個服務工作。不指定關鍵字就相當於指定零值。此關鍵字的效果已經最大化;較大的估算數量將是實際建立的服務工作數量。

filesperjob 關鍵字會以實際佇列項目或檔案的數目除以指定值。請注意,指定郵件所產生的佇列項目之數目由多個因素所控制,包括但不僅限於 singlesingle_sys 關鍵字的使用,以及郵遞清單中標頭修改動作的規格。

maxjobs 關鍵字對可並行執行的服務工作之總數設定了一個上限。此關鍵字之後必須加整數值;即使服務工作的估算數目大於此值,實際上仍只會建立 maxjobs 數目的工作。如果未指定 maxjobs,則此值預設為 100。通常,maxjobs 的設定值應小於或等於通道使用的任何服務處理區中可同時執行的工作之總數。

12.5.6 設定連線作業事件限制

關鍵字:transactionlimit

transactionlimit 限制每個連線允許的郵件數目。此限制可透過以下方式來阻撓侵入者:

侵入者可透過 SMTP 連線並傳送多個 RCPT TO 指令,來嘗試推測出合法的電子郵件位址。透過限制作業事件所允許的無效 RCPT TO 數目可阻撓這類侵入。侵入者可能透過使用多個作業事件來進行回應,但藉由 transactionlimit 可以限制一個 SMTP 階段作業所允許的作業事件數目。侵入者可使用多個階段作業,但此時他的成本會增高。連線阻塞可用於以各種方式限制階段作業的數目,在大多數情況下會使成本變得過高。

不過我們一方也不是沒有負擔任何成本。某些用戶端對收件者限制、作業事件限制或兩種限制回應不佳。這些用戶端需要另行處理。但 TCP 通道選項可無條件套用至 SMTP 伺服器。解決方案為使用通道關鍵字和 switchchannel,將有問題的代理程式路由至限制較寬的通道。

12.5.7 基於大小的郵件優先順序

關鍵字:urgentblocklimitnormalblocklimitnonurgentblocklimit

urgentblocklimitnormalblocklimitnonurgentblocklimit 關鍵字可用於指示 MTA 根據郵件大小降低郵件的優先順序。這些關鍵字會影響工作控制器在處理郵件時所使用的優先順序。

12.5.8 SMTP 通道執行緒

關鍵字:threaddepth

多重執行緒 SMTP 用戶端會將不同目的地的郵件排序至不同的執行緒。threaddepth 關鍵字可用於指示多重執行緒的 SMTP 用戶端僅用任一執行緒處理指定數目的郵件,即使是均為同一目的地的郵件,仍使用額外的執行緒 (因此通常是在一個執行緒中處理所有的郵件)。此關鍵字預設為 10。

每當通道儲存區的增加量超過 threaddepth 的一倍時,工作控制器會嘗試增加處理量,專門用於處理該通道中已排入佇列的郵件。對於多重執行緒通道,工作控制器會通知處理該通道郵件的任一工作啟動新的執行緒,如果所有工作所具有的執行緒都達到了該通道所允許的最大數目 (tcp_* 通道之選項中的 MAX_CLIENT_THREADS),則工作控制器會啟動新的程序。對於單一執行緒通道,會啟動新的程序。請注意,如果已達到該通道 (maxjobs) 或處理區的工作限制 (JOB_LIMIT),則工作控制器將不會啟動新的工作。

實質上,threaddepth 可控制如何排程積極的工作。讓我們考量以下兩種不同情況:

(1) 一般 (外寄) SMTP 通道

(2) 轉寄至智慧主機的 SMTP 通道

工作控制器可排序目標主機指定其目標為特定通道的郵件,並排程工作以根據這些目標主機上的儲存區處理郵件。

第一個實例中有大量的目標主機,並且大多數目標主機的儲存區很小。許多執行緒將在那裡處於執行狀態,並且需要一切正常,但某些目標主機例如 aol、yahoo、hotmail 等可能無法正常運行,因為其中可能有大量的通訊流。如果執行緒深度為 128,則當儲存區達到 128 時,您才能向 yahoo 遞送另一個執行緒。但這是不夠的。

第二個實例中僅有一個目標主機,但可以將多個執行緒遞送至該主機。如果是所有執行緒均遞送至該主機,則預設值 10 就太小。

尤其通道連線的 SMTP 伺服器可處理多個同時連線時,可以使用 threaddepth 對常駐程式路由器 TCP/IP 通道 (一種連線單台特定 SMTP 伺服器的 TCP/IP 通道) 實現多執行緒。

12.5.9 多位址延伸

關鍵字:expandlimitexpandchannelholdlimit

大多數通道在傳送每個內送郵件的過程中都支援多個收件者位址的規格。單封郵件中的多個收件者位址之規格,可能會導致郵件傳送處理延遲 (線上延遲)。如果延遲時間過長,就會發生網路逾時,然後導致重複嘗試提交郵件以及其他問題。

如果單封郵件中指定的位址數量超過指定數量,則 MTA 提供的一項特殊功能會強制延遲 (離線) 處理。延遲處理郵件可以大幅降低線上延遲。但請注意,並不能完全避免處理時間的延遲。

這項特殊功能可藉由通道與關鍵字組合來啟動,例如通用 reprocessing 通道和 expandlimit 關鍵字的組合。expandlimit 關鍵字接受整數引數,指定延遲處理之前,來自該通道的郵件中應接受的位址數目。如果未指定 expandlimit 關鍵字,則預設值為無限大。數值 0 將強制延遲處理來自該通道的所有內送的位址。

請勿對本機通道或 reprocessing 通道本身指定 expandlimit 關鍵字;一旦指定,所帶來的結果將無法預測。

實際用於執行延遲處理的通道可以使用 expandchannel 關鍵字來指定;如果未指定 expandchannel,依預設會使用 reprocessing 通道,但是其他一些重新處理通道或處理通道可以用於特殊用途。如果執行延遲處理的通道是透過 expandchannel 指定的,則該通道應為 reprocessing 通道或 processing 通道;其他種類的通道規格可能會導致無法預測的結果。

reprocessing 通道或用於執行延遲處理的任何通道,都必須增加至 MTA 配置檔案中,以使 expandlimit 關鍵字生效。如果您的配置是由 MTA 配置公用程式建立的,則您應該已具有重新處理通道。

垃圾電子郵件的一個特徵就是通常具有特大的收件者位址清單。holdlimit 關鍵字告知 MTA 應將進入通道且導致收件者數目超過指定數目的郵件標記為 .HELD 郵件,並且在 reprocess 通道 (或透過 expandchannel 關鍵字指定的任何通道) 上排入佇列。這些檔案將在 reprocess 佇列中維持未處理狀態,等待 MTA Postmaster 手動介入。

12.5.10 啟用服務轉換

關鍵字:servicenoservice

service 關鍵字可無條件啟用服務轉換,不論 CHARSET-CONVERSION 項目為何。如果已設定 noservice 關鍵字,則必須透過 CHARSET-CONVERSION 對進入此通道的郵件啟用服務轉換。

12.6 配置位址處理

本節描述用於位址處理的關鍵字。包含以下各節:

12.6.1 位址類型和慣例

關鍵字:822733uucp header_822header_733header_uucp

這組關鍵字控制通道支援的位址類型。傳輸層 (郵件訊息封) 中使用的位址和郵件標頭中使用的位址存在差異。

12.6.1.1 822 (sourceroute)

來源路徑訊息封位址。此通道支援完整 RFC 822 格式的訊息封定址慣例,包含來源路徑。關鍵字 sourceroute 也可做為 822 的同義詞。如果未指定其他訊息封位址類型關鍵字,則該關鍵字為預設值。

12.6.1.2 733 (percents)

百分比符號訊息封位址。此通道支援完整 RFC 822 格式的訊息封定址慣例,但來源路徑除外;來源路徑必須使用百分比符號慣例來重寫。percents 也可做為 733 的同義詞。


備註 –

在 SMTP 通道上使用 733 位址慣例會導致這些慣例在 SMTP 訊息封中的傳輸層位址上繼續存在。這樣可能會違背 RFC 821。只有在您確實需要時,才能使用 733 位址慣例。


12.6.1.3 uucp (bangstyle)

樣式訊息封位址。此通道在訊息封中使用符合 RFC 976 樣式位址慣例的位址 (例如 UUCP 通道)。bangstyle 關鍵字也可做為 uucp 的同義詞。

12.6.1.4 header_822

來源路徑標頭位址。此通道支援完整 RFC 822 格式的標頭定址慣例,包含來源路徑。如果未指定其他標頭位址類型關鍵字,則該關鍵字為預設。

12.6.1.5 header_733

百分比符號標頭位址。此通道支援 RFC 822 格式的標頭定址慣例,但來源路徑除外;來源路徑必須使用百分比符號慣例來重寫。


備註 –

在郵件標頭中使用 733 位址慣例可能會違背 RFC 822 和 RFC 976。只有在您確定該通道連線至無法處理來源路徑位址的系統時,才能使用此關鍵字。


12.6.1.6 header_uucp

UUCP 或樣式標頭位址。建議不要使用此關鍵字。使用此關鍵字會違背 RFC 976。

12.6.2 解譯使用 ! 和 % 的位址

關鍵字:bangoverpercentnobangoverpercentpercentonly

系統一律會根據 RFC 822 和 RFC 976 解譯位址。但是,對於上述標準未提及的某些複合位址,在處理時會存在分歧。具體來說,A!B%C 形式的位址可解譯為:

雖然 RFC 976 暗指郵件程式可以使用後一組慣例來解譯位址,但不表示這種解譯是必要的。在某些情況下,使用前面的解譯可能更好。

bangoverpercent 關鍵字強制執行前面的 A!(B%C) 解譯。nobangoverpercent 關鍵字強制執行後面的 (A!B)%C 解譯。nobangoverpercent 為預設值。


備註 –

此關鍵字不會影響對 A!B@C 形式的位址之處理。這些位址一律會視為 (A!B)@C。RFC 822 和 RFC 976 均指定了此種處理方式。


percentonly 關鍵字會忽略 bang 路徑。設定此關鍵字後,百分比會被解譯,以進行路由。

12.6.3 在位址中新增路由資訊

關鍵字:exproutenoexprouteimproutenoimproute

MTA 所處理的定址模型假定所有系統均知悉其他所有系統的位址並瞭解如何到達這些系統。不幸的是,這種設想無法適用於所有情況,例如當通道連線至一個或多個不瞭解外界情形的系統 (例如,專用 TCP/IP 網路中的內部機器) 時。此通道上的這些系統位址在該站點以外的遠端系統上可能不合法。如果您希望能回覆這類位址,則這類位址必須包含來源路徑,告知遠端系統透過本地機器路由郵件。然後本地機器就會 (自動) 將郵件路由至這些機器。

exproute 關鍵字 (「明確路由」的縮寫形式) 會告知 MTA,當關聯通道的位址被傳送至遠端系統時,該通道需要明確的路由。如果對通道指定了此關鍵字,MTA 會將包含本機系統名稱 (或本機系統目前的別名) 的路由資訊,增加至符合此通道的所有標頭位址與所有訊息封 From: 位址中。noexproute 為預設值,指定不會增加路由資訊。

EXPROUTE_FORWARD 選項可用於將 exproute 的動作限制為 反向指向位址。當 MTA 透過無法為自身執行正確路由的通道連線至系統時,會發生另一種情況。在這種情況下,當郵件傳送至的通道連線至能力不足的系統時,必須為郵件中使用的所有關聯其他通道的位址指示路由。

隱式路由和 improute 關鍵字可用於處理此情況。MTA 瞭解當所有符合其他通道的位址用於傳送至標記為 improute 之通道的郵件時,都需要路由。預設為 noimproute,指定經指定不在通道發出的郵件之位址中增加路由資訊。IMPROUTE_FORWARD 選項可用於將 improute 的動作限制為反向指向位址。

exprouteimproute 關鍵字應謹慎使用。這些關鍵字會使位址更長、更複雜,並可能使其他系統所使用的智慧路由方案失敗。明確的路由和隱式路由不應與指定路徑產生混淆。指定路徑用於將重寫規則中的路由資訊插入位址中。這由特殊的 A@B@C 重寫規則範本啟動。

指定路徑啟動後可套用至標頭與訊息封中的所有位址。指定路徑由特殊的重寫規則來啟動,因此通常與目前使用的通道無關。另一方面,明確和明確路由都是針對通道進行控制的,插入的路由位址一律是本機系統。

12.6.4 停用明確的路由位址之重寫功能

關鍵字:routelocal

將位址重寫至通道時,routelocal 通道關鍵字會使 MTA 嘗試讓位址中任何明確的路由「短路」。明確路由的位址 (使用 !、% 或 @ 字元) 已簡化。

對「內部」通道 (例如內部 TCP/IP 通道) 使用此關鍵字可使轉送阻斷功能的配置更為簡單。

請注意,此關鍵字不應用於可能需要明確的 % 或其他路由的通道。

12.6.5 郵件移出佇列時重寫位址

關鍵字:connectalias connectcanonical

MTA 通常會在郵件於其通道上排入佇列時重寫位址。郵件移出佇列期間不會執行額外的重寫。當主機名稱變更,而通道佇列中存在仍要傳送至舊名稱的郵件時,就會發生潛在的問題。

connectalias 關鍵字告知 MTA 傳送至收件者位址中列出的任何主機。這是預設。關鍵字 connectcanonical 告知 MTA 連線 MTA 可以連線的系統之主機別名。

12.6.6 指定校正不完整的位址時要使用的主機名稱

關鍵字:remotehostnoremotehostdefaulthostnodefaulthost

MTA 通常會接收來自錯誤配置或不符合的郵件程式和 SMTP 用戶端的不包含網域名稱的位址。MTA 會在允許這些位址繼續傳送之前,嘗試將它們合法化。MTA 會透過在位址上附加網域名稱來達此目的 (例如,將 @siroe.com 附加至 mrochek)。

對於缺少網域名稱的訊息封 To: 位址,MTA 始終會假設應附加本地主機名稱。而對於其他位址 (例如 From: 位址),如果是 MTA SMTP 伺服器,則至少有兩個合理的網域名稱選擇:本地 MTA 主機名稱和用戶端 SMTP 報告的遠端主機名稱。或在某些情況下,可能還有第三個合理的選項,亦即將特定的網域名稱增加至進入該通道的郵件。目前,前兩個選擇都可能是正確的,因為這兩者可能發生的機率較高。處理配置不正確的 SMTP 用戶端時,適合使用遠端主機的網域名稱。處理簡易遠端郵件用戶端 (例如使用 SMTP 傳送郵件的 POP 或 IMAP 用戶端) 時,適合使用本地主機的網域名稱。或者,如果是簡易遠端郵件用戶端 (例如 POP 或 IMAP),用戶端應具有自己特定的網域名稱,此網域名稱並非本地主機的網域名稱,則可能適合加入特定的其他網域名稱。MTA 最理想的做法是允許逐個通道地進行選擇。

noremotehost 通道關鍵字指定應使用本地主機名稱。noremotehost 關鍵字為預設。

defaulthost 通道關鍵字用於指定特定主機名稱,以附加至不含網域名稱的內送使用者 ID。使用者 ID 後必須加上網域名稱,才能成為完整的位址 (訊息封 From: 和標頭中的位址) 進入該通道。(在提交通道中,defaulthost 關鍵字的第一個引數也會影響不含網域名稱的訊息封 To: 位址)。可以指定第二個網域名稱 (其中至少有一個小數點號),用於使訊息封 To: 位址完整。nodefaulthost 為預設值。

如之前12.4.3.8 內送的郵件的替代通道 (切換通道)一節所述,switchchannel 關鍵字會將內送 SMTP 連線與特定通道相關聯。此功能可用於在通道上群組遠端郵件用戶端,在此通道上,它們可以得到適當的處理。或者,較簡單的做法是部署符合標準的遠端郵件用戶端 (即便使用了多個不符合的用戶端),而非嘗試修正 MTA 主機上的整個網路的問題。

12.6.7 合法化無收件者標頭行的郵件

關鍵字:missingrecipientpolicy

RFC 822 (網際網路) 郵件必須包含收件者標頭行:To:Cc:Bcc: 標頭行。沒有上述標頭行的郵件是非法的。但是,有些不可靠的使用者代理程式和郵件程式 (例如,許多舊版 sendmail) 會傳送非法的郵件。

missingrecipientpolicy 關鍵字接受整數值,指定處理此類郵件的方法;如果未明確指定此關鍵字,則預設為 1 (原封不動地傳送非法郵件)。

表 12–25 missingrecipientpolicy

值 

動作 

根據 RFC 2822 的建議使用目前的最佳作法。目前相當於值 1。 

原封不動地傳送非法郵件。 

將訊息封 To: 收件者放入 To: 標頭行中。

將所有訊息封 To: 收件者放入單一 Bcc: 標頭行中。

產生群組建構 (例如「;」) To: 標頭行「To: Recipients not specified: ;」

產生空白 Bcc: 標頭行。

拒絕郵件。 

請注意,可使用 MISSING_RECIPIENT_POLICY 選項將 MTA 系統預設為此運作方式。Messaging Server 的初始配置將 MISSING_RECIPIENT_POLICY 設定為 1。

12.6.8 刪除非法空白收件者標頭

關鍵字:dropblanknodropblank

在 RFC 822 (網際網路) 郵件中,任何 To:Resent-To:Cc:Resent-Cc: 標頭均需要包含至少一個位址,亦即標頭的值不得為空。但是,有些郵件程式可以傳送這類非法標頭。如果對來源通道指定 dropblank 通道關鍵字,則會使得 MTA 刪除內送郵件中所有此類非法的空白標頭。

12.6.9 啟用通道特定的反向資料庫用途

關鍵字:reversenoreverse

reverse 關鍵字會告知 MTA,如果存在位址反向資料庫或 REVERSE 對映,則在通道上排入佇列的郵件之位址應由位址反向資料庫或 REVERSE 對映進行檢查,可能還會予以修改。noreverse 使通道上排入佇列的郵件中之位址免於進行位址反向處理。reverse 關鍵字為預設。請參閱10.9 將位址從內部格式轉換為公用格式

12.6.10 啟用有限電子信箱編碼

關鍵字:restrictedunrestricted

有些郵件系統很難處理 RFC 822 所允許的全部位址類型。尤其常見的範例是配置檔案不正確的基於的郵件程式。加引號的本機部分 (或 電子信箱規格) 經常出現問題:

"smith, ned"@siroe.com

在 RFC 1137 中已經有方法可以解決這種麻煩之源。基本方法是從位址中移除引號,然後進行轉換,將需要引號的字元對映至原子中允許的字元 (請參閱 RFC 822,以瞭解有關原子在此處使用時的定義)。例如,上述位址會變成:

smith#m#_ned@siroe.com

restricted 通道關鍵字會告知 MTA 該通道會連線需要此編碼的郵件系統。然後,MTA 會在郵件寫入至通道時,對標頭位址和訊息封位址中加引號的本機部分進行編碼。而此通道上內送的位址會被自動解碼。unrestricted 關鍵字會告知 MTA 不要執行 RFC 1137 編碼和解碼。unrestricted 關鍵字為預設值。


備註 –

restricted 關鍵字應套用於連線無法接受加引號的本機部分的系統之通道。而不適用於實際產生加引號之本機部分的通道。(據假定,能夠產生此種位址的通道也能夠處理此種位址。)


12.6.11 產生 Return-path 標頭行

關鍵字:addreturnpathnoaddreturnpath

通常,增加 Return-path: 標頭行由執行最終傳送的通道負責。但對於某些通道 (例如 ims-ms 通道),由 MTA 增加 Return-path: 標頭比讓通道執行增加動作更有效。addreturnpath 關鍵字可使 MTA 在此通道上排入佇列時,增加 Return-path: 標頭。

12.6.12 從訊息封 To 和 From 位址建構 Received 標頭行

關鍵字:receivedfornoreceivedforreceivedfromnoreceivedfrom

receivedfor 關鍵字會指示 MTA,如果郵件只傳送給一位訊息封收件者,則在其建構的Received: 標頭行中包含訊息封 To: 位址。receivedfor 關鍵字為預設值。noreceivedfor 關鍵字會指示 MTA 建構 Received: 標頭行,但不包含任何訊息封位址資訊。

receivedfrom 關鍵字指示 MTA,如果 MTA 出於某些原因 (例如某種郵遞清單擴充) 變更了訊息封 From:位址,則在為內送郵件建構 Received: 標頭行時,包含原始訊息封的 From: 位址。receivedfrom 為預設。noreceivedfor 關鍵字指示 MTA 建構 Received: 標頭行,但不包含原始訊息封 From: 位址。

12.6.13 處理位址標頭行中的註釋

關鍵字:commentinccommentmap commentomitcommentstripcommenttotalsourcecommentincsourcecommentmapsourcecommentomitsourcecommentstripsourcecommenttotal

只有在必要時才解譯標頭行的內容。但是所有包含位址的已註冊標頭行都必須被剖析以重寫並消除縮寫形式的位址,否則就轉換成合法位址。在此過程中,如果重建標頭行,會擷取註釋 (括號中的字串),並可能對註釋進行修改或排除。

使用 commentinccommentmapcommentomitcommentstripcommenttotal 關鍵字可控制此運作方式。commentinc 關鍵字告知 MTA 保留標頭行中的註釋。這是預設。關鍵字 commentomit 會告知 MTA 要移除定址標頭 (例如,To:From:Cc: 標頭行) 中的所有註釋。

關鍵字 commenttotal 告知 MTA 移除所有標頭行 (Received: 標頭行除外) 中的所有註釋;通常不使用或不建議使用此關鍵字。commentstrip 關鍵字告知 MTA 刪除所有註釋欄位中的所有不可分割字元。commentmap 關鍵字透過 COMMENT_STRINGS 對映表來執行註釋字串。

對來源通道,可使用 sourcecommentincsourcecommentmapsourcecommentomitsourcecommentstripsourcecommenttotal 關鍵字來控制此運作方式。sourcecommentinc 關鍵字指示 MTA 保留標頭行中的註釋。這是預設。sourcecommentomit 關鍵字指示 MTA 移除定址標頭 (例如 To:、From: 和 Cc: 標頭) 中的所有註釋。關鍵字 sourcecommenttotal 會指示 MTA 會除所有標頭 (Received: 標頭除外) 中的所有註釋;通常不使用或不建議使用此關鍵字。 最後,sourcecommentstrip 關鍵字會指示 MTA 刪除所有註釋欄位中所有不可分割字元。sourcecommentmap 關鍵字透過來源通道執行註釋字串。

這些關鍵字適用於任何通道。

COMMENT_STRINGS 對映表的語法如下所示:

(comment_text) | address

如果項目範本設定 $Y 旗標,則原始註釋將被指定的文字 (該文字應包括外圍的括號) 取代。

12.6.14 處理位址標頭行中的個人名稱

關鍵字:personalinc personalmappersonalomitpersonalstripsourcepersonalincsourcepersonalmapsourcepersonalomitsourcepersonalstrip

在重寫過程中,所有包含位址的標頭行都必須被剖析以重寫並消除縮寫形式的位址,否則就轉換成合法位址。在此過程中,如果重建標頭行,則會擷取個人名稱 (角括號分隔的位址之前的字串),並可以對個人名稱進行選擇性修改或排除。

可以使用 personalincpersonalmappersonalomitpersonalstrip 關鍵字控制此運作方式。關鍵字 personalinc 告知 MTA 保留標頭中的個人名稱。這是預設。關鍵字 personalomit 會告知 MTA 移除所有個人名稱。關鍵字 personalstrip 會告知 MTA 刪除所有個人名稱欄位中所有不可分割的字元。personalmap 關鍵字指示 MTA 透過 PERSONAL_NAMES 對映表執行個人名稱。

對於來源通道,可以使用 sourcepersonalincsourcepersonalmapsourcepersonalomitsourcepersonalstrip 關鍵字控制此運作方式。sourcepersonalinc 關鍵字指示 MTA 保留標頭中的個人名稱。這是預設。sourcepersonalomit 關鍵字指示 MTA 移除所有個人名稱。最後,sourcepersonalstrip 會指示 MTA 刪除所有個人名稱欄位中所有不可分割的字元。sourcepersonalmap 關鍵字會指示 MTA 透過來源通道執行個人名稱。

這些關鍵字適用於任何通道。

PERSONAL_NAMES 對映表探測的語法如下:

personal_name | address

如果範本設定 $Y 旗標,則原始個人名稱將被指定的文字取代。

12.6.15 指定別名檔案和別名資料庫探測

關鍵字:aliaslocal

通常,只有重寫至本機通道 (即 UNIX 上的 l 通道) 的位址會在檔案和資料庫供人查詢。aliaslocal 關鍵字可置於某個通道,使重寫至該通道的位址在別名檔案和別名資料庫中供人查詢。而所建立的查詢探測之精確形式由 ALIAS_DOMAINS 選項控制。

12.6.16 子位址處理

關鍵字:subaddressexactsubaddressrelaxedsubaddresswild

根據子位址的概念, 本機通道和 ims-ms 通道會解譯位址 (尤其是name+subaddress@domain 形式的位址) 本機部分 (電子信箱部分) 中的 + 字元,MTA 會將加號字元後面的電子信箱部分視為子位址。本機通道會將子位址視為額外的表面資訊,實際遞送至帳號名稱,而與子位址無關;ims-ms 通道會將子位址解譯為要遞送至的資料夾名稱。

子位址還會影響到依本機通道 (即 UNIX 上的 L 通道) 的別名查詢、依 aliaslocal 關鍵字標記的任何通道的別名查詢,以及依目錄通道的電子信箱查詢。對此類相符的子位址之確切處理是可配置的:比對位址與項目時,MTA 始終先檢查整個電子信箱包括子位址是否完全相符;之後 MTA 是否要執行額外的檢查,則是可配置的。

subaddressexact 關鍵字指示 MTA 在項目比對期間,不執行特殊的子位址處理;整個電子信箱,包括子位址,都必須比對項目,這樣才能將別名視為相符。額外的比對 (尤其是萬用字元比對或移除子位址的比對) 不會執行。subaddresswild 關鍵字會指示 MTA 在尋找包括整個子位址完全相符的項目後,接著應尋找 name+* 形式的項目。subaddressrelaxed 關鍵字指示 MTA 在尋找完全相符的項目、且尋找了符合 name+* 形式的項目之後,應額外檢查名稱部分是否相符。使用 subaddressrelaxed,以下形式的別名項目符合名稱或名稱+子位址形式,一般名稱會轉變成新名稱,而名稱+子位址會轉變成新名稱+子位址。subaddressrelaxed 關鍵字為預設值。

name:   newname+*

因此,當別名或目錄通道正在使用中,而使用者希望接收使用任意子位址傳送的郵件時,subaddresswild 關鍵字或 subaddressrelaxed 關鍵字可能會有用。這兩個關鍵字使您不必為位址上各個子位址變體設定單獨的項目。

請注意,這兩個關鍵字只對本機通道 (即 UNIX 上的 L 通道)、目錄通道或使用 aliaslocal 關鍵字標記的任一通道有意義。

標準 Messaging Server 配置在確實具有 subaddressrelaxed 運作方式 (如果未明確使用其他關鍵字,則使用預設值) 的 L 通道上進行轉送。

12.6.17 啟用通道特定的重寫規則檢查

關鍵字:rulesnorules

rules 關鍵字會告知 MTA 對此通道強制執行通道專用的重寫規則檢查。這是預設。norules 關鍵字會告知 MTA 不對此通道執行檢查。這兩個關鍵字通常用於除錯,在實際應用中很少使用。

12.6.18 移除來源路徑

關鍵字:dequeue_removeroute

dequeue_removeroute 關鍵字可在郵件移出佇列時,從訊息封 To: 位址中移除來源路由。此關鍵字目前僅對 tcp-* 通道實作。它可用於將郵件傳送至未正確處理來源路徑的系統。

12.6.19 指定位址必須來自別名

關鍵字: viaaliasoptionalviaaliasrequired

viaaliasrequired 會指定相符通道的所有最終收件者位址皆必須由別名產生。最終收件者位址是指執行別名延伸 (如果有關) 之後的相符項目。該位址無法做為收件者位址直接傳送給 MTA;亦即對於位址而言,僅重寫至通道還不夠。重寫至通道之後,位址還必須透過被視為真正符合通道的別名來延伸。

例如,必須將 viaaliasrequired 關鍵字用於本機通道,以避免傳送至任意帳號 (例如 UNIX 系統上任意的本機 Berkeley 電子信箱)。

預設為 viaaliasoptional,表示相符通道的最終收件者位址不需要由別名產生。

12.6.20 收件者位址處理

關鍵字: acceptalladdressesacceptvalidaddresses

acceptvalidaddresses 是預設值,對應於 MTA 的標準運作方式,這會在 SMTP 對話期間立即報告任何收件者錯誤。如果在通道上指定關鍵字 acceptalladdresses,則在 SMTP 對話期間會接受全部的收件者位址。任何無效的位址都會在稍後傳送 DSN。

12.7 配置標頭處理

本節描述用於處理標頭和訊息封資訊的關鍵字。包含以下各節:

12.7.1 重寫內嵌式標頭

關鍵字:noinnerinner

只有在必要時才會解譯標頭行的內容。但是,由於 MIME 郵件中可以嵌入郵件 (郵件/RFC822),因此可以包含多組郵件標頭。MTA 通常只會解譯和重寫最外面一組郵件標頭。也可以選擇告知 MTA 將標頭重寫套用於郵件中的內部標頭。

可以使用 noinnerinner 關鍵字來控制此運作方式。關鍵字 noinner 告知 MTA 不重寫內部郵件標頭行。這是預設。關鍵字 inner 會告知 MTA 剖析郵件並重寫內部標頭。這些關鍵字適用於任何通道。

12.7.2 移除選取的郵件標頭行

關鍵字:headertrimnoheadertrimheaderreadnoheaderreadinnertrimnoinnertrim

MTA 提供針對各通道在郵件中修整或移除選取的郵件標頭行的功能。此功能透過通道關鍵字與一個或兩個關聯標頭選項檔案組合而實現。「Sun Java System Messaging Server 6.3 Administration Reference」中的「Header Option Files」內說明了標頭選項檔案格式。

headertrim 關鍵字指示 MTA 在處理原始郵件標頭之後,諮詢與通道關聯的標頭選項檔案,並相應地修整已在目標通道上排入佇列的郵件之標頭。noheadertrim 關鍵字會略過標頭修整。noheadertrim 關鍵字為預設。

innertrim 關鍵字還指示 MTA 對內部郵件部分 (亦即內嵌的 MESSAGE/RFC822 部分) 執行標頭修整。noinnertrim 關鍵字為預設,告知 MTA 不對內部郵件部分執行任何標頭修整。

headerread 關鍵字指示 MTA 在處理原始郵件標頭之前,諮詢與通道關聯的標頭選項檔案,並相應地修整由來源通道排入佇列的郵件中的標頭。請注意,另一方面,headertrim 標頭修整是在處理郵件之後套用的,而且是針對目標通道而非來源通道。noheaderread 關鍵字會略過排入佇列的郵件之標頭修整。noheaderread 為預設值。

headeromitheaderbottom 關鍵字不同,headertrimheaderread 關鍵字適用於任何通道。但請注意,刪除郵件中的重要標頭資訊,可能會導致 MTA 作業發生錯誤。當您選擇移除或限制標頭時,必須極其謹慎。此功能的存在是因為偶爾會有一些情況,必須要移除或限制選取的標頭行。


注意 – 注意 –

刪除郵件中的標頭資訊可能會導致 MTA 作業發生錯誤。當您選擇移除或限制標頭時,必須謹慎。在一些罕見的情況下,必須移除或限制選取的標頭行,這些關鍵字就是為此而提供的。修整或移除任何標題行之前,您必須瞭解標頭行的用法,並考量移除該標題行可能會牽涉到哪些方面。


headertriminnertrim 關鍵字之標頭選項檔案的名稱形式為 channel_headers.opt,其中 channel 是標頭選項檔案相關聯的通道名稱。同樣地,headerread 關鍵字之標頭選項檔案的名稱形式為 channel_read_headers.opt。這些檔案儲存在 MTA 配置目錄 instance_root/config/ 中。

12.7.3 產生/移除 X-Envelope-to 標頭行

關鍵字:x_env_tonox_env_to

x_env_tonox_env_to 關鍵字控制在特定通道上排入佇列之郵件副本中 X-Envelope-to 標頭行的產生和抑制。在使用 single 關鍵字標記的通道上,x_env_to 關鍵字可產生這些標頭,而 nox_env_to 則從排入佇列的郵件中移除此類標頭。預設為 nox_env_to

現在即使未在通道上設定 single,也能使用 x_env_to 關鍵字,但其意義不大。

12.7.4 轉換日期為兩位數或四位數

關鍵字:datefourdatetwo

原始 RFC 822 規格在郵件標頭的日期欄位中需要兩位數年份。後來 RFC 1123 將其變更為四位數。但是,某些較舊的郵件系統無法使用四位數日期。此外,一些較新的郵件系統無法再接受兩位數日期。


備註 –

無法處理這兩種格式的系統是違反標準的。


datefourdatetwo 關鍵字控制 MTA 對郵件標頭日期中年份欄位的處理方式。關鍵字 datefour 為預設值,其會指示 MTA 將所有年份欄位擴充為四位數。小於 50 的兩位數日期加上 2000,大於 50 的則加上 1900。


注意 – 注意 –

關鍵字 datetwo 指示 MTA 移除四位數日期中的前兩位數。這是為了與需要兩位數日期的不符合郵件系統相容;不應用於其他任何目的。


12.7.5 在日期中指定星期

關鍵字:dayofweeknodayofweek

RFC 822 規格允許在郵件標頭的日期欄位前面加上星期規格。但是,有些系統無法適應星期資訊。這使某些系統不願納入此資訊,即使此資訊在標頭中非常有用。

dayofweeknodayofweek 關鍵字控制 MTA 對星期資訊的處理。關鍵字 dayofweek 為預設,指示 MTA 保留任何星期資訊,如果日期和時間標頭中缺少此資訊,則增加此資訊。


注意 – 注意 –

關鍵字 nodayofweek 指示 MTA 從日期和時間標頭中移除前面的所有星期資訊。這是為了與無法正確處理此資訊的不符合郵件系統相容;不應用於其他任何目的。


12.7.6 自動分割長標頭行

關鍵字:maxheaderaddrsmaxheaderchars

某些郵件傳送程式 (尤其是某些實作) 無法正確處理長標頭行。這不但經常造成標頭損毀,還造成錯誤的郵件拒絕。雖然嚴重違反標準,但卻是一個常見問題。

MTA 提供針對通道將長標頭行分割 (換行) 為多個各自獨立的標頭行的功能。maxheaderaddrs 關鍵字控制一行中可以顯示的位址數。maxheaderchars 關鍵字控制一行中可以顯示的字元數。這兩個關鍵字都需要單一整數參數,以指定相關限制。依預設,標頭行的長度和可以顯示的位址數均無限制。

12.7.7 標頭對齊和摺疊

關鍵字:headerlabelalignheaderlinelength

headerlabelalign 關鍵字控制在此通道上排入佇列的郵件標頭之對齊點;其為值為整數的引數。對齊點就是標頭內容對齊時的邊界。例如,對齊點為 10 的範例標頭行外觀如下:


To:       joe@siroe.com
From:     mary@siroe.com
Subject:  Alignment test
         

預設 headerlabelalign 為 0,這將使標頭不會對齊。headerlinelength 關鍵字可控制在此通道上排入佇列的郵件標頭行的長度。超過此長度的行根據 RFC 822 摺疊規則進行摺疊。

這些關鍵字僅控制郵件佇列中郵件的標頭格式;標頭的實際顯示通常由使用者代理程式控制。此外,標頭在網際網路上傳送時會依慣例重新格式化,因此這些關鍵字即使與不重新格式化郵件標頭的簡易使用者代理程式一併使用,可能也沒有什麼明顯效果。

12.7.8 指定標頭最大長度

關鍵字:maxprocchars

處理包含大量位址的長標頭行會消耗大量的系統資源。maxprocchars 關鍵字用於指定 MTA 可以處理和重寫的標頭之最大長度。標頭超過此長度的郵件仍會被接受和遞送;唯一不同之處是長標頭行不會進行任何重寫。需要單一整數引數。預設為處理任何長度的標頭。

12.7.9 敏感性檢查

關鍵字:sensitivitynormalsensitivitypersonalsensitivityprivatesensitivitycompanyconfidential

敏感性檢查關鍵字可設定通道可接受之郵件的敏感性上限。預設為 sensitivitycompanyconfidential;可接受所有敏感性的郵件。沒有 Sensitivity: 標頭的郵件會被視為一般郵件,即最低敏感性的郵件。敏感性高於此關鍵字指定敏感性的郵件,在通道上排入佇列時會被拒絕,螢幕上會顯示以下錯誤訊息:

message too sensitive for one or more paths used

請注意,MTA 會針對每封郵件進行敏感性檢查,而非針對各收件者進行檢查:如果一位收件者的目標通道無法通過敏感性檢查,則對於所有的收件者,該郵件均被退回,而不只是針對與敏感通道關聯的那些收件者。

12.7.10 設定標頭中的預設語言

關鍵字:language

標頭中的編碼文字可以使用特定語言。language 關鍵字指定預設語言。

12.7.11 控制 Message-hash: 標頭

關鍵字:generatemessagehashkeepmessagehashdeletemessagehash

這些關鍵字可控制郵件上的 Message-hash: 標頭。在目標通道上指定 Generatemessage 會導致在郵件中插入 Message-hash: 標頭欄位。Keepmessagehash 會保留所有現有的 Message-hash: 欄位。Deletemessagehash 會刪除所有現有的 Message-hash: 欄位。Deletemessagehash 為預設值。

置於 Message-Hash: 欄位中的值是郵件的雜湊。數個新 MTA 選項能控制產生雜湊的方式:

MESSAGE_HASH_ALGORITHM - 雜湊演算法。可以是下列其中之一:md2md4md5 (預設值)、sha1md128 (針對 RIPE-MD128) 或 md160 (針對 RIPE-MD160)。

MESSAGE_HASH_FIELDS - 從標頭到雜湊的欄位以逗號分隔的清單 (依序)。可指定任何已知的標頭欄位。如果未指定此選項,預設為「message-id,from,to,cc,bcc, resent-message-id,resent-from,resent-to,resent-cc,resent-bcc, subject,content-id,content-type,content-description」

12.8 附件和 MIME 處理

本節描述用於處理附件和處理的關鍵字。包含以下各節:

12.8.1 忽略 Encoding 標頭行

關鍵字:ignoreencodinginterpretencoding

MTA 可以使用 Yes CHARSET-CONVERSION 將各種非標準郵件格式轉換為 MIME。尤其是,使用非標準 Encoding: 標頭行的 RFC 1154 格式。但是,有些閘道會在此標頭行上加入錯誤的資訊,從而導致有時忽略此標頭行更好。ignoreencoding 關鍵字指示 MTA 忽略任一 Encoding: 標頭行。


備註 –

除非 MTA 已啟用 CHARSET-CONVERSION,否則此類標頭在任何情況下都會被忽略。interpretencoding 關鍵字可指示 MTA 注意任一 Encoding: 標頭行 (如果配置為執行此動作),而且該關鍵字為預設。


12.8.2 郵件/部分郵件的自動重組

關鍵字:defragmentnodefragment

MIME 標準提供郵件部分內容類型以將郵件斷成較小的部分。郵件必須通過有大小限制或不可靠的網路時,這項功能會很有用,郵件分段程序提供「檢查點」表單,在網路於郵件傳輸期間發生故障時,可減少後續重複傳輸工作。每個部分均包含資訊,使郵件在到達目的地之後可以自動重新組合。

defragment 通道關鍵字和重組通道可用於在 MTA 中重新組合郵件。通道標記為 defragment 時,在通道上排入佇列的所有部分郵件都會改置於重組通道佇列中。所有部分均到達之後,郵件就會重建並傳送出去。nodefragment 會停用這種特殊處理。關鍵字 nodefragment 為預設值。

12.8.2.1 重組通道

如果目標通道上有 defragment 關鍵字,郵件會路由至重組通道。也就是說,當 MTA 一般會讓郵件在此排入佇列的目標通道上有 defragment 關鍵字時,MTA 會「在內部尋找」(MIME 剖析) 郵件結構,如果 MTA 找到的結構為 MIME 郵件片段,則 MTA 會自動將此郵件路由至重組通道,而不是直接路由至 (一般) 目標通道。

重組資料庫包含關於進入 MTA 的郵件片段之資訊,包括指出接收每封郵件片段的主機資訊。一旦重組資料庫接收並記錄了初始片段後,在使用相同重組資料庫的任何其他系統上所接收的郵件其他部分,都將會路由至接收最初部分的主機。例如:

  1. 由於目標/外寄通道上有 defragment 關鍵字,message/partial; id=123; part=x 會在抵達主機 1 後,路由至主機 1 上的重組通道。

  2. 主機 1 上的重組通道會檢查重組資料庫的此封郵件,是否還有任何其他部分要抵達。如果沒有,重組通道 (位於主機 1 上) 會將此部分輸入重組資料庫,並標記此部分目前在主機 1 上。

  3. 由於目標/外寄通道上有 defragment 關鍵字,message/partial; id=123; part=y 會在抵達主機 2 後,路由至主機 2 上的重組通道。

  4. 主機 2 上的重組通道會檢查重組資料庫,查看此封郵件的 x 部分是否已存在並儲存在主機 1 上。重組通道會將此郵件片段重新導入主機 1 (來源會路由具有 @host1 的位址)。

  5. message/partial' id=123; part=y 會抵達主機 1,路由至重組通道,接著重組通道會執行並將此部分輸入資料庫等。

其餘郵件片段部分會重新導入接收此郵件第一部分 (第一個接收的部分,不一定是 part=1) 的主機。主機的重組通道會重新組合這些片段,此重新組合(reassemble) 與重組 (defragment) 的郵件最後會傳送至實際的目標通道 (或者如果由於超過通知次數而導致重組動作逾時,則會以現狀傳送個別片段)。視接收每封郵件的「第一」部分之主機而定,您可能會取得郵件重組的部分負載平衡。

12.8.2.2 重組通道保留時間

郵件僅在磁碟重組通道佇列中保留有限時間。如果第一條未遞送通知被傳送之前時間已過半,則郵件各部分無需重新組合即會繼續傳送。這種時間值的選擇會避免傳送有關磁碟重組通道佇列中郵件的未投遞通知。

notices 通道關鍵字控制傳送未傳送通知之前的時間長度,從而也控制按部分傳送郵件之前保留郵件的時間長度。請將 notices 關鍵字的值設定為希望保留郵件之時間長度的兩倍 (以進行可能的重組)。例如,notices 值為 4 時會將郵件片段保留兩天:


defragment notices 4 
DEFRAGMENT-DAEMON

12.8.2.3 使用 NFS 型檔案系統進行重組和自動回覆快取

NFS 型檔案系統經常用在重組和自動回覆快取。若要讓應用程式共用多台 MTA 系統之間的重組資料庫,這些系統必須共用相同的重組快取。若要執行這項作業,請建立每台系統上的 msg-svr-base/config/defragment_cache 與共用重組資料庫所在的檔案連結,此連結將位於共用 NFS 磁碟上。

在任何情況下,支援適當 NFS 檔案語義的 NFS 伺服器 (特別是那些接受鎖定請求的伺服器,如 Solaris NFS) 皆可用於自動回覆和重組快取。如果使用 NFS,請使用軟式掛載選項。(預設值為硬式掛載。)設定由 mount timeo 選項控制、極短的逾時值 (請參閱 mount_nfs(1M) 線上手冊) 也是很好的方法。

若是使用 NFS 硬式掛載且 NFS 離線,使用者會看到各種系統上的重組通道當機。若是使用軟式掛載,重組通道不會當機,但由於通道無法開啟重組快取,因此無法與其他主機上的重組通道進行協調。若是郵件所有片段剛好同時首次抵達同一台主機 (機率很小),則主機的重組通道可能會重新組合郵件,並傳送此完整重新組合的郵件。比較可能的情況,是這些片段位於不同的主機,並在相關重組通道的保留時間過期時,不重新組合便以個別片段進行傳送。

12.8.3 大型郵件的自動分段程序

關鍵字:maxblocksmaxlines

有些電子郵件系統或網路傳送程式無法處理超過特定大小限制的郵件。MTA 提供可逐個通道地強加此類限制之功能。大於設定限制的郵件將會自動分割 (分段) 成多個較小的郵件。用於此類分段的內容類型為 message/partial,並且會增加唯一的 ID 參數,使同一郵件的各個部分互相關聯,並可以由接收郵件程式自動重新組合。

maxblocksmaxlines 關鍵字可用於強加大小限制,超過此限制便會啟動自動分段程序。這兩個關鍵字之後都必須有單一整數值。關鍵字 maxblocks 指定郵件中允許的最大區塊數量。MTA 區塊通常為 1024 個位元組;可以透過 MTA 選項檔案中的 BLOCK_SIZE 選項變更此值。關鍵字 maxlines 可指定郵件中允許的最大行數。如有必要,可同時設定這兩個限制。

在某種程度上郵件標頭包含在郵件的大小中。由於郵件標頭無法分割成多封郵件,可是它們本身也可能超過指定的大小限制,因此有一種更複雜的機制用於計算郵件標頭大小。此邏輯由 MTA 選項檔案中的 MAX_HEADER_BLOCK_USEMAX_HEADER_LINE_USE 選項控制。

MAX_HEADER_BLOCK_USE 用於指定 0 到 1 之間的實數。預設值為 0.5。郵件的標頭幾乎可以佔用郵件可消耗的區塊總數 (由 maxblocks 關鍵字指定)。如果郵件標頭超過此大小,MTA 會將 MAX_HEADER_BLOCK_USEmaxblocks 的乘積做為標頭的大小 (標頭大小會使用實際標頭大小和 maxblocks 兩者中較小者) * MAX_HEADER_BLOCK_USE

例如,如果 maxblocks 為 10,而 MAX_HEADER_BLOCK_USE 為預設值 0.5,任何大於 5 個區塊的郵件標頭都會被視為 5 區塊標頭,而如果郵件大小等於或小於 5 個區塊,將不會被分段。數值 0 會使標頭在有關郵件大小限制範圍內被實際忽略。

數值 1 允許標頭用完所有可用的大小。每個分段始終至少包含一個郵件行而不論此郵件行是否超過限制。MAX_HEADER_LINE_USE 以類似的方式和 maxlines 關鍵字一同運作。

12.8.4 設定郵件行長度限制

關鍵字:linelength

SMTP 規格允許文字行最多包含 1000 個位元組。但是,有些傳送程式可以對行長度設定更嚴格的限制。linelength 關鍵字提供一種機制,可逐個通道地限制允許的最大郵件行長度。對於在指定通道上排入佇列的郵件,如果有行長度超過為該通道指定的限制,則該郵件會被自動編碼。

MTA 中可用的各種編碼總會使行長度縮減到 80 個字元以下。執行上述編碼之後,透過套用適當的解碼篩選器,即可回復原始郵件。


備註 –

編碼僅能將行長度縮減到 80 個字元以下。低於 80 的行長度值規格可能無法正確產生長度符合指定限制的行。


linelength 關鍵字可使資料編碼執行「軟」換行,以進行傳輸。編碼通常是在接收端執行解碼,以回復原始「長」行。如需瞭解「硬」換行,請參閱表 13–7 中的「Record, text」。

12.8.5 解譯 Multiparts 和郵件/RFC822 部分的 Content-transfer-encoding 欄位

關鍵字:interpretmultipartencodingignoremultipartencoding interpretmessageencodingignoremessageencoding

MIME 規格禁止在 multipart 或郵件/rfc822 部分使用 7 位元、8 位元和二進位之外的 content-transfer-encoding。長久以來,某些代理程式違反這個規格,而將 multipart 和郵件/rfc822 物件編碼。相應地,MTA 程式碼可以接受和移除此類編碼。然而,最近出現了另一種違反標準的情形,也就是 content-transfer-encoding 欄位上雖然有以引號括住的可列印值或 base63,但事實上並未編碼此部分。如果 MTA 嘗試將此類訊息解碼,結果通常是出現空白訊息,與預期的結果不同。

出現這種問題的訊息相當常見,因此新增兩組新的通道關鍵字,可啟用或停用 multipart 和郵件/rfc822 部分的 content-transfer-encoding 欄位編譯。第一組是 interpretmultipartencodingignoremultipartencoding,第二組是 interpretmessageencodingignoremessageencoding。預設值是 interpretmultipartencodinginterpretmessageencoding

12.9 對郵件、配額、收件者和認證嘗試次數的限制

本節描述用於設定郵件大小限制、使用者配額和權限的關鍵字。包含以下各節:

12.9.1 對不成功的認證嘗試的限制

關鍵字:disconnectbadauthlimit

此關鍵字可用於設定對中斷連線之前階段作業內所允許的未成功認證嘗試次數的限制。此選項的預設值為 3。

12.9.2 指定絕對郵件大小限制

關鍵字:blocklimitnoblocklimitlinelimitnolinelimitsourceblocklimit

雖然分段程序可以自動將郵件分割成較小的部分,但在有些情況下,拒絕超出某種管理上定義之限制的郵件更為合適 (例如,為了避免阻絕服務攻擊)。

blocklimitlinelimitsourceblocklimit 關鍵字用於強加絕對大小限制。這些關鍵字之後都必須有單一整數值。

關鍵字 blocklimit 指定郵件中允許的最大區塊數目。MTA 會拒絕將所含區塊超過此限制的郵件在通道上排入佇列的嘗試。MTA 區塊通常為 1024 個位元組;可以透過 MTA 選項檔案中的 BLOCK_SIZE 選項變更此值。

關鍵字 sourceblocklimit 指定內送郵件中允許的最大區塊數目。MTA 會拒絕將所含區塊超過此限制的郵件提交給通道的嘗試。換言之,blocklimit 適用於目標通道;sourceblocklimit 適用於來源通道。一個 MTA 區塊通常為 1024 個位元組;可以使用 MTA 選項檔案中的 BLOCK_SIZE 選項變更此值。

也可以根據寄件者指定來源區塊限制,方法是:使用 MTA 選項 LDAP_SOURCEBLOCKLIMIT 指定使用者 LDAP 屬性,並將該屬性增加至寄件者 LDAP 項目。根據寄件者的網域,來源區塊限制也受支援。使用 MTA 選項 LDAP_DOMAIN_ATTR_SOURCEBLOCKLIMIT 指定網域 LDAP 屬性,並將此屬性增加至寄件者的網域 LDAP 項目。這些值均無預設。

關鍵字 linelimit 指定郵件中允許的最大行數。MTA 會拒絕將所含行數超過此限制的郵件在通道上排入佇列的嘗試。如有必要,可以同時強加 blocklimitlinelimit 關鍵字。

MTA 選項 LINE_LIMITBLOCK_LIMIT 可用於對所有通道強加類似限制。這些限制的優點是適用於所有通道。因此,MTA 伺服器可在獲取郵件收件者資訊之前,讓郵件用戶端得知各項限制。如此可簡化某些協定中拒絕郵件的程序。

nolinelimitnoblocklimit 通道關鍵字為預設值,表示除了使用 LINE_LIMITBLOCK_LIMIT MTA 選項強加的所有全域限制之外,不再設定其他任何限制。

12.9.3 重定郵件大小或收件者超出限制的郵件之目標

關鍵字:alternatechannelalternateblocklimitalternatelinelimitalternaterecipientlimit

MTA 能夠將收件者數量、郵件大小或郵件行數超過指定限制的郵件之目標重定至替代目標通道。這項功能透過一組通道關鍵字進行實作,它們是:alternatechannelalternateblocklimitalternatelinelimitalternaterecipientlimit,這些關鍵字可置於任何目標通道上。alternatechannel 關鍵字使用單一引數,用於指定要使用的替代通道之名稱。其他每個關鍵字都需要一個整數引數,用於指定對應的臨界值。超過任何臨界值的郵件將在替代通道 (而非原始目標通道) 上排入佇列。

在以下通道區塊範例中,超過 5000 個區塊的大型郵件會從 tcp_big 通道而非 tcp_local 通道發往網際網路:


tcp_local smtp ...other keywords... alternatechannel tcp_big alternateblocklimit 5
tcp-daemon


tcp_big smtp ...rest of keywords...
tcp-big-daemon

以下是 alternate* 通道關鍵字的使用範例:

12.9.4 處理對超過配額的使用者的郵件遞送

關鍵字:holdexquotanoexquota

noexquotaholdexquota 關鍵字控制對傳送給 Berkeley 電子信箱使用者 (UNIX) (亦即傳送至 uid 本機通道而且超過其磁碟配額的使用者) 之郵件的處理。

noexquota 告知 MTA 將傳送給超過配額的使用者數目之郵件傳回給郵件寄件者。holdexquota 告知 MTA 保留傳送給超過配額的使用者數目之郵件;這類郵件會保留在 MTA 佇列中,直到其被傳送或逾時,然後由郵件傳回工作傳回給寄件者。

12.9.5 處理行長度超過 1000 個字元的 SMTP 郵件

關鍵字:rejectsmtplonglineswrapsmtplonglinestruncatesmtplonglines

rejectsmtplonglines 增加拒絕行長度超過 SMTP 所允許的1000 個字元(包括 CRLF) 的郵件之選項。此區域中的其他選項為 wrapsmtplonglines (將過長的行換行) 和預設選項 truncatesmtplonglines (將過長的行截斷)。這兩種關鍵字均必須套用至用於提交的初始通道 (例如 tcp_local)。這不會影響隨後切換到的通道。

12.9.6 控制一般和檔案名稱內容類型及內容處理參數的長度

關鍵字:parameterlengthlimitnameparameterlengthlimit

parameterlengthlimit 控制一般內容類型和內容處理參數的截斷點。預設值為 1024。nameparameterlengthlimit 會控制名稱內容類型和檔案名稱內容處理參數的截斷點。預設為 128。請注意,除非郵件正在執行 MIME 處理,否則僅處理最外層的郵件標頭。可透過多種方式啟用 MIME 處理,包括但不僅限於 inner 關鍵字或使用字元集轉換。

12.9.7 限制郵件收件者

關鍵字:recipientlimitrecipientcutoff

recipientlimit 指定郵件將接受的收件者位址總數。recipientcutoff 將提交給 MTA 的收件者總數與指定的值進行比較。如果超過該限制或該值,則不接受遞送任何郵件。兩個關鍵字都接受單一的整數引數。除非已指定相應的通道關鍵字,否則二者的預設均是無限的。

還可以在寄件者或寄件者的網域上設定收件者限制。其方法是使用適當的 MTA 選項指定使用者或網域 LDAP 屬性:LDAP_RECIPIENTLIMITLDAP_RECIPIENTCUTOFFLDAP_DOMAIN_ATTR_RECIPIENTLIMITLDAP_DOMAIN_ATTR_RECIPIENTCUTOFF,並將該屬性增加至寄件者的使用者項目或網域項目。

12.9.8 限制標頭大小

關鍵字:headerlimit

強制限制主要 (最外層) 郵件標頭的最大大小。當達到限制時主要郵件標頭會悄然截斷。如果已設定全域 MTA 選項 HEADER_LIMIT,則其將覆寫此通道層級限制。預設為無限制。

12.10 在 MTA 佇列中建立檔案

本節描述可讓您透過指定在 MTA 佇列中建立檔案來控制磁碟資源的關鍵字。包含以下各節:

12.10.1 控制如何處理郵件上的多個位址

關鍵字:multipleaddrsperfilesinglesingle_sys

MTA 允許每個已排入佇列的郵件中存在多個目標位址。有些通道程式可能只能處理具有一位收件者的郵件、收件者數量有限的郵件或每份郵件副本只有單一目標系統的郵件。例如,SMTP 通道主要程式在指定的作業事件中只建立一個連至單一遠端主機的連線,因此只會處理傳送至該主機的位址 (雖然如此,單一通道通常用於所有 SMTP 通訊流)。

另一個範例是有些 SMTP 伺服器可以限制它們可一次處理的收件者數量,而且可能無法處理此類型的錯誤。

關鍵字 multipleaddrsperfilesinglesingle_sys 可用於控制如何處理多個位址。關鍵字 single 表示將為通道中的每個目標位址建立單獨的郵件副本。不建議在 tcp_* 通道上使用 single,因為它會變更工作控制器管理流量的方式,不適用於一般 SMTP 情況。關鍵字 single_sys 為使用的每個目標系統建立單份郵件副本。關鍵字 multiple 為預設,會為整個通道建立單份郵件副本。


備註 –

不論使用的關鍵字為何,都要為郵件排入佇列時所在的每個通道至少建立一份郵件副本。


addrsperfile 關鍵字用於限制可與通道佇列中單一郵件檔案關聯的收件者之最大數目,從而可以限制單一作業中所處理的收件者數目。此關鍵字需要單一整數引數,用於指定郵件檔案允許的收件者位址最大數量;如果達到此數量,MTA 會自動建立額外的郵件檔案來容納它們。(預設 multiple 關鍵字一般相當於不限制郵件檔案中的收件者數目,但是 SMTP 通道預設為 99。)

12.10.2 跨多個子目錄分佈通道郵件佇列

關鍵字:subdirs

依預設,所有排入通道佇列的郵件都會以檔案形式儲存在 msg_svr_base/queue/channel-name 目錄中,其中的 channel-name 是通道名稱。但是,如果等待處理的郵件檔案分佈在大量子目錄上,則處理大量郵件並傾向於為那些郵件檔案建立大型儲存的通道 (例如 TCP/IP 通道),可以發揮比檔案系統更高的效能。subdirs 通道關鍵字提供此功能:此關鍵字之後必須有一個整數,用於指定為通道分佈郵件的子目錄數量,例如:

tcp_local single_sys smtp subdirs 10

12.10.3 設定階段作業限制

關鍵字:disconnectbadcommandlimitdisconnectrecipientlimitdisconnectrejectlimitdisconnecttransactionlimit

這四個新的通道關鍵字可以使 SMTP 伺服器在偵測到某個數量的錯誤之後中斷與用戶端的連線:

disconnectrecipientlimit - 限制階段作業收件者的數目。

disconnectrejectlimit - 限制拒絕的收件者之數目。

disconnecttransactionlimit - 限制作業事件的數目。

disconnectbadcommandlimit - 限制錯誤指令的數目。

這些限制針對所有階段作業。發出 MAIL FROMRSET 指令時,檢查除 disconnectbadcommandlimit 以外的所有這些限制。如果超過其中一項限制,伺服器則發出 4xy 錯誤並斷開連線。錯誤指令限制僅在由發出的錯誤指令進行檢查時不同於其他限制。

12.11 配置記錄和除錯

本節描述記錄和除錯關鍵字。

12.11.1 記錄關鍵字

關鍵字:loggingnologginglogheader

MTA 提供記錄每封郵件排入佇列與移出佇列情況的功能。loggingnologging 關鍵字可用於針對各通道控制郵件記錄。依預設,初始配置會開啟對所有通道的記錄。可以在特定通道定義中以 nologging 關鍵字替換,從而停用對相應通道的記錄。

logheader 根據通道來覆寫 LOG_HEADER MTA 選項。其值為 0 (預設) 時,停用郵件標頭記錄。如需更多資訊,請參閱「Sun Java System Messaging Server 6.3 Administration Reference」中的「Option File」

如需有關記錄的更多資訊,請參閱第 25 章, 管理記錄

12.11.2 除錯關鍵字

關鍵字:master_debugslave_debugnomaster_debugnoslave_debug

有些通道程式包含可選程式碼可透過產生額外的診斷輸出來協助除錯。有兩個通道關鍵字可使這種針對各通道的除錯輸出產生。這兩個關鍵字分別是在主程式中啟用除錯輸出的 master_debug,以及在從屬程式中啟用除錯輸出的 slave_debug。依預設,這兩種除錯輸出類型都會停用,對應的關鍵字為 nomaster_debugnoslave_debug

啟動之後,除錯輸出會在與通道程式關聯的記錄檔中結束作業。各程式的記錄檔位置可能有所不同。記錄檔通常位於記錄目錄中。主程式的記錄檔名稱形式通常為 x_master.log,其中,x 為通道名稱。從屬程式的記錄檔名稱形式通常為 x_slave.log

在 UNIX 中,為 l 通道啟用 master_debugslave_debug 後,使用者會在他們目前包含 MTA 除錯資訊的目錄 (如果他們擁有該目錄的寫入權限;否則,除錯輸出將發至 stdout.) 中收到 imta_sendmail.log-uniqueid 檔案。

12.11.3 設定迴圈檢查

關鍵字:loopchecknoloopcheck

loopcheck 關鍵字會將字串置入 SMTP EHLO 回應大標題中,讓 MTA 檢查是否與其自身通訊。設定 loopcheck 後,SMTP 伺服器會通告 XLOOP 延伸。

當 MTA 的用戶端與支援 XLOOP 的 SMTP 伺服器通訊時,會比對公佈的字串與其 MTA 的值,如果用戶端事實上是與該 SMTP 伺服器通訊,則會立即退回郵件。

12.12 其他關鍵字

本節描述其他關鍵字。包含以下各節:

12.12.1 程序通道覆寫

關鍵字:notificationchanneldispositionchannel

這些關鍵字分別將程序通道覆寫為最初形成遞送狀態通知 (DSN) 和郵件處理通知 (MDN) 佇列的位置。如果命名的通道不存在,則 Messaging Server 將使用程序通道繼續。

notificationchannel 將程序通道覆寫為最初形成傳送狀態通知 (DSN) 佇列的位置。如果命名的通道不存在,則 Messaging Server 將使用程序通道繼續。

dispositionchannel 將程序通道覆寫為最初形成郵件處理通知 (MDN) 佇列的位置。如果命名的通道不存在,則 Messaging Server 將使用程序通道繼續。

12.12.2 通道作業類型

關鍵字:submit

Messaging Server 支援RFC 2476 的郵件提交協定。submit 可用於將通道標記為僅供提交的通道。這通常對於 TCP/IP 通道最有用,例如在完全用於提交郵件的特殊連接埠上執行的 SMTP 伺服器;RFC 2476 建立連接埠 587 供此類郵件提交之用。

12.12.3 管道通道

關鍵字:user

user 關鍵字在 pipe 通道上用於指示執行時所用的使用者名稱。

請注意,user 的引數通常必須小寫,但如果該引數加上引號,便可保留原始大小寫形式。

12.12.4 指定電子信箱篩選器檔案位置

關鍵字:filternofilter、channelfilter、nochannelfilterdestinationfilternodestinationfiltersourcefilternosourcefilterfileintonofileinto

filter 關鍵字可用於本機通道和 ims-ms 通道,以指定通道的使用者篩選器檔案位置。它接受說明篩選器檔案位置所必需的 URL 引數。nofilter 為預設值,表示此通道未啟用使用者電子信箱篩選器。

sourcefilterdestinationfilter 關鍵字可用於一般 MTA 通道,指定通道層級的篩選器,以分別套用於內送的郵件和外寄的郵件。這些關鍵字接受說明通道篩選器檔案位置所必需的 URL 引數。nosourcefilternodestinationfilter 為預設值,表示通道任一方向均未啟用通道電子信箱篩選器。

棄用的 channelfilternochannelfilter 關鍵字分別是 destinationfilternodestinationfilter 的同義詞。

fileinto 關鍵字目前只支援 ims-ms 和 LMTP 通道,可指定套用電子信箱篩選器 fileinto 運算子時如何改變位址。對於 ims-ms 通道,通常的用法是:

fileinto $U+$S@$D

上述用法指定資料夾名稱應作為子位址插入至原始位址中,取代任何原有子位址。

對於 LMTP 通道,通常的用法是:

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

其中,$4O 是 4 和字母 O (不是數字零)。

12.12.5 垃圾郵件篩選器關鍵字

關鍵字:destinationspamfilterX optinsourcespamfilterX optindisabledestinationspamfilterXdisablesourcespamfilter X

destinationspamfilterX optin 指定發送至此通道的全部訊息通過篩選軟體 X,即使使用者或網域未使用 LDAP_OPTINX LDAP 屬性指定這些服務,也必須通過 (在 option.dat 中,篩選軟體 X 由 spamfilter X_library 定義)。此關鍵字後接 optin 參數,可用的參數視篩選程式而定。例如,Brightmail 的參數通常為 spamvirusspam,virus。SpamAssassin 參數為 spam

sourcespamfilterXoptin 指定從此通道發送的所有郵件均透過篩選軟體 X 執行 (在 option.dat 中,篩選軟體 X 由 spamfilterX_library 定義)。此關鍵字後接系統範圍的預設參數,可用的參數視篩選程式而定。如果 switchchannel 生效,則應將此關鍵字置於切換至的通道上。

sourcespamfilterXdestinationspamfilterX 的作用與 destinationspamfilterXoptindestinationspamfilterX optin 相同,但是不接受 optin 參數。這些都用於不傳送參數且只是單純啟用或停用的篩選軟體。

disabledestinationspamfilter X 會針對發送至此通道的郵件停用垃圾郵件篩選器 X。如果郵件來自已啟用垃圾郵件篩選器 X 的通道 (例如:destinationspamfilter Xoptin),或者已透過使用使用者或網域 LDAP 項目的 optin 屬性啟用篩選器,則此關鍵字會停用篩選器。

disablesourcespamfilterX 會針對來自此通道的郵件停用垃圾郵件篩選器 X。如果郵件是傳送至啟用垃圾郵件篩選器 X 的通道 (例如:destinationspamfilter Xoptin),或者已透過使用使用者或網域 LDAP 項目的 optin 屬性啟用篩選器,則此關鍵字會停用篩選器。

如需有關這些關鍵字使用方法的詳細資訊,請參閱指定通道層級的篩選

12.12.6 位址驗證之後擴充之前的路由

關鍵字:aliasdetourhostaliasoptindetourhost

aliasdetourhostaliasoptindetourhost 允許託管使用者的 mailHost 屬性值進行來源通道特定覆寫。具體來說,aliasdetourhost 通常用於在目標為本機 (在此系統上進行託管) 使用者的郵件路由中實現「繞道」至單獨的主機,以進行某種處理。郵件 (該位址是合法的本機位址) 可以在原始主機上進行驗證,並繞道至處理主機,然後再傳回原始主機以進行擴充和遞送。(請注意,在此處提到 aliasdetourhost 時也會對 aliasoptindetourhost 進行說明,其功能類似 aliasdetourhost,不同之處在於繞道作業僅在使用者透過 LDAP 下列屬性選擇加入時發生。

aliasdetourhost 允許更好地配置和使用通道和協力廠商篩選主機的「中間篩選」排序。除了使用替代轉換通道之外,還經常使用 aliasdetourhostaliasdetourhost 用於影響本機 (在此系統上進行託管) 使用者的路由,而替代轉換通道用於影響遠端收件者的路由。

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. aliasDetourHosttcp_scanner-daemon 增加至要掃描的所有內送來源 tcp 通道 (可能包含 tcp_local、tcp_submittcp_intranettcp_auth) 上的 tcp_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 為掃描程式系統的位址。

    如果未建立該重寫規則,郵件將透過其他 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. aliasDetourHosttcp_scanner-daemon 增加至要掃描的所有內送來源 tcp 通道 (可能包含 tcp_localtcp_submittcp_intranet 等) 上的 tcp_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 通道重新路由外送郵件。

    CONVERSIONS
    
    in-chan=tcp_scanner;out-chan=*;CONVERT     No
    in-chan=tcp_*;out-chan=tcp_local;CONVERT   Yes,Channel=tcp_scanner
  4. job_controller.cnfSMTP_POOL 之下,增加對同步運作的掃描的數目限制。

    儘管也應限制掃描軟體,但是保持設定相同是可取的。這樣,當掃描器不接受郵件時,郵件傳送伺服器就不會嘗試向該掃描器傳送郵件了。


    !
    [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

12.12.6.1 aliasoptindetourhost

每個使用者的 aliasdetourhost 現在可透過下列功能集執行:

12.12.7 NO-SOLICIT SMTP 延伸支援

關鍵字:sourcenosolicitdestinationnosolicit

網際網路草案 draft-malamud-no-soliciting-07.txt 中說明的 NO-SOLICIT SMTP 延伸已經作為建議的標準在 Messaging Server 中實作了。以下通道關鍵字可以用於控制此功能:

sourcenosolicit 指定請求欄位值清單 (用逗號分隔),由此通道提交的郵件將阻斷這些值。此值清單將顯示在 NO-SOLICIT EHLO 回應中。全域樣式的萬用字元可以用於這些值,但是,包含萬用字元的值不會顯示在 EHLO 通知中。

destinationnosolicit 指定請求欄位值清單 (用逗號分隔),在此通道排入佇列的郵件將拒絕這些值。

12.12.8 設定對錯誤 RCPT TO 位址的限制

關鍵字:deferralrejectlimit

設定在單一階段作業期間允許的錯誤 RCPT TO: 位址數目的限制。在 To: 位址的指定數目被拒絕後,後續的所有收件者 (正確的或錯誤的) 都會因為 4xx 錯誤而被拒絕。提供與 ALLOW_REJECTIONS_BEFORE_DEFERRAL SMTP 通道關鍵字相同的功能,但針對的是每個通道。

12.12.9 設定 Monitoring Framework 的通道顯示

關鍵字:captiondescription

這些關鍵字會將引號括住的字串視為引數,並且用於 Monitoring Framework 主控台的通道顯示中。如果未出現任何標題或描述,則 Monitoring Framework 代理程式會使用通道名稱建立一個標題或描述。