關鍵字:aliasdetourhost 和 aliasoptindetourhost
aliasdetourhost 和 aliasoptindetourhost 允許託管使用者的 mailHost 屬性值進行來源通道特定覆寫。具體來說,aliasdetourhost 通常用於在目標為本機 (在此系統上進行託管) 使用者的郵件路由中實現「繞道」至單獨的主機,以進行某種處理。郵件 (該位址是合法的本機位址) 可以在原始主機上進行驗證,並繞道至處理主機,然後再傳回原始主機以進行擴充和遞送。(請注意,在此處提到 aliasdetourhost 時也會對 aliasoptindetourhost 進行說明,其功能類似 aliasdetourhost,不同之處在於繞道作業僅在使用者透過 LDAP 下列屬性選擇加入時發生。
aliasdetourhost 允許更好地配置和使用通道和協力廠商篩選主機的「中間篩選」排序。除了使用替代轉換通道之外,還經常使用 aliasdetourhost。aliasdetourhost 用於影響本機 (在此系統上進行託管) 使用者的路由,而替代轉換通道用於影響遠端收件者的路由。
aliasdetourhost 的引數為主機或網域名稱,或主機/網域規格。(請注意,重寫規則可處理主機名稱、IP 文字位址和暗示為主機名稱的通道標記。)如果在來源通道上指定關鍵字,將導致儲存在 LDAP 中的位址之別名擴充,正好在檢查郵件主機資訊之前 (處理轉換標記資訊之後) 停止。屆時,郵件將傳送至 aliasdetourhost 值,該位址也將 (在擴充別名之前驗證位址之後) 被視為已成功處理。
以下範例說明 aliasdetourhost 可用於避免各種與轉換通道篩選有關的問題:假設系統設置有前端 MTA 和後端郵件儲存。使用者的遞送選項設定為 forward 和 mailbox。MTA 使用防毒/垃圾郵件系統的替代轉換通道。當郵件抵達此使用者後,MTA 別名擴充並產生兩個收件者:本機收件者和遠端收件者。遠端收件者的副本可直接傳送。而移至轉換通道的本機收件者之副本先進行掃描,然後傳回。然後第二次套用別名擴充,以便為遠端收件者產生另一個副本,而本機收件者的副本會正常傳送。結果:遠端收件者有兩個副本,本機收件者有一個副本。
透過使用 aliasdetourhost 的通道,而不是使用本機託管使用者的替代轉換通道 (但是仍可能使用其他收件者的替代轉換通道),可執行以下作業:
接受郵件。
將郵件路由至外部垃圾郵件病毒篩選器
重新接受郵件以進行位址擴充和遞送。
範例 1:
假設協力廠商掃描程式在與 MTA 不同的單獨主機上執行。以下範例允許使用使用者項目轉寄,而無需建立虛假複製件,同時保留在接受郵件之前執行收件者位址驗證的能力。
建立新的通道 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 |
將 aliasDetourHosttcp_scanner-daemon 增加至要掃描的所有內送來源 tcp 通道 (可能包含 tcp_local、tcp_submit、tcp_intranet 和 tcp_auth) 上的 tcp_local。以下是 tcp_local 和 tcp_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 的正式主機名稱。
建立重寫規則,以透過 tcp_scanner 通道從掃描系統收回郵件。
[1.2.3.4] $E$R$U[1.2.3.4]@tcp_scanner-daemon
其中 1.2.3.4 為掃描程式系統的位址。
如果未建立該重寫規則,郵件將透過其他 tcp* 來源通道進入,並且郵件將再次被掃描,因為所有郵件都具有 aliasdetourhost。將發生迴圈。
重新編譯您的配置並重新啟動派送程式。
#imsimta cnbuild #imsimta restart dispatcher |
範例 2:
假設協力廠商掃描儀在與 MTA 相同的主機上執行,但偵聽不同的連接埠。假設郵件在連接埠 10024 上被接受並轉送回 10025 上。
建立新的通道 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 |
將 aliasDetourHosttcp_scanner-daemon 增加至要掃描的所有內送來源 tcp 通道 (可能包含 tcp_local、tcp_submit 和 tcp_intranet 等) 上的 tcp_local。以下是 tcp_local 和 tcp_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 |
增加至對映檔案,以透過 tcp_scanner 通道重新路由外送郵件。
CONVERSIONS in-chan=tcp_scanner;out-chan=*;CONVERT No in-chan=tcp_*;out-chan=tcp_local;CONVERT Yes,Channel=tcp_scanner
在 job_controller.cnf 的 SMTP_POOL 之下,增加對同步運作的掃描的數目限制。
儘管也應限制掃描軟體,但是保持設定相同是可取的。這樣,當掃描器不接受郵件時,郵件傳送伺服器就不會嘗試向該掃描器傳送郵件了。
! [POOL=SCAN_POOL] job_limit=2 ! |
將新的服務增加至 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 ! |
重新編譯您的配置並重新啟動派送程式。
# imsimta cnbuild # imsimta restart job_controller # imsimta restart dispatcher |
每個使用者的 aliasdetourhost 現在可透過下列功能集執行:
aliasoptindetourhost 通道關鍵字。其功能類似 aliasdetourhost,不同之處在於繞道作業僅在使用者透過下列屬性選擇加入時發生。關鍵字的值是潛在繞道主機的逗號分隔清單。
LDAP_DETOURHOST_OPTIN MTA 選項,其會指定用以選擇使用者加入繞道的屬性名稱 (假設來源通道有 aliasoptindetourhost 集)。如果此屬性的值包含句點,這些值會與潛在的繞道主機清單進行比較,且會選擇清單上第一台符合的主機做為繞道主機。如果此值不包含句點,會無條件使用第一台繞道主機。
ALIASDETOURHOST_NULL_OPTIN MTA 選項,其類似於 SPAMFILTERx_NULL_OPTIN (請參閱表 14–1)。此選項會指定特殊值,若用在 LDAP_DETOURHOST_OPTIN 屬性中,則會視為將省略的屬性。預設值為 "",表示會忽略空的屬性值。