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

第 12 章 配置通道定義

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


備註 –

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


配置通道預設

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

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

defaults keyword1 keyword2 keyword3 ...

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

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

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

nodefaults

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

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

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

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

關鍵字 

更多資訊... 

733 

位址類型和慣例

822 

位址類型和慣例

addreturnpath

產生 Return-path 標頭行

addrsperfile

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

Aliasdetourhost

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

aliaslocal

指定 Alias 檔案和 Alias 資料庫探測

aliaspostmaster

Postmaster 返回的郵件內容

allowetrn

ETRN 指令支援

allowswitchchannel

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

alternatechannel

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

alternateblocklimit

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

alternatelinelimit

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

alternaterecipientlimit

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

authrewrite

TCP/IP 連線和 DNS 查詢支援

backoff

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

bangoverpercent

在位址中新增路由資訊

bangstyle

位址類型和慣例

bidirectional

設定通道定向性

blocketrn

ETRN 指令支援

blocklimit

指定絕對郵件大小限制

cacheeverything

快取通道連線資訊

cachefailures

快取通道連線資訊

cachesuccesses

快取通道連線資訊

channelfilter

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

charset7

字元集標記與八位元資料

charset8

字元集標記與八位元資料

charsetesc

字元集標記與八位元資料

checkehlo

EHLO 指令支援

commentinc

處理位址標頭行中的註釋

commentmap

處理位址標頭行中的註釋

commentomit

處理位址標頭行中的註釋

commentstrip

處理位址標頭行中的註釋

commenttotal

處理位址標頭行中的註釋

connectalias

郵件移出佇列時重寫位址

connectcanonical

郵件移出佇列時重寫位址

copysendpost

傳回失敗郵件

copywarnpost

警告郵件

daemon

目標主機選擇

datefour

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

datetwo

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

dayofweek

在日期中指定星期

defaulthost

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

defaultmx

TCP/IP MX 記錄支援

defaultnameservers

名稱伺服器查詢

deferralrejectlimit

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

deferred

實作延遲遞送日期

defragment

郵件/部分郵件的自動重新整理

dequeue_removeroute

移除來源路徑

destinationfilter

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

destinationnosolicit

NO-SOLICIT SMTP 延伸支援

destinationspamfilterXoptin 

垃圾郵件篩選器關鍵字

disableetrn

ETRN 指令支援

dispositionchannel

程序通道置換

disconnectbadauthlimit

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

disconnectbadcommandlimit 

設定階段作業限制

domainetrn

ETRN 指令支援

domainvrfy

VRFY 指令支援

dropblank

刪除非法空白收件者標頭

ehlo

EHLO 指令支援

eightbit

字元集標記與八位元資料

eightnegotiate

字元集標記與八位元資料

eightstrict

字元集標記與八位元資料

errsendpost

傳回失敗郵件

errwarnpost

警告郵件

expandchannel

多位址延伸

expandlimit

多位址延伸

expnallow

EXPN 支援

expndisable

EXPN 支援

expndefault

EXPN 支援

exproute

在位址中新增路由資訊

fileinto

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

filesperjob

服務工作限制

filter

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

forwardcheckdelete

反向 DNS 查詢

forwardchecknone

反向 DNS 查詢

forwardchecktag

反向 DNS 查詢

header_733

位址類型和慣例

header_822

位址類型和慣例

header_uucp

位址類型和慣例

headerlabelalign

標頭對齊和摺疊

headerlimit

限制標頭大小

headerlinelength

標頭對齊和摺疊

headerread

移除選取的郵件標頭行

headertrim

移除選取的郵件標頭行

holdexquota

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

holdlimit

多位址延伸

identnone

IDENT 查詢

identnonelimited

IDENT 查詢

identnonenumeric

IDENT 查詢

identnonesymbolic

IDENT 查詢

identtcp

IDENT 查詢

identtcplimited

IDENT 查詢

identtcpsymbolic

IDENT 查詢

ignoreencoding

忽略 Encoding 標頭行

immnonurgent

實作延遲遞送日期

improute

在位址中新增路由資訊

includefinal

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

inenttcpnumeric

IDENT 查詢

inner

重寫內嵌式標頭

innertrim

移除選取的郵件標頭行

interfaceaddress

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

interpretencoding

忽略 Encoding 標頭行

language

設定標頭中的預設語言

lastresort

最後一台主機

linelength

設定郵件行長度限制

linelimit

指定絕對郵件大小限制

localvrfy

VRFY 指令支援

logging

記錄關鍵字

logheader

記錄關鍵字

loopcheck

設定迴圈檢查

mailfromdnsverify

DNS 網域驗證

master

設定通道定向性

master_debug

除錯關鍵字

maxblocks

大型郵件的自動分段程序

maxheaderaddrs

自動分割長標頭行

maxheaderchars

自動分割長標頭行

maxjobs

服務工作限制

maxlines

大型郵件的自動分段程序

maxprocchars

標頭對齊和摺疊

maysaslserver

SMTP 認證、SASL 與 TLS

maytls

傳輸層安全

maytlsclient

傳輸層安全

maytlsserver

傳輸層安全

missingrecipientpolicy

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

msexchange

指定 Microsoft Exchange 閘道通道

multiple

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

mustsaslserver

SMTP 認證、SASL 與 TLS

musttls

傳輸層安全

musttlsclient

傳輸層安全

musttlsserver

傳輸層安全

mx

TCP/IP MX 記錄支援

namelengthlimit

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

nameservers

名稱伺服器查詢

noaddreturnpath

產生 Return-path 標頭行

nobangoverpercent

在位址中新增路由資訊

noblocklimit

指定絕對郵件大小限制

nocache

快取通道連線資訊

nochannelfilter

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

nodayofweek

在日期中指定星期

nodefaulthost

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

nodeferred

實作延遲遞送日期

nodefragment

郵件/部分郵件的自動重新整理

nodestinationfilter

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

nodropblank

刪除非法空白收件者標頭

noehlo

EHLO 指令支援

noexproute

在位址中新增路由資訊

noexquota

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

nofileinto

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

nofilter

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

noheaderread

移除選取的郵件標頭行

noheadertrim

移除選取的郵件標頭行

noimproute

在位址中新增路由資訊

noinner

重寫內嵌式標頭

noinnertrim

移除選取的郵件標頭行

nolinelimit

指定絕對郵件大小限制

nologging

記錄關鍵字

noloopcheck

設定迴圈檢查

nomailfromdnsverify

DNS 網域驗證

nomaster_debug

除錯關鍵字

nomsexchange

TCP/IP 連線和 DNS 查詢支援

nomx

TCP/IP MX 記錄支援

norandomemx

TCP/IP MX 記錄支援

nonurgentbackoff

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

nonurgentblocklimit

基於大小的郵件優先順序

nonurgentnotices

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

noreceivedfor

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

noreceivedfrom

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

noremotehost

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

norestricted

啟用有限電子信箱編碼

noreturnaddress

Postmaster 返回的郵件內容

noreturnpersonal

Postmaster 返回的郵件內容

noreverse

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

normalbackoff

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

normalblocklimit

基於大小的郵件優先順序

normalnotices

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

norules

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

nosasl

SMTP 認證、SASL 與 TLS

nosaslserver

SMTP 認證、SASL 與 TLS

nosaslswitchchannel

SMTP 認證、SASL 與 TLS

nosendetrn

ETRN 指令支援

nosendpost

傳回失敗郵件

noservice

啟用服務轉換

noslave_debug

除錯關鍵字

nosmtp

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

nosourcefilter

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

noswitchchannel

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

notices

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

notificationchannel

程序通道置換

notls

傳輸層安全

notlsclient

傳輸層安全

notlsserver

傳輸層安全

novrfy

VRFY 指令支援

nowarnpost

警告郵件

nox_env_to

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

parameterlengthlimit

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

percentonly

在位址中新增路由資訊

percents

位址類型和慣例

personalinc

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

personalmap

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

personalomit

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

personalstrip

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

pool

通道執行工作的處理儲存區

port

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

postheadbody

Postmaster 返回的郵件內容

postheadonly

Postmaster 返回的郵件內容

randommx

TCP/IP MX 記錄支援

receivedfor

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

receivedfrom

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

recipientcutoff

限制郵件收件者

recipientlimit

限制郵件收件者

rejectsmtplonglines

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

remotehost

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

restricted

啟用有限電子信箱編碼

returnaddress

Postmaster 返回的郵件內容

returnenvelope

空白訊息封傳回位址

returnpersonal

Postmaster 返回的郵件內容

reverse

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

routelocal

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

rules

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

saslswitchchannel

SMTP 認證、SASL 與 TLS

sendetrn

ETRN 指令支援

sendpost

傳回失敗郵件

sensitivitycompanyconfidential 

