iT邦幫忙

0

postfix log 疑惑

aesop 7 年前7946 瀏覽

小弟學藝不精
特來請教

以下是postfix的log (xxx是我的公司 yyy是別人公司)
經與user確認該封信件約600k

我有2點疑惑
1 為什麼一封信會從3個IP 發送過來,而且看起來是對方的內部ip
2 另外該封信也不過600k 即便是mail server 忙碌也不至於要15分鐘吧(user抱怨這點)

以上2點疑惑 還請前輩不吝指導

Jul 14 17:16:09 mails postfix/smtpd[2834]: E36B17172E: client=spam01.yyy.com.tw[210.71.233.25]

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: hold: header Received: from spam01.yyy.com.tw (spam01.yyy.com.tw [210.71.233.25])??by mails.xxx.com.tw (Postfix) with ESMTP id E36B17172E??for <dorismap@xxx.com.tw>; Wed, 14 Jul 2010 17:16:09 +0800 (CST) from spam01.yyy.com.tw[210.71.233.25]; from=<brenda@yyy.com.tw> to=<dorismap@xxx.com.tw> proto=ESMTP helo=<spam01.yyy.com.tw>

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: hold: header Received: from spam01.yyy.com.tw (spam01.yyy.com.tw [127.0.0.1])??by localhost (Postfix) with SMTP id 253348E000C;??Wed, 14 Jul 2010 17:15:57 +0800 (CST) from spam01.yyy.com.tw[210.71.233.25]; from=<brenda@yyy.com.tw> to=<dorismap@xxx.com.tw> proto=ESMTP helo=<spam01.yyy.com.tw>

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: hold: header Received: from avnotes.yyy.com.tw (avnotes.yyy.com.tw [10.1.90.2])??by spam01.yyy.com.tw (Postfix) with ESMTP id 081468E000A;??Wed, 14 Jul 2010 17:15:57 +0800 (CST) from spam01.yyy.com.tw[210.71.233.25]; from=<brenda@yyy.com.tw> to=<dorismap@xxx.com.tw> proto=ESMTP helo=<spam01.yyy.com.tw>

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: message-id=<OF52B1C4EA.F5BB1B76-ON48257760.0032BE40-48257760.0032E65A@yyy.com.tw>

Jul 14 17:29:34 mails MailScanner[1430]: Requeue: E36B17172E.4616D to 6E67B71593

Jul 14 17:29:35 mails postfix/qmgr[17697]: 6E67B71593: from=<brenda@yyy.com.tw>, size=55395, nrcpt=1 (queue active)

Jul 14 17:30:12 mails postfix/local[7107]: 6E67B71593: to=<dorismap@xxx.com.tw>, relay=local, delay=843, status=sent (delivered to command: /usr/bin/procmail -a "$EXTENSION")

Jul 14 17:30:12 mails postfix/qmgr[17697]: 6E67B71593: removed

2 個回答

4
ayu
iT邦研究生 2 級 ‧ 7 年前
最佳解答

剛開始也覺得奇怪, maillog怎麼會記錄到, **應該只有mail header才看得到的東西**?

網路上找了些關於MailScanner和Postfix的搭配設定,
http://blog.weithenn.org/2009/06/freebsdpostfix-mailscanner-clamav.html
http://tw.myblog.yahoo.com/welcom-jabamo/article?mid=220&sc=1
部份內容如下:
vi /etc/postfix/main.cf
header_checks = regexp:/etc/postfix/header_checks
vi /etc/postfix/header_checks
/^Received:/ HOLD #加上這一行, 通知 Postifx 將訊息移至 HOLD Queue

如果您也是這樣設定的, 就不難理解, 為何一封信會進行了三次 hold to queue ,
因為只要mail header開頭出現 Received: , 就會符合條件, 所以有三次記錄.
對於你的mail server而言, 該信事實上只從1個IP發送過來(一次).
client=spam01.yyy.com.tw[210.71.233.25]

