本節包含以下小節:
郵件佇列的過度增長可能表示郵件未被傳送、傳送延遲或進入速度高於系統傳送速度。導致出現該問題的原因有很多,如由大量郵件湧入系統而導致的拒絕服務攻擊,或者是工作控制器未執行。
請參閱通道郵件佇列、郵件未移出佇列以及 MTA 郵件未遞送,以取得有關郵件佇列的更多資訊。
磁碟空間使用率增大。
使用者未在合理時間內收到郵件。
郵件佇列大小過大。
監視郵件佇列的最佳方法可能是使用 imsimta qm。請參閱 imsimta qm 計數器。
還可以監視佇列目錄 (msg_svr_base/data/queue/) 中的檔案數目。檔案數目將是站點特定的,並且您需要建立基線歷程記錄以找出何為「太多」。您可以記錄兩週內佇列檔案的大小,以取得近似平均數。
傳送失敗是指嘗試將郵件傳送至外部站點時失敗。傳送失敗率大幅度增長可能表示出現網路問題,例如 DNS 伺服器或遠端伺服器停用,從而導致回應連線逾時。
沒有明顯徵兆。mail.log_current 中會出現許多 Q 記錄。
傳送失敗以記錄項目代碼 Q 記錄在 MTA 記錄檔中。請查看檔案 msg_svr_base/data/log/mail.log_current 中的記錄。範例:
mail.log:06-Oct-2003 00:24:03.66 501d.0b.9 ims-ms Q 5 durai.balusamy@Sun.COM rfc822;durai.balusamy@Sun.COM durai@ims-ms-daemon <00ce01c38bda$c7e2b240$6501a8c0@guindy> Mailbox is busy
來自給定 IP 位址的內送 SMTP 連線數異常增長可能表示︰
外部使用者在嘗試轉送郵件。
外部使用者在嘗試進行拒絕服務攻擊。
外部使用者在轉送郵件︰查看 msg_svr_base/log/mail.log_current,以查找帶有記錄項目代碼 J 的記錄 (被拒絕的轉送)。若要啟動遠端 IP 位址記錄,請將以下行增加至 option.dat 檔案:
log_connection=1
請注意,啟用此功能時效能可能會略微降低。
拒絕服務攻擊︰若要找出連線 SMTP 伺服器的使用者以及使用者數量,可以執行指令 netstat,並檢查 SMTP 連接埠 (預設值:25) 上的連線。範例:
Local address Remote address State 192.18.79.44.25 192.18.78.44.56035 32768 0 32768 0 CLOSE_WAIT 192.18.79.44.25 192.18.136.54.57390 8760 0 24820 0 ESTABLISHED 192.18.79.44.25 192.18.26.165.48508 33580 0 24820 0 TIME_WAIT |
請注意,首先需要確定適當的系統 SMTP 連線數目及其狀態 (ESTABLISHED、CLOSE_WAIT 等),以確定特定讀取是否不正常。
如果發現許多連線處於 SYN_RECEIVED 狀態,則這可能是由網路中斷或拒絕服務攻擊導致的。此外,SMTP 伺服器程序的存在時間是受限制的。該時間由 dispatcher.cnf 檔案中的 MTA 配置變數 MAX_LIFE_TIME 控制。預設為 86,400 秒 (一天)。同樣地,MAX_LIFE_CONNS 指定伺服器程序可在其使用期限內處理的連線之最大數目。如果您發現特定 SMTP 伺服器使用了很長一段時間,則可能希望調查一下。
必須執行派送程式和工作控制器程序,MTA 才能運作。每種類型您均應擁有一個程序。
如果派送程式當機或者沒有足夠的資源,則 SMTP 連線會被拒絕。
如果工作控制器當機,則佇列大小將增加。
查看名為 dispatcher 和 job_controller 的程序是否存在。請參閱檢查工作控制器和派送程式是否正在執行。