敏感性檢查

sensitivitynormal

敏感性檢查

sensitivitypersonal

敏感性檢查

sensitivityprivate

敏感性檢查

service

啟用服務轉換

sevenbit

字元集標記與八位元資料

silentetrn

ETRN 指令支援

single

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

single_sys

目標主機選擇

slave

設定通道定向性

slave_debug

除錯關鍵字

smtp

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

smtp_cr

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

smtp_crlf

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

smtp_crorlf

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

smtp_lf

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

sourceblocklimit

指定絕對郵件大小限制

sourcecommentinc

處理位址標頭行中的註釋

sourcecommentmap

處理位址標頭行中的註釋

sourcecommentomit

處理位址標頭行中的註釋

sourcecommentstrip

處理位址標頭行中的註釋

sourcecommenttotal

處理位址標頭行中的註釋

sourcefilter

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

sourcenosolicit

NO-SOLICIT SMTP 延伸支援

sourcepersonalinc

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

sourcepersonalmap

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

sourcepersonalomit

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

sourcepersonalstrip

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

sourceroute

位址類型和慣例

sourcespamfilterXoptin

垃圾郵件篩選器關鍵字

streaming

協定串流

subaddressexact

子位址處理

subaddressrelaxed

子位址處理

subaddresswild

子位址處理

subdirs

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

submit

通道作業類型

suppressfinal

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

switchchannel

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

threaddepth

SMTP 通道執行緒

tlsswitchchannel

傳輸層安全

transactionlimit

設定連線異動限制

truncatesmtplonglines

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

unrestricted

啟用有限電子信箱編碼

urgentbackoff

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

urgentblocklimit

基於大小的郵件優先順序

urgentnotices

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

useintermediate

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

user

管道通道

uucp

位址類型和慣例

viaaliasoptional

指定位址必須來自別名

viaaliasrequired

指定位址必須來自別名

vrfyallow

VRFY 指令支援

vrfydefault

VRFY 指令支援

vrfyhide

VRFY 指令支援

warnpost

警告郵件

wrapsmtplonglines

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

x_env_to

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

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

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

表 12–2 位址處理關鍵字

關鍵字 

頁數 

定義 

位址處理 

733 

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

822 

位址類型和慣例

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

addreturnpath 

產生 Return-path 標頭行

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

aliaslocal 

指定 Alias 檔案和 Alias 資料庫探測

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

authrewrite 

TCP/IP 連線和 DNS 查詢支援

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

bangoverpercent 

在位址中新增路由資訊

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

bangstyle 

位址類型和慣例

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

defaulthost 

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

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

dequeue_removeroute 

移除來源路徑

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

exproute 

在位址中新增路由資訊

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

holdlimit 

多位址延伸

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

improute 

在位址中新增路由資訊

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

missingrecipientpolicy 

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

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

noaddreturnpath 

產生 Return-path 標頭行

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

nobangoverpercent 

在位址中新增路由資訊

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

nodefaulthost 

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

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

noexproute 

在位址中新增路由資訊

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

noimproute 

在位址中新增路由資訊

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

noreceivedfrom 

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

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

noremotehost 

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

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

norestricted 

啟用有限電子信箱編碼

unsrestricted 相同。

noreverse 

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

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

norules 

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

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

percentonly 

在位址中新增路由資訊

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

percents 

位址類型和慣例

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

remotehost 

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

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

restricted 

啟用有限電子信箱編碼

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

reverse 

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

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

routelocal 

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

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

rules 

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

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

sourceroute 

位址類型和慣例

822 同義。

subaddressexact 

子位址處理

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

subaddressrelaxed 

子位址處理

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

subaddresswild 

子位址處理

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

unrestricted 

啟用有限電子信箱編碼

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

uucp 

位址類型和慣例

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

viaaliasoptional 

指定位址必須來自別名

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

viaaliasrequired 

指定位址必須來自別名

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

表 12–3 附件和 MIME 處理

關鍵字 

定義 

defragment 

郵件/部分郵件的自動重新整理

在通道上形成佇列的部分郵件改為放置於重新整理通道佇列中。 

ignoreencoding 

忽略 Encoding 標頭行

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

interpretencoding 

忽略 Encoding 標頭行

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

nodefragment 

郵件/部分郵件的自動重新整理

停用重新整理。 

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

關鍵字 

定義 

charset7 

字元集標記與八位元資料

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

charset8 

字元集標記與八位元資料

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

charsetesc 

字元集標記與八位元資料

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

eightbit 

字元集標記與八位元資料

通道支援八位元字元。 

eightnegotiate 

字元集標記與八位元資料

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

eightstrict 

字元集標記與八位元資料

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

sevenbit 

字元集標記與八位元資料

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

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

關鍵字 

頁數 

定義 

addrsperfile 

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

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

expandchannel 

多位址延伸

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

expandlimit 

多位址延伸

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

multiple 

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

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

single 

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

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

single_sys 

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

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

subdirs 

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

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

表 12–6 標頭關鍵字

關鍵字 

定義 

authrewrite 

TCP/IP 連線和 DNS 查詢支援

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

commentinc 

處理位址標頭行中的註釋

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

commentmap 

處理位址標頭行中的註釋

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

commentomit 

處理位址標頭行中的註釋

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

commentstrip 

處理位址標頭行中的註釋

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

commenttotal 

處理位址標頭行中的註釋

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

datefour 

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

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

datetwo 

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

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

dayofweek 

在日期中指定星期

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

defaulthost 

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

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

dropblank 

刪除非法空白收件者標頭

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

header_733 

位址類型和慣例

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

header_822 

位址類型和慣例

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

headerlabelalign 

標頭對齊和摺疊

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

headerlinelength 

標頭對齊和摺疊

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

headerread 

移除選取的郵件標頭行

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

headertrim 

移除選取的郵件標頭行

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

header_uucp 

位址類型和慣例

在標頭中使用 ! 路由 

inner 

重寫內嵌式標頭

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

innertrim 

移除選取的郵件標頭行

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

語言 

設定標頭中的預設語言

指定標頭中的預設語言。 

maxheaderaddrs 

自動分割長標頭行

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

maxheaderchars 

自動分割長標頭行

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

missingrecipientpolicy 

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

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

nodayofweek 

在日期中指定星期

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

nodefaulthost 

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

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

nodropblank 

刪除非法空白收件者標頭

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

noheaderread 

移除選取的郵件標頭行

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

noheadertrim 

移除選取的郵件標頭行

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

noinner 

重寫內嵌式標頭

不重寫內部郵件標頭行。 

noinnertrim 

移除選取的郵件標頭行

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

noreceivedfor 

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

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

noreceivedfrom 

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

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

noremotehost 

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

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

noreverse 

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

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

norules 

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

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

nox_env_to 

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

移除 X-Envelope-to 標頭行。

personalinc 

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

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

personalmap 

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

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

personalomit 

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

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

personalstrip 

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

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

receivedfor 

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

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

receivedfrom 

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

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

remotehost 

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

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

restricted 

啟用有限電子信箱編碼

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

reverse 

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

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

rules 

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

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

sensitivitycompany confidential 

敏感性檢查

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

sensitivitynormal 

敏感性檢查

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

sensitivitypersonal 

敏感性檢查

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

sensitivityprivate 

敏感性檢查

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

sourcecommentinc 

處理位址標頭行中的註釋

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

sourcecommentmap 

處理位址標頭行中的註釋

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

sourcecommentomit 

處理位址標頭行中的註釋

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

sourcecommentstrip 

處理位址標頭行中的註釋

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

sourcecommenttotal 

處理位址標頭行中的註釋

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

sourcepersonalinc 

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

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

sourcepersonalmap 

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

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

sourcepersonalomit 

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

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

sourcepersonalstrip 

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

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

unrestricted 

啟用有限電子信箱編碼

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

x_env_to 

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

產生 X-Envelope-to 標頭行。

表 12–7 內送通道之匹配和切換關鍵字

關鍵字 

定義 

allowswitchchannel 

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

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

nosaslswitchchannel 

SMTP 認證、SASL 與 TLS

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

noswitchchannel 

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

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

switchchannel 

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

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

saslswitchchannel 

SMTP 認證、SASL 與 TLS

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

tlsswitchchannel 

傳輸層安全

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

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

關鍵字 

定義 

記錄 

記錄關鍵字

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

loopcheck 

設定迴圈檢查

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

master_debug 

除錯關鍵字

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

nologging 

記錄關鍵字

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

noloopcheck 

設定迴圈檢查

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

nomaster_debug 

除錯關鍵字

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

noslave_debug 

除錯關鍵字

不產生從屬除錯輸出。 

slave_debug 

除錯關鍵字

產生從屬除錯輸出。 

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

關鍵字 

定義 

expandchannel 

多位址延伸

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

