1. 程式人生 > >(轉)postfix瘋狂外發垃圾郵件之分析與解決

(轉)postfix瘋狂外發垃圾郵件之分析與解決

nbsp 被人 4.4.2 def mst conn 其中 post system

從進程中看到,好像是postfix有問題。我這postfix主要是用來給程序發達郵件用的,如報警,程序外發郵件等。平時postfix進程不會像現在這樣異常,這在postf主進程CPU占用高,其它的相關進程,也占用很高,如smtp,qmgr等。當然,也看到了不少error的進程,而且屬主是postfix,所以可以判斷是postfix出問題了,為了證實,把postfix服務停掉,觀察top狀態,服務器負載都下去了,而且磁盤寫入,上下文切換都降低了,所以,postfix異常是正確的。

這是剛停止postfix以後的vmstat

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----

r b swpd free buff cache si so bi bo in cs us sy id wa st

1 0 88736 600328 448020 13682256 0 0 0 5 0 0 0 0 99 0 0

0 0 88736 600164 448020 13682256 0 0 0 0 3500 725 0 0 99 0 0

0 0 88736 600448 448020 13682256 0 0 0 0 4008 842 0 0 99 0 0

0 0 88736 600544 448020 13682256 0 0 0 0 3197 668 0 0 100 0 0

因為對postfix不是很熟悉,所以,在網上找了一篇文章:

參考文檔:http://www.myhack58.com/Article/60/sort095/2012/35334.htm

按他的思路和方法,我打開maillog日誌,發現日誌是寫入很快,用tail -f可以看是狂刷屏,而且日誌文件有幾個G大了。日誌大概如上:

Feb 28 10:08:27 mail postfix/error[10442]: DC467C1AE4: to=<[email protected]>, relay=none, delay=12332, delays=12324/3.5/0/4, dsn=4.0.0, status=deferred (delivery temporarily suspended: host mx1.comcast.net[68.87.26.147] refused to talk to me: 554 imta33.westchester.pa.mail.comcast.net comcast 124.172.223.189 Comcast block for spam. Please see http://postmaster.comcast.net/smtp-error-codes.php#BL000000)

Feb 28 10:08:27 mail postfix/error[10943]: 6BA87C6222: to=<[email protected]>, relay=none, delay=760, delays=751/9.2/0/0.18, dsn=4.4.2, status=deferred (delivery temporarily suspended: lost connection with mta5.am0.yahoodns.net[66.196.118.33] while sending RCPT TO)

然後用postcat -q命令查看其中一封郵件的內容: 如 postcat -q 659D0C3636,可以看到,郵件是用[email protected]發送的,再仔細分析日誌,確實是挺多from [email protected]記錄。登陸[email protected]郵箱,發現有8000多封退信,而且還在增加中。到此,問題所在可以真正找出來了。因為[email protected]是以前開發程序時所創建的帳號,有可能是密碼設的太簡單,被人破解,被用於狂發郵件。果斷把[email protected]封掉。然後再用postsuper -d ALL 把其它postfix緩存清空,到此故障完全排除。有些排查和解決步驟,那篇文章中出現的,我這裏就沒寫出來了,思路是借鑒他的。

(轉)postfix瘋狂外發垃圾郵件之分析與解決