郵件日誌內容解析

 摘取的日誌信息
Jan 22 10:08:33 zhjedu postfix/smtpd[21541]: connect from unknown[5.7.9.11]
Jan 22 10:08:33 zhjedu postfix/smtpd[21541]: 837AE3850EC: client=unknown[5.7.9.11], sasl_method=LOGIN, sasl_username=wxiaodong
Jan 22 10:08:33 zhjedu postfix/cleanup[21542]: 837AE3850EC: message-id=<[email protected]>
Jan 22 10:08:34 zhjedu postfix/qmgr[21188]: 837AE3850EC: from=<[email protected]>, size=3634, nrcpt=1 (queue active)
Jan 22 10:08:36 zhjedu postfix/smtpd[21541]: disconnect from unknown[5.7.9.11]
Jan 22 10:08:37 zhjedu postfix/smtp[21544]: 837AE3850EC: to=<[email protected]>, relay=gmail-smtp-in.l.google.com[209.85.222.68], delay=4, status=sent (250 2.0.0 OK 1264126131 42si3512720pzk.133)
Jan 22 10:08:37 zhjedu postfix/qmgr[21188]: 837AE3850EC: removed

上面的日誌是發送郵件的一整套日誌,從客戶端連接郵件服務器,到郵件服務器發送郵件出去的過程

我們首先在郵件服務器上運行pstree,然後看一下postfix的相關進程:
master-+-anvil
     |        |-2*[cleanup]
     |        |-local
     |        |-pickup
     |        |-proxymap
     |        |-qmgr
     |        |-2*[smtpd]
     |        `-trivial-rewrite

postfix程序中,首先啓動的是master進程,接着master進程負責啓動anvil,2個cleanup,local,pickup,proxymap,qmgr,2個smtpd,trivial-rewrite,這個可以通過master.cf文件來控制都啓動那些進程
master  進程是postfix的父進程,負責管理其他進程
anvil   進程是控制發信頻率
cleanup 它根據canonical和virtual映射,加上缺少的信頭,重寫郵件地址。在把電子郵件插入到incoming隊列之前,cleanup要用trivial-rewrite把它略做重寫,這個程序對地址做一些小的修正,例如,給不完整的地址追加一個郵件域名
local     進程是負責投遞發往本地的郵件,本地MDA
pickup     進程是負責監聽來自本地的郵件,如果有新郵件,就將新郵件投遞到cleanup
qmgr       隊列管理器,如下是5個隊列
           —  incoming(傳入)—剛到的郵件;
           —  active(活動)—正在投遞的郵件;
           —  deferred(推遲)—以前投遞失敗的郵件;
           —  hold(約束)—隊列中的郵件被系統管理員阻止發送;
           —  corrupt(錯誤)—不可讀或者不可分析的郵件
proxymap    查詢表代理服務
smtpd       負責監聽來自網絡的郵件,例如,foxmail或者outlook發的郵件


從摘取的日誌裏能夠清晰的看到郵件的動態,下面咱們一個一個解析它:

1.   Jan 22 10:08:33 zhjedu postfix/smtpd[21541]: connect from unknown[5.7.9.11]  
     Jan 22 10:08:33   時間   
     zhjedu            主機名
     postfix/smtpd     postfix進程中的smtpd服務
     #客戶端連接到郵件服務器,客戶端的IP地址是5.7.9.11,是postfix的smtpd進程處理了這個連接請求
2.   Jan 22 10:08:33 zhjedu postfix/smtpd[21541]: 837AE3850EC: client=unknown[5.7.9.11], sasl_method=LOGIN, sasl_username=wxiaodong  
     837AE3850EC  表示的是這封郵件的郵件ID
     client=unknown[5.7.9.11]    表示來自客戶端5.7.9.11的連接
     sasl_method=LOGIN           表示的是sasl的認證方法LOGIN 
3.   Jan 22 10:08:33 zhjedu postfix/cleanup[21542]: 837AE3850EC: message-id=<[email protected]>
     postfix/cleanup    表明處理的進程是cleanup 
     message-id         ID
4.   Jan 22 10:08:34 zhjedu postfix/qmgr[21188]: 837AE3850EC: from=<[email protected]>, size=3634, nrcpt=1 (queue active)
      postfix/qmgr     表明處理的進程是qmgr,郵件目前已經進入到隊列中了
      from=<[email protected]>   發件人[email protected]
      size=3634     郵件大小
      queue active     已進入active郵件隊列
5.   Jan 22 10:08:36 zhjedu postfix/smtpd[21541]: disconnect from unknown[5.7.9.11]
      postfix/smtpd   表明處理的進程是smtpd
      disconnect from unknown[5.7.9.11]    郵件服務器已經斷開和客戶端的連接

6.   Jan 22 10:08:37 zhjedu postfix/smtp[21544]: 837AE3850EC: to=<[email protected]>, relay=gmail-smtp-in.l.google.com[209.85.222.68], delay=4, status=sent (250 2.0.0 OK 1264126131 42si3512720pzk.133)
       postfix/smtp   表明這個郵件不是發往本地的郵件,需要使用smtp進程來處理這個郵件
       to=<[email protected]>    收件人是[email protected]
       relay=gmail-smtp-in.l.google.com[209.85.222.68]    說明是gmail-smtp-in.l.google.com來接收了發往[email protected]的郵件
       status=sent (250 2.0.0 OK 1264126131 42si3512720pzk.133)    說明郵件的狀態是已經接收成功了
7.     Jan 22 10:08:37 zhjedu postfix/qmgr[21188]: 837AE3850EC: removed
        出現removed說明837AE3850EC這封郵件已經投遞出去了.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章