expandlimit 

多位址延伸

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

holdlimit 

多位址延伸

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

maxprocchars 

標頭對齊和摺疊

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

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

關鍵字 

定義 

channelfilter 

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

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

destinationfilter 

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

destinationspamfilter Xoptin 

垃圾郵件篩選器關鍵字

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

fileinto 

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

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

filter 

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

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

nochannelfilter 

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

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

nodestinationfilter 

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

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

nofileinto 

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

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

nofilter 

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

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

nosourcefilter 

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

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

sourcefilter 

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

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

sourcespamfilterXoptin 

垃圾郵件篩選器關鍵字

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

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

關鍵字 

定義 

sourcenosolicit 

NO-SOLICIT SMTP 延伸支援

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

destinationnosolicit 

NO-SOLICIT SMTP 延伸支援

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

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

關鍵字 

定義 

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

aliaspostmaster 

Postmaster 返回的郵件內容

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

copysendpost 

傳回失敗郵件

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

copywarnpost 

警告郵件

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

errsendpost 

傳回失敗郵件

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

errwarnpost 

警告郵件

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

includefinal 

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

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

nonurgentnotices 

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

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

noreturnaddress 

Postmaster 返回的郵件內容

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

noreturnpersonal 

Postmaster 返回的郵件內容

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

normalnotices 

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

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

nosendpost 

傳回失敗郵件

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

notices 

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

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

nowarnpost 

警告郵件

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

postheadbody 

Postmaster 返回的郵件內容

傳回郵件的標頭和內容。 

postheadonly 

Postmaster 返回的郵件內容

僅將標頭傳回給 postmaster。 

returnaddress 

Postmaster 返回的郵件內容

指定本地 postmaster 的傳回位址。 

returnenvelope 

空白訊息封傳回位址

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

returnpersonal 

Postmaster 返回的郵件內容

設定本地 postmaster 的個人名稱。 

sendpost 

傳回失敗郵件

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

suppressfinal 

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

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

urgentnotices 

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

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

useintermediate 

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

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

warnpost 

警告郵件

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

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

關鍵字 

定義 

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

backoff 

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

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

bidirectional 

設定通道定向性

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

deferred 

實作延遲遞送日期

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

expandchannel 

多位址延伸

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

expandlimit 

多位址延伸

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

filesperjob 

服務工作限制

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

immnonurgent

實作延遲遞送日期

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

master 

設定通道定向性

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

maxjobs 

服務工作限制

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

nodeferred 

實作延遲遞送日期

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

nonurgentbackoff 

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

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

nonurgentblocklimit 

基於大小的郵件優先順序

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

normalbackoff 

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

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

normalblocklimit 

基於大小的郵件優先順序

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

noservice 

啟用服務轉換

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

pool 

通道執行工作的處理儲存區

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

service 

啟用服務轉換

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

slave 

設定通道定向性

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

threaddepth 

SMTP 通道執行緒

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

transactionlimit 

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

urgentbackoff 

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

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

urgentblocklimit 

基於大小的郵件優先順序

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

使用者 

管道通道

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

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

關鍵字 

定義 

sensitivitycompany confidential 

敏感性檢查

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

sensitivitynormal 

敏感性檢查

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

sensitivitypersonal 

敏感性檢查

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

sensitivityprivate 

敏感性檢查

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

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

關鍵字 

定義 

alternatechannel 

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

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

alternateblocklimit 

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

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

alternatelinelimit 

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

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

alternaterecipientlimit 

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

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

blocklimit 

指定絕對郵件大小限制

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

disconnectbadauthlimit 

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

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

disconnectbadcommand limit 

設定階段作業限制

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

disconnectrecipientlimit 

設定階段作業限制

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

disconnectrejectlimit 

設定階段作業限制

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

disconnecttransactionlimit 

設定階段作業限制

限制作業事件的數目。 

headerlimit 

限制標頭大小

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

holdexquota 

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

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

holdlimit 

多位址延伸

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

linelength 

設定郵件行長度限制

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

linelimit 

指定絕對郵件大小限制

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

maxblocks 

大型郵件的自動分段程序

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

maxlines 

大型郵件的自動分段程序

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

nameparameterlengthlimit 

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

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

noblocklimit 

指定絕對郵件大小限制

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

noexquota 

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

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

nolinelimit 

指定絕對郵件大小限制

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

nonurgentblocklimit 

基於大小的郵件優先順序

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

normalblocklimit 

基於大小的郵件優先順序

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

parameterlengthlimit 

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

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

recipientcutoff. 

限制郵件收件者

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

recipientlimit 

限制郵件收件者

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

rejectsmtplonglines 

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

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

sourceblocklimit 

指定絕對郵件大小限制

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

truncatesmtplonglines 

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

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

wrapsmtplonglines 

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

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

urgentblocklimit 

基於大小的郵件優先順序

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

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

關鍵字 

定義 

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

authrewrite 

TCP/IP 連線和 DNS 查詢支援

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

maysaslserver 

SMTP 認證、SASL 與 TLS

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

maytls 

傳輸層安全

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

maytlsclient 

傳輸層安全

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

maytlsserver 

傳輸層安全

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

msexchange 

指定 Microsoft Exchange 閘道通道

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

mustsaslserver 

SMTP 認證、SASL 與 TLS

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

musttls 

傳輸層安全

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

musttlsclient 

傳輸層安全

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

musttlsserver 

傳輸層安全

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

nomsexchange 

TCP/IP 連線和 DNS 查詢支援

預設。 

nosasl 

SMTP 認證、SASL 與 TLS

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

nosaslserver 

SMTP 認證、SASL 與 TLS

不允許使用 SASL 認證。 

notls 

傳輸層安全

不允許或不嘗試使用 TLS。 

notlsclient 

傳輸層安全

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

notlsserver 

傳輸層安全

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

saslswitchchannel 

SMTP 認證、SASL 與 TLS

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

tlsswitchchannel 

傳輸層安全

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

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

關鍵字 

定義 

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

allowetrn 

ETRN 指令支援

接受 ETRN 指令。 

blocketrn 

ETRN 指令支援

封鎖 ETRN 指令。 

checkehlo 

EHLO 指令支援

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

disableetrn 

ETRN 指令支援

停用對 ETRN SMTP 指令的支援。 

domainetrn 

ETRN 指令支援

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

domainvrfy 

VRFY 指令支援

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

ehlo 

EHLO 指令支援

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

eightbit 

字元集標記與八位元資料

通道支援八位元字元。 

eightnegotiate 

字元集標記與八位元資料

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

eightstrict 

字元集標記與八位元資料

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

expnallow 

EXPN 支援

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

expndisable 

EXPN 支援

無條件停用 EXPN

expndefault 

EXPN 支援

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

localvrfy 

VRFY 指令支援

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

mailfromdnsverify 

DNS 網域驗證

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

noehlo 

EHLO 指令支援

不使用 EHLO 指令。 

nomailfromdnsverify 

DNS 網域驗證

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

nosendetrn 

ETRN 指令支援

不傳送 ETRN 指令。 

nosmtp 

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

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

novrfy 

VRFY 指令支援

不發出 VRFY 指令。 

sendetrn 

ETRN 指令支援

傳送 ETRN 指令。 

sevenbit 

字元集標記與八位元資料

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

silentetrn 

ETRN 指令支援

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

smtp 

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

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

smtp_cr 

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

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

smtp_crlf 

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

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

smtp_crorlf 

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

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

smtp_lf 

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

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

streaming 

協定串流

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

vrfyallow 

VRFY 指令支援

對 VRFY 指令提供資訊回應。 

vrfydefault 

VRFY 指令支援

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

vrfyhide 

VRFY 指令支援

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

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

關鍵字 

定義 

TCP/IP 連線和 DNS 查詢支援 

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

cacheeverything 

快取通道連線資訊

快取所有連線資訊。 

cachefailures 

快取通道連線資訊

僅快取連線失敗資訊。 

cachesuccesses 

快取通道連線資訊

僅快取連線成功資訊。 

connectalias 

郵件移出佇列時重寫位址

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

connectcanonical 

郵件移出佇列時重寫位址

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

daemon 

目標主機選擇

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

defaultmx 

TCP/IP MX 記錄支援

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

defaultnameservers 

名稱伺服器查詢

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

forwardcheckdelete 

反向 DNS 查詢

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

forwardchecknone 

反向 DNS 查詢

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

forwardchecktag 

反向 DNS 查詢

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

identnone 

IDENT 查詢

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

identnonelimited 

IDENT 查詢

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

identnonenumeric 

IDENT 查詢

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

identnonesymbolic 

IDENT 查詢

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

identtcp 

IDENT 查詢

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

identtcplimited 

IDENT 查詢

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

indenttcpnumeric 

IDENT 查詢

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