至於第二個問題, 依您的maillog看起來,
從 postfix 指派好 message-id 到 MailScanner 進行 requeue ,
隔了13分鐘, 最後又再用了近1分鐘, 才由 procmail 派送到user信箱.
這樣delay的情況已有多久(約何時開始)呢? mail queue裡是否已累積了很多?

aesop iT邦研究生 4 級 ‧ 7 年前 檢舉

這樣delay的情況已有多久(約何時開始)呢? mail queue裡是否已累積了很多?

user偶而會抱怨信很久才收到,但是查log時,是根本都還沒進來。這封信也是user抱怨,卻意外發現已經進來了。而且就同一個時間其他公司寄到我們公司的mail都很正常。

ayu iT邦研究生 2 級 ‧ 7 年前 檢舉

我已檢查過這封信的客戶端(公司), 他們的DNS/mail相關設定沒有瑕疵,
再從您提供的maillog看來, 客戶(user)寄信時是使用avnotes.yyy.com.tw為
內部的smtp server, 再轉給spam01.yyy.com.tw過濾, 然後才送出去,
整個轉送+過濾只用了14秒.
mail server在後端躲得很好, 信件進出都會經由spam01.yyy.com.tw過濾.

簡言之, 我認為原因不會出在對方的郵件系統.
而您這邊提供的資訊太有限, 只能猜測postfix與mailscanner之間的協調,
或者 mail queue 甚至 MX 方面....等可能性.

4
raytracy
iT邦大神 1 級 ‧ 7 年前

aesop提到:
Jul 14 17:16:09 mails postfix/smtpd[2834]: E36B17172E: client=spam01.yyy.com.tw[210.71.233.25]

這裡是對方真正送進來的 IP...

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: hold: header Received: from spam01.yyy.com.tw (spam01.yyy.com.tw [210.71.233.25])??by mails.xxx.com.tw (Postfix) with ESMTP id E36B17172E??for <dorismap@xxx.com.tw>; Wed, 14 Jul 2010 17:16:09 +0800 (CST) from spam01.yyy.com.tw[210.71.233.25]; from=<brenda@yyy.com.tw> to=<dorismap@xxx.com.tw> proto=ESMTP helo=<spam01.yyy.com.tw>

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: hold: header Received: from spam01.yyy.com.tw (spam01.yyy.com.tw [127.0.0.1])??by localhost (Postfix) with SMTP id 253348E000C;??Wed, 14 Jul 2010 17:15:57 +0800 (CST) from spam01.yyy.com.tw[210.71.233.25]; from=<brenda@yyy.com.tw> to=<dorismap@xxx.com.tw> proto=ESMTP helo=<spam01.yyy.com.tw>

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: hold: header Received: from avnotes.yyy.com.tw (avnotes.yyy.com.tw [10.1.90.2])??by spam01.yyy.com.tw (Postfix) with ESMTP id 081468E000A;??Wed, 14 Jul 2010 17:15:57 +0800 (CST) from spam01.yyy.com.tw[210.71.233.25]; from=<brenda@yyy.com.tw> to=<dorismap@xxx.com.tw> proto=ESMTP helo=<spam01.yyy.com.tw>

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: message-id=<OF52B1C4EA.F5BB1B76-ON48257760.0032BE40-48257760.0032E65A@yyy.com.tw>

你的 Cleanup 跑很多東西, 主要問題應該在這裡

Jul 14 17:16:09 mails postfix/cleanup[980]: E36B17172E: message-id=<OF52B1C4EA.F5BB1B76-ON48257760.0032BE40-48257760.0032E65A@yyy.com.tw>

Jul 14 17:29:34 mails MailScanner[1430]: Requeue: E36B17172E.4616D to 6E67B71593

從 Cleanup 到 MailScanner 花了 13 分鐘.

1 為什麼一封信會從3個IP 發送過來,而且看起來是對方的內部ip

應該不是這樣, 因為如果是對方用不同 IP 送進來, 應該會是三個不同的 Queue, 但是從 Log 上看來, 還是同一個 Queue file 還沒處理完畢(E36B17172E).

要仔細調查您的 Cleanup 和 MailScanner 程序.

我要發表回答

立即登入回答