identtcpsymbolic 

IDENT 查詢

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

interfaceaddress 

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

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

lastresort 

最後一台主機

指定最後一台主機。 

mailfromdnsverify 

DNS 網域驗證

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

mx 

TCP/IP MX 記錄支援

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

nameservers 

名稱伺服器查詢

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

nocache 

快取通道連線資訊

不快取任何連線資訊。 

nomailfromdnsverify 

DNS 網域驗證

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

nomx 

TCP/IP MX 記錄支援

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

nonrandomemx 

TCP/IP MX 記錄支援

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

port 

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

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

randommx 

TCP/IP MX 記錄支援

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

single 

目標主機選擇

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

single_sys 

目標主機選擇

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

threaddepth 

SMTP 通道執行緒

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

表 12–19 其他關鍵字

關鍵字 

定義 

deferralrejectlimit 

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

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

dispositionchannel 

程序通道置換

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

destinationfilter 

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

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

filter 

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

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

nodestinationfilter 

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

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

nosourcefilter 

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

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

nofilter 

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

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

notificationchannel 

程序通道置換

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

sourcefilter 

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

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

submit 

通道作業類型

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

使用者 

管道通道

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

配置 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 2005Q4 Administration Reference」中的「Option File」

本節分為以下子節:

配置 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 2005Q4 Administration Reference」

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

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

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

關鍵字: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

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 關鍵字產生的運作方式之間,因此沒有對應於此預設運作方式的關鍵字。

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 關鍵字後面應加上請求其郵件接收傳送嘗試的系統之名稱。

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 通 道。

EXPN 支援

關鍵字:expnallowexpndisableexpndefault

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

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]

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

字元集標記與八位元資料

關鍵字: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 拒絕所有標頭包含非法八位元資料的內送郵件。

協定串流

關鍵字: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。

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

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

tlsswitchchannel

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

saslswitchchannel

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

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

指定目標主機系統和如何儲存郵件副本。 

daemon

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

single

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

single_sys

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

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

關鍵字:portinterfaceaddress

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

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

快取通道連線資訊

關鍵字:cacheeverythingnocachecachefailurescachesuccesses

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

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

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

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

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

反向 DNS 查詢

關鍵字:forwardchecknoneforwardchecktagforwardcheckdelete

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

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


備註 –

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


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 關鍵字而進行的任一通道切換之基礎。

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 查詢的通道之預設。

名稱伺服器查詢

關鍵字:nameserversdefaultnameservers

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

nameservers 1.2.3.1 1.2.3.2

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

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

最後一台主機

關鍵字:lastresort

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

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

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

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

關鍵字:switchchannelallowswitchchannelnoswitchchannel。另請參閱SMTP 認證、SASL 與 TLSsaslswitchchannel傳輸層安全tlsswitchchannel

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

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

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

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

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

目標主機選擇

關鍵字: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 關鍵字為使用的每個目標系統建立單份郵件副本。請注意,不論使用的關鍵字為何,都要為郵件形成佇列時所在的每個通道至少建立一份郵件副本。

SMTP 認證、SASL 與 TLS

關鍵字:maysaslservermustsaslservernosaslnosaslserversaslswitchchannelnosaslswitchchannel)

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

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

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

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

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

關鍵字:authrewrite

authrewrite 通道關鍵字和相關的 AUTH_REWRITE 對映表允許使用從認證作業獲得的定址資訊修改標頭和訊息封位址。具體來說,SASL 可以將認證配置為提供授權的電子郵件位址。通常會使用 SMTP AUTH 資訊,雖然也可以透過 FROM_ACCESS 對映來置換該資訊。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 旗標,因為其很少正式用於修改訊息封和標頭位址。


指定 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 為預設。

傳輸層安全

關鍵字: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 時切換至指定的通道。它接受所需的值,以指定要切換至哪個通道。

配置郵件處理和遞送

您可以根據特定準則來配置伺服器嘗試遞送郵件的時機。還可以指定工作處理的參數,例如服務工作的處理限制或何時產生新的 SMTP 通道執行緒。本節描述以下內容:

如需有關郵件處理和傳送的概念資訊,請參閱表 12–24

配置郵件處理和遞送概括了本小節說明的關鍵字。

表 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

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

設定通道定向性

關鍵字:masterslavebidirectional

這三個關鍵字可用於指定通道是由主要程式 (master) 還是從屬程式 (slave) 提供服務,或是由兩者共同提供服務 (bidirectional)。如果這三個關鍵字都未指定,則預設為 bidirectional。這些關鍵字可決定當郵件在通道上形成佇列時,MTA 是否啟動遞送活動。

這些關鍵字的使用反映相應通道程式的某些基本特徵。MTA 支援的各種通道的描述都指示這些關鍵字應在何時及何處使用。

實作延遲遞送日期

關鍵字:deferrednodeferredimmnonurgent

deferred 通道關鍵字實作識別和允許 Deferred-delivery: 標頭行。包含未來 deferred 傳送日期的郵件,會在通道佇列中暫停傳送,直到郵件過期被傳回或是到達延遲傳送日期。請參閱 RFC 1327,以取得有關 Deferred-delivery: 標頭行的格式與作業的詳細資訊。

關鍵字 nodeferred 為預設。必須認識到,對延遲郵件處理的支援由 RFC 1327 指定,它的實際實作可有效地讓人們使用郵件系統來延伸他們的磁碟配額,這一點很重要。

關鍵字 immnonurgent 在提交緊急、一般與非緊急郵件之後,立即開始傳送。

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

關鍵字: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 關鍵字的詳細資訊,請參閱設定通知郵件遞送間隔時間

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 關鍵字指定的時間段為止。如果無法成功遞送,就會產生遞送失敗通知,該郵件會傳回給寄件者。

通道執行工作的處理儲存區

關鍵字:pool

可以透過在同一池中執行來配置各種通道,以共用資源。您可能想將其他通道配置為在特定通道的專用儲存區中執行。在各儲存區中,郵件會根據其優先順序,自動排序為不同的處理佇列。儲存區中優先順序較高的郵件會比優先順序較低的郵件先得到處理。(請參閱基於大小的郵件優先順序)

使用 pool 關鍵字可以逐個通道地選取建立工作的池。pool 關鍵字必須後接目前通道的傳送工作匯集時所在池的名稱。儲存區名稱包含的字元不應超過十二個。

如需有關工作控制器概念和配置的詳細資訊,請參閱工作控制器檔案工作控制器檔案服務工作限制

服務工作限制

關鍵字:maxjobsfilesperjob

每次郵件在通道中形成佇列時,工作控制器均可確保有一項傳送郵件的工作正在執行。這可能涉及到啟動新的工作程序、新增執行緒或只指明工作已在執行中。但是,單一服務工作可能不足以確保及時遞送所有的郵件。(如需有關工作控制器概念和配置的詳細資訊,請參閱工作控制器檔案通道執行工作的處理儲存區工作控制器

對於任何給定的安裝都會啟動合理的最大數量的程序與執行緒以遞送郵件。此最大數量取決於幾個因素,例如處理器的數量、磁碟的速度和連線的特徵。在 MTA 配置中,可以控制以下內容:

為執行給定通道而啟動的程序之最大數目,是對通道設定的 maxjobs 和通道執行時為所在的池設定的 JOB_LIMIT 之最小值。

假定有一封郵件需要處理。通常,工作控制器會啟動新的程序詳情如下:

尤其對於 SMTP 通道,新的執行緒或程序會在不同主機的郵件形成佇列時啟動。因此,對於 SMTP 通道,工作控制器會啟動新的程序,詳情如下。假定有一封郵件需要處理:

請參閱SMTP 通道執行緒

filesperjob 關鍵字可用於使 MTA 建立其他服務工作。此關鍵字接受單一正整數參數,指定在處理佇列項目 (即檔案) 的多個服務工作建立之前,有多少個佇列項目必須傳送至關聯的通道。如果此值小於或等於零,則表示佇列只請求一個服務工作。不指定關鍵字就相當於指定零值。此關鍵字的效果已經最大化;較大的估算數量將是實際建立的服務工作數量。

filesperjob 關鍵字會以實際佇列項目或檔案的數目除以給定值。請注意,給定郵件所產生的佇列項目之數目由多個因素所控制,包括但不僅限於 singlesingle_sys 關鍵字的使用,以及郵件收信人清單中標頭修改動作的規格。

maxjobs 關鍵字對可並行執行的服務工作之總數設定了一個上限。此關鍵字之後必須加整數值;即使服務工作的估算數目大於此值,實際上仍只會建立 maxjobs 數目的工作。如果未指定 maxjobs,則此值預設為 100。通常,maxjobs 的設定值應小於或等於通道使用的任何服務池中可同時執行的工作之總數。

設定連線異動限制

關鍵字:transactionlimit

transactionlimit 限制每個連線允許的郵件數目。此限制可透過以下方式來阻撓侵入者:

侵入者可透過 SMTP 連線並傳送多個 RCPT TO 指令,來嘗試推測出合法的電子郵件位址。透過限制作業事件所允許的無效 RCPT TO 數目可阻撓這類侵入。侵入者可能透過使用多個作業事件來進行回應,但藉由 transactionlimit 可以限制一個 SMTP 階段作業所允許的作業事件數目。侵入者可使用多個階段作業,但此時他的成本會增高。連線阻塞可用於以各種方式限制階段作業的數目,在大多數情況下會使成本變得過高。

不過我們一方也不是沒有負擔任何成本。某些用戶端對收件者限制、異動限制或兩種限制回應不佳。這些用戶端需要另行處理。但 TCP 通道選項可無條件套用至 SMTP 伺服器。解決方案為使用通道關鍵字和 switchchannel 將有問題的代理程式路由至具有較寬限制的通道。

基於大小的郵件優先順序

關鍵字:urgentblocklimitnormalblocklimitnonurgentblocklimit

urgentblocklimitnormalblocklimitnonurgentblocklimit 關鍵字可用於指示 MTA 根據郵件大小降低郵件的優先順序。這些關鍵字會影響工作控制器在處理郵件時所使用的優先順序。

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 通道) 實現多執行緒。

多位址延伸

關鍵字: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 手動介入。

啟用服務轉換

關鍵字:servicenoservice

service 關鍵字可無條件啟用服務轉換,不論 CHARSET-CONVERSION 項目為何。如果已設定 noservice 關鍵字,則必須透過 CHARSET-CONVERSION 對進入此通道的郵件啟用服務轉換。

配置位址處理

本節描述用於位址處理的關鍵字。包含以下各節:

位址類型和慣例

關鍵字:822733uucp header_822header_733header_uucp

這組關鍵字控制通道支援的位址類型。傳輸層 (郵件訊息封) 中使用的位址和郵件標頭中使用的位址存在差異。

822 (sourceroute)

來源路徑訊息封位址。此通道支援完整 RFC 822 格式的訊息封定址慣例,包含來源路徑。關鍵字 sourceroute 也可做為 822 的同義詞。如果未指定其他訊息封位址類型關鍵字,則該關鍵字為預設。

733 (percents)

百分比符號訊息封位址。此通道支援完整 RFC 822 格式的訊息封定址慣例,但來源路徑除外;來源路徑必須使用百分比符號慣例來重寫。percents 也可做為 733 的同義詞。


備註 –

在 SMTP 通道上使用 733 位址慣例會導致這些慣例在 SMTP 訊息封中的傳輸層位址上繼續存在。這樣可能會違背 RFC 821。只有在您確實需要時,才能使用 733 位址慣例。


uucp (bangstyle)

樣式訊息封位址。此通道在訊息封中使用符合 RFC 976 樣式位址慣例的位址 (例如 UUCP 通道)。bangstyle 關鍵字也可做為 uucp 的同義詞。

header_822

來源路徑標頭位址。此通道支援完整 RFC 822 格式的標頭定址慣例,包含來源路徑。如果未指定其他標頭位址類型關鍵字,則該關鍵字為預設。

header_733

百分比符號標頭位址。此通道支援 RFC 822 格式的標頭定址慣例,但來源路徑除外;來源路徑必須使用百分比符號慣例來重寫。


備註 –

在郵件標頭中使用 733 位址慣例可能會違背 RFC 822 和 RFC 976。只有在您確定該通道連線至無法處理來源路徑位址的系統時,才能使用此關鍵字。


header_uucp

UUCP 或樣式標頭位址。建議不要使用此關鍵字。使用此關鍵字會違背 RFC 976。

解譯使用 ! 和 % 的位址

關鍵字: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 路徑。設定此關鍵字後,百分比會被解譯,以進行路由。

在位址中新增路由資訊

關鍵字:exproutenoexprouteimproutenoimproute

MTA 所處理的定址模型假定所有系統均知悉其他所有系統的位址並瞭解如何到達這些系統。不幸的是,這種設想無法適用於所有情況,例如當通道連線至一個或多個不瞭解外界情形的系統 (例如,專用 TCP/IP 網路中的內部機器) 時。此通道上的這些系統位址在該站點以外的遠端系統上可能不合法。如果您希望能回覆這類位址,則這類位址必須包含來源路徑,告知遠端系統透過本地機器路由郵件。然後本地機器就會 (自動) 將郵件路由至這些機器。

exproute 關鍵字 (「明確路由」的縮寫形式) 告知 MTA,當關聯通道的位址被傳送至遠端系統時,該通道需要明確的路由。如果對通道指定了此關鍵字,MTA 會將包含本機系統名稱 (或本機系統目前的別名) 的路由資訊增加至匹配此通道的所有標頭位址與所有訊息封 From: 位址中。noexproute 為預設,指定不增加路由資訊。

EXPROUTE_FORWARD 選項可用於將 exproute 的動作限制為 反向指向位址。當 MTA 透過無法為自身執行正確路由的通道連線至系統時,會發生另一種情況。在這種情況下,當郵件傳送至的通道連線至能力不足的系統時,必須為郵件中使用的所有關聯其他通道的位址指示路由。

隱式路由和 improute 關鍵字可用於處理此情況。MTA 瞭解,當所有匹配其他通道的位址用於傳送至標記為 improute 之通道的郵件時,都需要路由。預設為 noimproute,指定經指定不在通道發出的郵件之位址中增加路由資訊。IMPROUTE_FORWARD 選項可用於將 improute 的動作限制為反向指向位址。

exprouteimproute 關鍵字應謹慎使用。這些關鍵字會使位址更長、更複雜,並可能使其他系統所使用的智慧路由方案失敗。明確的路由和隱式路由不應與指定路徑產生混淆。指定路徑用於將重寫規則中的路由資訊插入位址中。這由特殊的 A@B@C 重寫規則範本啟動。

指定路徑啟動後可套用至標頭與訊息封中的所有位址。指定路徑由特殊的重寫規則來啟動,因此通常與目前使用的通道無關。另一方面,明確和都是針對通道進行控制的,插入的路由位址始終是本機系統。

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

關鍵字:routelocal

將位址重寫至通道時,routelocal 通道關鍵字會使 MTA 嘗試讓位址中任何明確的路由「短路」。明確路由的位址 (使用 !、% 或 @ 字元) 已簡化。

對「內部」通道 (例如內部 TCP/IP 通道) 使用此關鍵字可使轉送阻斷功能的配置更為簡單。

請注意,此關鍵字不應用於可能需要明確的 % 或其他路由的通道。

郵件移出佇列時重寫位址

關鍵字:connectaliasconnectcanonical

MTA 通常會在郵件於其通道上形成佇列時重寫位址。郵件移出佇列期間不會執行額外的重寫。當主機名稱變更,而通道佇列中存在仍要傳送至舊名稱的郵件時,就會發生潛在的問題。

connectalias 關鍵字告知 MTA 傳送至收件者位址中列出的任何主機。這是預設。關鍵字 connectcanonical 告知 MTA 連線 MTA 可以連線的系統之主機別名。

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

關鍵字: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 為預設。

如之前內送郵件的替代通道 (切換通道)一節所述,switchchannel 關鍵字會將內送 SMTP 連線與特定通道相關聯。此功能可用於在通道上群組遠端郵件用戶端,在此通道上,它們可以得到適當的處理。或者,較簡單的做法是部署符合標準的遠端郵件用戶端 (即便使用了多個不符合的用戶端),而非嘗試修正 MTA 主機上的整個網路的問題。

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

關鍵字:missingrecipientpolicy

RFC 822 (網際網路) 郵件必須包含收件者標頭行:To:Cc:Bcc: 標頭行。沒有上述標頭行的郵件是非法的。但是,有些不可靠的使用者代理程式和郵件程式 (例如,許多舊版 sendmail) 會傳送非法的郵件。

missingrecipientpolicy 關鍵字接受整數值,指定處理此類郵件的方法;如果未明確指定此關鍵字,則預設為 1 (原封不動地傳送非法郵件)。

表 12–25 missingrecipientpolicy

值 

動作 

將訊息封 To: 收件者放入 To: 標頭行中。

原封不動地傳送非法郵件。 

將訊息封 To: 收件者放入 To: 標頭行中。

將所有訊息封 To: 收件者放入單一 Bcc: 標頭行中。

產生群組建構 (例如「;」) To: 標頭行「To: Recipients not specified: ;」

產生空白 Bcc: 標頭行。

拒絕郵件。 

請注意,可使用 MISSING_RECIPIENT_POLICY 選項將 MTA 系統預設為此運作方式。Messaging Server 的初始配置將 MISSING_RECIPIENT_POLICY 設定為 1。

刪除非法空白收件者標頭

關鍵字:dropblanknodropblank

在 RFC 822 (網際網路) 郵件中,任何 To:Resent-To:Cc:Resent-Cc: 標頭均需要包含至少一個位址,亦即標頭的值不得為空。但是,有些郵件程式可以傳送這類非法標頭。如果對來源通道指定 dropblank 通道關鍵字,則會使 MTA 刪除內送郵件中所有此類非法的空白標頭。

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

關鍵字:reversenoreverse

reverse 關鍵字會告知 MTA,如果存在位址反向資料庫或 REVERSE 對映,則在通道上形成佇列的郵件之位址應由位址反向資料庫或 REVERSE 對映進行檢查,可能還會予以修改。noreverse 使通道上形成佇列的郵件中之位址免於進行位址反向處理。reverse 關鍵字為預設。請參閱將位址從內部格式轉換為公用格式

啟用有限電子信箱編碼

關鍵字: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 關鍵字應套用於連線無法接受加引號的本機部分的系統之通道。而不適用於實際產生加引號之本機部分的通道。(據假定,能夠產生此種位址的通道也能夠處理此種位址。)


產生 Return-path 標頭行

關鍵字:addreturnpathnoaddreturnpath

通常,增加 Return-path: 標頭行由執行最終傳送的通道負責。但對於某些通道 (例如 ims-ms 通道),由 MTA 增加 Return-path: 標頭比讓通道執行增加動作更有效。addreturnpath 關鍵字可使 MTA 在此通道上形成佇列時,增加 Return-path: 標頭。

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

關鍵字:receivedfornoreceivedforreceivedfromnoreceivedfrom

receivedfor 關鍵字會指示 MTA,如果郵件只傳送給一位訊息封收件者,則在其建構的Received: 標頭行中包含訊息封 To: 位址。receivedfor 關鍵字為預設。noreceivedfor 關鍵字指示 MTA 建構 Received: 標頭行,但不包含任何訊息封位址資訊。

receivedfrom 關鍵字指示 MTA,如果 MTA 出於某些原因 (例如某種郵件收信人清單擴充) 變更了訊息封 From:位址,則在為內送郵件建構 Received: 標頭行時,包含原始訊息封的 From: 位址。receivedfrom 為預設。noreceivedfor 關鍵字指示 MTA 建構 Received: 標頭行,但不包含原始訊息封 From: 位址。

處理位址標頭行中的註釋

關鍵字: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 旗標,則原始註釋將被指定的文字 (該文字應包括外圍的括號) 取代。

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

關鍵字:personalincpersonalmappersonalomitpersonalstripsourcepersonalincsourcepersonalmapsourcepersonalomitsourcepersonalstrip

在重寫過程中,所有包含位址的標頭行都必須被剖析以重寫並消除縮寫形式的位址,否則就轉換成合法位址。在此過程中,如果重建標頭行,則會擷取個人名稱 (角括號分隔的位址之前的字串),並可以對個人名稱進行選擇性修改或排除。

可以使用 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 旗標,則原始個人名稱將被指定的文字取代。

指定 Alias 檔案和 Alias 資料庫探測

關鍵字:aliaslocal

通常,只有重寫至本機通道 (即 UNIX 上的 l 通道) 的位址會在檔案和資料庫供人查詢。aliaslocal 關鍵字可置於某個通道,使重寫至該通道的位址在 Alias 檔案和 Alias 資料庫中供人查詢。而所建立的查詢探測之精確形式由 ALIAS_DOMAINS 選項控制。

子位址處理

關鍵字: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 通道上轉送。

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

關鍵字:rulesnorules

rules 關鍵字告知 MTA 對此通道強制執行通道專用的重寫規則檢查。這是預設。norules 關鍵字告知 MTA 不對此通道執行檢查。這兩個關鍵字通常用於除錯,在實際應用中很少使用。

移除來源路徑

關鍵字:dequeue_removeroute

dequeue_removeroute 關鍵字可在郵件移出佇列時,從信息封 To: 位址中移除來源路由。此關鍵字目前僅對 tcp-* 通道實作。它可用於將郵件傳送至未正確處理來源路徑的系統。

指定位址必須來自別名

關鍵字:viaaliasoptionalviaaliasrequired

viaaliasrequired 指定匹配通道的所有最終收件者位址必須由別名產生。最終收件者位址是指執行別名延伸 (如果有關) 之後的相符項目。該位址無法做為收件者位址直接傳送給 MTA;亦即對於位址而言,僅重寫至通道還不夠。重寫至通道之後,位址還必須透過被視為真正符合通道的別名來延伸。

例如,必須將 viaaliasrequired 關鍵字用於本機通道,以避免傳送至任意帳號 (例如 UNIX 系統上任意的原生 Berkeley 電子信箱)。

預設為 viaaliasoptional,表示匹配通道的最終收件者位址不需要由別名產生。

配置標頭處理

本節描述用於處理標頭和訊息封資訊的關鍵字。包含以下各節:

重寫內嵌式標頭

關鍵字:noinnerinner

只有在必要時才會解譯標頭行的內容。但是,由於 MIME 郵件中可以嵌入郵件 (郵件/RFC822),因此可以包含多組郵件標頭。MTA 通常只會解譯和重寫最外面一組郵件標頭。也可以選擇告知 MTA 將標頭重寫套用於郵件中的內部標頭。

可以使用 noinnerinner 關鍵字來控制此運作方式。關鍵字 noinner 告知 MTA 不重寫內部郵件標頭行。這是預設。關鍵字 inner 告知 MTA 剖析郵件並重寫內部標頭。這些關鍵字適用於任何通道。

移除選取的郵件標頭行

關鍵字:headertrimnoheadertrimheaderreadnoheaderreadinnertrimnoinnertrim

MTA 提供針對各通道在郵件中修整或移除選取的郵件標頭行的功能。此功能透過通道關鍵字與一個或兩個關聯標頭選項檔案組合而實現。「Sun Java System Messaging Server 6 2005Q4 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/imta/config/ 中。

產生/移除 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

x_env_to 關鍵字還需要 single 關鍵字才能生效。

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

關鍵字:datefourdatetwo

原始 RFC 822 規格在郵件標頭的日期欄位中需要兩位數年份。後來 RFC 1123 將其變更為四位數。但是,某些較舊的郵件系統無法使用四位數日期。此外,一些較新的郵件系統無法再接受兩位數日期。


備註 –

無法處理這兩種格式的系統是違反標準的。


datefourdatetwo 關鍵字控制 MTA 對郵件標頭日期中年份欄位的處理方式。關鍵字 datefour 為預設,指示 MTA 將所有年份欄位擴充為四位數。小於 50 的兩位數日期加上 2000,大於 50 的則加上 1900。


注意 – 注意 –

關鍵字 datetwo 指示 MTA 移除四位數日期中的前兩位數。這是為了與需要兩位數日期的不符合郵件系統相容;不應用於其他任何目的。


在日期中指定星期

關鍵字:dayofweeknodayofweek

RFC 822 規格允許在郵件標頭的日期欄位前面加上星期規格。但是,有些系統無法適應星期資訊。這使某些系統不願納入此資訊,即使此資訊在標頭中非常有用。

dayofweeknodayofweek 關鍵字控制 MTA 對星期資訊的處理。關鍵字 dayofweek 為預設,指示 MTA 保留任何星期資訊,如果日期和時間標頭中缺少此資訊,則增加此資訊。


注意 – 注意 –

關鍵字 nodayofweek 指示 MTA 從日期和時間標頭中移除前面的所有星期資訊。這是為了與無法正確處理此資訊的不符合郵件系統相容;不應用於其他任何目的。


自動分割長標頭行

關鍵字:maxheaderaddrsmaxheaderchars

某些郵件傳送程式 (尤其是某些實作) 無法正確處理長標頭行。這不但經常造成標頭損毀,還造成錯誤的郵件拒絕。雖然嚴重違反標準,但卻是一個常見問題。

MTA 提供針對通道將長標頭行分割 (換行) 為多個各自獨立的標頭行的功能。maxheaderaddrs 關鍵字控制一行中可以顯示的位址數。maxheaderchars 關鍵字控制一行中可以顯示的字元數。這兩個關鍵字都需要單一整數參數,以指定相關限制。依預設,標頭行的長度和可以顯示的位址數均無限制。

標頭對齊和摺疊

關鍵字:headerlabelalignheaderlinelength

headerlabelalign 關鍵字控制在此通道上形成佇列的郵件標頭之對齊點;其為值為整數的引數。對齊點就是標頭內容對齊時的邊界。例如,對齊點為 10 的範例標頭行外觀如下:


To:       joe@siroe.com
From:     mary@siroe.com
Subject:  Alignment test
         

預設 headerlabelalign 為 0,這將使標頭不會對齊。headerlinelength 關鍵字可控制在此通道上形成佇列的郵件標頭行的長度。超過此長度的行根據 RFC 822 摺疊規則進行摺疊。

這些關鍵字僅控制郵件佇列中郵件的標頭格式;標頭的實際顯示通常由使用者代理程式控制。此外,標頭在網際網路上傳送時會依慣例重新格式化,因此這些關鍵字即使與不重新格式化郵件標頭的簡易使用者代理程式一併使用,可能也沒有什麼明顯效果。

指定標頭最大長度

關鍵字:maxprocchars

處理包含大量位址的長標頭行會消耗大量的系統資源。maxprocchars 關鍵字用於指定 MTA 可以處理和重寫的標頭之最大長度。標頭超過此長度的郵件仍會被接受和遞送;唯一不同之處是長標頭行不會進行任何重寫。需要單一整數引數。預設為處理任何長度的標頭。

敏感性檢查

關鍵字:sensitivitynormalsensitivitypersonalsensitivityprivatesensitivitycompanyconfidential

敏感性檢查關鍵字可設定通道可接受之郵件的敏感性上限。預設為 sensitivitycompanyconfidential;可接受所有敏感性的郵件。沒有 Sensitivity: 標頭的郵件會被視為一般郵件,即最低敏感性的郵件。敏感性高於此關鍵字指定敏感性的郵件,在通道上形成佇列時會被拒絕,螢幕上會顯示以下錯誤訊息:

message too sensitive for one or more paths used

請注意,MTA 會針對每封郵件進行敏感性檢查,而非針對各收件者進行檢查:如果一位收件者的目標通道無法通過敏感性檢查,則對於所有的收件者,該郵件均被退回,而不只是針對與敏感通道關聯的那些收件者。

設定標頭中的預設語言

關鍵字:language

標頭中的編碼文字可以使用特定語言。language 關鍵字指定預設語言。

附件和 MIME 處理

本節描述用於處理附件和處理的關鍵字。包含以下各節:

忽略 Encoding 標頭行

關鍵字:ignoreencodinginterpretencoding

MTA 可使用 Yes CHARSET-CONVERSION 將各種非標準郵件格式轉換為 MIME。尤其是,使用非標準 Encoding: 標頭行的 RFC 1154 格式。但是,有些閘道會在此標頭行上加入錯誤的資訊,從而導致有時忽略此標頭行更好。ignoreencoding 關鍵字指示 MTA 忽略任一 Encoding: 標頭行。


備註 –

除非 MTA 已啟用 CHARSET-CONVERSION,否則此類標頭在任何情況下都會被忽略。interpretencoding 關鍵字可指示 MTA 注意任一 Encoding: 標頭行 (如果配置為執行此動作),而且該關鍵字為預設。


郵件/部分郵件的自動重新整理

關鍵字:defragmentnodefragment

MIME 標準提供郵件部分內容類型以將郵件斷成較小的部分。郵件必須通過有大小限制或不可靠的網路時,這項功能會很有用,郵件分段程序提供「檢查點」表單,在網路於郵件傳輸期間發生故障時,可減少後續重複傳輸工作。每個部分均包含資訊,使郵件在到達目的地之後可以自動重新組合。

defragment 通道關鍵字和重新整理通道可用於在 MTA 中重新組合郵件。通道標記為 defragment 時,在通道上形成佇列的所有部分郵件都會改為置於重新整理通道佇列中。所有部分均到達之後,郵件就會重建並傳送出去。nodefragment 停用這種特殊處理。關鍵字 nodefragment 為預設。

重新整理通道保留時間

郵件僅在磁碟重新整理通道佇列中保留有限時間。如果第一條未投遞通知被傳送之前時間已過半,則郵件各部分無需重新組合即會繼續傳送。這種時間值的選擇會避免傳送有關磁碟重新整理通道佇列中郵件的未投遞通知。

notices 通道關鍵字控制傳送未傳送通知之前的時間長度,從而也控制按部分傳送郵件之前保留郵件的時間長度。請將 notices 關鍵字的值設定為希望保留郵件之時間長度的兩倍 (以進行可能的重新整理)。例如,notices 值為 4 時會將郵件片段保留兩天:


defragment notices 4 
DEFRAGMENT-DAEMON

大型郵件的自動分段程序

關鍵字: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 關鍵字一同運作。

設定郵件行長度限制

關鍵字:linelength

SMTP 規格允許文字行最多包含 1000 個位元組。但是,有些傳送程式可以對行長度設定更嚴格的限制。linelength 關鍵字提供一種機制,可逐個通道地限制允許的最大郵件行長度。對於在給定通道上形成佇列的郵件,如果有行長度超過為該通道指定的限制,則該郵件會被自動編碼。

MTA 中可用的各種編碼總會使行長度縮減到 80 個字元以下。執行上述編碼之後,透過套用適當的解碼篩選器,即可回復原始郵件。


備註 –

編碼僅能將行長度縮減到 80 個字元以下。低於 80 的行長度值規格可能無法正確產生長度符合指定限制的行。


linelength 關鍵字可使資料編碼執行「軟」換行,以進行傳輸。編碼通常是在接收端執行解碼,以回復原始「長」行。如需瞭解「硬」換行,請參閱表 13–7 中的「Record, text」。

對郵件、配額、收件者和認證嘗試次數的限制

本節描述用於設定郵件大小限制、使用者配額和權限的關鍵字。包含以下各節:

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

關鍵字:disconnectbadauthlimit

此關鍵字可用於設定對中斷連線之前階段作業內所允許的未成功認證嘗試次數的限制。此選項的預設值為 3。

指定絕對郵件大小限制

關鍵字:blocklimitnoblocklimitlinelimitnolinelimit, sourceblocklimit

雖然分段程序可以自動將郵件分割成較小的部分,但在有些情況下,拒絕超出某種管理上定義之限制的郵件更為合適 (例如,為了避免拒絕服務型侵入)。

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 選項強加的所有全域限制之外,不再設定其他任何限制。

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

關鍵字: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* 通道關鍵字的使用範例:

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

關鍵字:holdexquotanoexquota

noexquotaholdexquota 關鍵字控制對傳送給 Berkeley 電子信箱使用者 (UNIX) (亦即傳送至 uid 原生通道而且超過其磁碟配額的使用者) 之郵件的處理。

noexquota 告知 MTA 將傳送給超過配額的使用者數目之郵件傳回給郵件寄件者。holdexquota 告知 MTA 保留傳送給超過配額的使用者數目之郵件;這類郵件會保留在 MTA 佇列中,直到其被傳送或逾時,然後由郵件傳回工作傳回給寄件者。

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

關鍵字:rejectsmtplonglineswrapsmtplonglinestruncatesmtplonglines

rejectsmtplonglines 增加拒絕行長度超過 SMTP 所允許的1000 個字元(包括 CRLF) 的郵件之選項。此區域中的其他選項為 wrapsmtplonglines (將過長的行換行) 和預設選項 truncatesmtplonglines (將過長的行截斷)。這兩種關鍵字均必須套用至用於提交的初始通道 (例如 tcp_local)。這不會影響隨後切換到的通道。

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

關鍵字:parameterlengthlimitnameparameterlengthlimit

parameterlengthlimit 控制一般內容類型和內容處理參數的截斷點。預設為 1024。nameparameterlengthlimit 控制名稱內容類型和檔案名稱內容處理參數的截斷點。預設為 128。請注意,除非郵件正在執行 MIME 處理,否則僅處理最外層的郵件標頭。可透過多種方式啟用 MIME 處理,包括但不僅限於 inner 關鍵字或使用字元集轉換。

限制郵件收件者

關鍵字:recipientlimitrecipientcutoff

recipientlimit 指定郵件將接受的收件者位址總數。recipientcutoff 將提交給 MTA 的收件者總數與指定的值進行比較。如果超過該限制或該值,則不接受遞送任何郵件。兩個關鍵字都接受單一的整數引數。除非已指定相應的通道關鍵字,否則二者的預設均是無限的。

還可以在寄件者或寄件者的網域上設定收件者限制。其方法是使用適當的 MTA 選項指定使用者或網域 LDAP 屬性:LDAP_RECIPIENTLIMITLDAP_RECIPIENTCUTOFFLDAP_DOMAIN_ATTR_RECIPIENTLIMITLDAP_DOMAIN_ATTR_RECIPIENTCUTOFF 指定使用者或網域 LDAP 屬性,並將該屬性增加至寄件者的使用者項目或網域項目。

限制標頭大小

關鍵字:headerlimit

強制限制主要 (最外層) 郵件標頭的最大大小。當達到限制時主要郵件標頭會悄然截斷。如果已設定全域 MTA 選項 HEADER_LIMIT,則其將置換此通道層級限制。預設為無限制。

在 MTA 佇列中建立檔案

本節描述可讓您透過指定在 MTA 佇列中建立檔案來控制磁碟資源的關鍵字。包含以下各節:

控制如何處理郵件的多個位址

關鍵字:multipleaddrsperfilesinglesingle_sys

MTA 允許每個已形成佇列的郵件中存在多個目標位址。有些通道程式可能只能處理具有一位收件者的郵件、收件者數量有限的郵件或每份郵件副本只有單一目標系統的郵件。例如,SMTP 通道主要程式在給定的異動中只建立一個連至單一遠端主機的連線,因此只會處理傳送至該主機的位址 (雖然如此,單一通道通常用於所有 SMTP 通訊流)。

另一個範例是有些 SMTP 伺服器可以限制它們可一次處理的收件者數量,而且可能無法處理此類型的錯誤。

關鍵字 multipleaddrsperfilesinglesingle_sys 可用於控制如何處理多個位址。關鍵字 single 表示將為通道中的每個目標位址建立單獨的郵件副本。不建議在 tcp_* 通道上使用 single,因為它會變更工作控制器管理流量的方式,不適用於一般 SMTP 情況。關鍵字 single_sys 會為所用的每個目標系統建立一份郵件副本。關鍵字 multiple 為預設值,會為整個通道建立一份郵件副本。


備註 –

不論使用的關鍵字為何,都要為郵件形成佇列時所在的每個通道至少建立一份郵件副本。


addrsperfile 關鍵字用於限制可與通道佇列中單一郵件檔案關聯的收件者之最大數目,從而可以限制單一作業中所處理的收件者數目。此關鍵字需要單一整數引數,用於指定郵件檔案允許的收件者位址最大數量;如果達到此數量,MTA 會自動建立額外的郵件檔案來容納它們。(預設 multiple 關鍵字一般相當於不限制郵件檔案中的收件者數目,但是 SMTP 通道預設為 99。)

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

關鍵字:subdirs

依預設,所有在通道上形成佇列的郵件都會以檔案形式儲存在 /imta/queue/channel-name 目錄中,其中,channel-name 是通道名稱。但是,如果等待處理的郵件檔案分佈在大量子目錄上,則處理大量郵件並傾向於為那些郵件檔案建立大型儲存的通道 (例如 TCP/IP 通道),可以發揮比檔案系統更高的效能。subdirs 通道關鍵字提供以下功能:此關鍵字之後必須有一個整數,用於指定為通道分佈郵件的子目錄數量,例如:

tcp_local single_sys smtp subdirs 10

設定階段作業限制

關鍵字:disconnectbadcommandlimit、disconnectrecipientlimit、disconnectrejectlimit 和 disconnecttransactionlimit

這四個新的通道關鍵字可以使 SMTP 伺服器在偵測到某個數量的錯誤之後中斷與用戶端的連線:

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

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

disconnecttransactionlimit - 限制作業事件的數目。

disconnectbadcommandlimit - 限制錯誤指令的數目。

這些限制針對所有階段作業。發出 MAIL FROM 或 RSET 指令時,檢查除 disconnectbadcommandlimit 以外的所有這些限制。如果超過其中一項限制,伺服器則發出 4xy 錯誤並斷開連線。錯誤指令限制僅在由發出的錯誤指令進行檢查時不同於其他限制。

配置記錄和除錯

本節描述記錄和除錯關鍵字。

記錄關鍵字

關鍵字:loggingnologging 和 logheader

MTA 提供記錄每封郵件形成佇列與移出佇列情況的功能。loggingnologging 關鍵字可用於針對各通道控制郵件記錄。依預設,初始配置會開啟對所有通道的記錄。可以在特定通道定義中以 nologging 關鍵字替換,從而停用對相應通道的記錄。

logheader 根據通道來置換 LOG_HEADER MTA 選項。其值為 0 (預設) 時,停用郵件標頭記錄。如需詳細資訊,請參閱「Sun Java System Messaging Server 6 2005Q4 Administration Reference」中的「Option File」

如需有關記錄的更多資訊,請參閱第 21 章, 管理記錄

除錯關鍵字

關鍵字: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 檔案。

設定迴圈檢查

關鍵字:loopchecknoloopcheck

loopcheck 關鍵字會將字串置入 SMTP EHLO 回應大標題中,讓 MTA 檢查是否與其自身通訊。設定 loopcheck 後,SMTP 伺服器會通告 XLOOP 延伸。

當 MTA 的用戶端與支援 XLOOP 的 SMTP 伺服器通訊時,會比對公佈的字串與其 MTA 的值,如果用戶端事實上是與該 SMTP 伺服器通訊,則會立即退回郵件。

其他關鍵字

本節描述其他關鍵字。包含以下各節:

程序通道置換

關鍵字:notificationchanneldispositionchannel

這些關鍵字分別將程序通道置換為最初形成遞送狀態通知 (DSN) 和郵件處理通知 (MDN) 佇列的位置。如果命名的通道不存在,則 Messaging Server 將使用程序通道繼續。

notificationchannel 將程序通道置換為最初形成傳送狀態通知 (DSN) 佇列的位置。如果命名的通道不存在,則 Messaging Server 將使用程序通道繼續。

dispositionchannel 將程序通道置換為最初形成郵件處理通知 (MDN) 佇列的位置。如果命名的通道不存在,則 Messaging Server 將使用程序通道繼續。

通道作業類型

關鍵字:submit

Messaging Server 支援 RFC 2476 的郵件提交協定。submit 可用於將通道標記為僅供提交的通道。這通常對於 TCP/IP 通道最有用,例如在完全用於提交郵件的特殊連接埠上執行的 SMTP 伺服器;RFC 2476 建立連接埠 587 供此類郵件提交之用。

管道通道

關鍵字:user

user 關鍵字在 pipe 通道上用於指示執行時使用的使用者名稱。

請注意,user 的引數通常必須小寫,但如果該引數加上引號,便可保留原始大小寫形式。

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

關鍵字:filter、 nofilter、channelfilter、nochannelfilter、 destinationfilter nodestinationfilter、 sourcefilter、 nosourcefilter、 fileinto 和 nofileinto)

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 (不是數字零)。

垃圾郵件篩選器關鍵字

關鍵字:destinationspamfilterXoptinsourcespamfilterXoptin

destinationspamfilterXoptin 指定傳送至此通道的所有郵件均透過篩選軟體 X 執行。(在 option.dat 中,篩選軟體 X 由 spamfilterX_library 定義。)此關鍵字後接篩選器參數,可用的參數視篩選程式而定。

sourcespamfilterXoptin 指定從此通道發送的所有郵件均透過篩選軟體 X 執行。(在 option.dat 中,篩選軟體 X 由 spamfilterX_library 定義。)此關鍵字後接系統範圍的預設參數,可用的參數視篩選程式而定。如果 switchchannel 生效,則應將此關鍵字置於切換至的通道上。

如需有關這些關鍵字使用方法的詳細資訊,請參閱指定通道級別的篩選

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

關鍵字:aliasdetourhost

aliasdetourhost 允許受託管使用者的 mailHost 屬性值進行來源通道專用置換。具體來說,aliasdetourhost 通常用於在目標為本機 (在此系統上進行託管) 使用者的郵件路由中實現「繞道」至單獨的主機,以進行某種處理。郵件 (該位址是合法的本機位址) 可以在原始主機上進行驗證,並繞道至處理主機,然後再傳回原始主機以進行擴充和遞送。

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

NO-SOLICIT SMTP 延伸支援

關鍵字:sourcenosolicitdestinationnosolicit

網際網路草案 draft-malamud-no-soliciting-07.txt 中說明的 NO-SOLICIT SMTP 延伸已經作為建議的標準在 Messaging Server 中實作了。以下通道關鍵字可以用於控制此功能:

sourcenosolicit 指定請求欄位值清單 (用逗號分隔),由此通道提交的郵件將阻斷這些值。此值清單將顯示在 NO-SOLICIT EHLO 回應中。全域樣式的萬用字元可以用於這些值,但是,包含萬用字元的值不會顯示在 EHLO 通知中。

destinationnosolicit 指定請求欄位值清單 (用逗號分隔),在此通道形成佇列的郵件將拒絕這些值。

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

關鍵字:deferralrejectlimit

設定在單一階段作業期間允許的錯誤 RCPT TO: 位址數目的限制。在 To: 位址的指定數目被拒絕後,後續的所有收件者 (正確的或錯誤的) 都會因為 4xx 錯誤而被拒絕。提供與 ALLOW_REJECTIONS_BEFORE_DEFERRAL SMTP 通道關鍵字相同的功能,但針對的是每個通道。