
postfix mail server 出問題的解決方法!
當有使用者告知有收到上千封的垃圾信時, 需先檢查是否有很多信件發送到 mail queue 裡, 請使用以下指令:
# mailq
假如有大量的 mail 停滯在 queue 裡, 需用指令將停滯在 queue 裡的信清掉, 使用以下指令:
# postsuper -d ALL
刪除了跳板信件後, 請使用者更改密碼, 密碼需要複雜的, 會被當跳板的可能原因是: 使用者使用的密碼被偷或被解碼, 簡單的密碼可能很快的就被解碼了!
另外開始監督 mail log, 使用以下指令:
# tail -f /var/log/maillog
May 5 14:05:56 mail postfix/smtpd[28354]: connect from unknown[178.16.55.89]
May 5 14:05:56 mail postfix/smtpd[28854]: connect from unknown[178.16.55.89]
May 5 14:05:59 mail postfix/smtpd[28354]: warning: unknown[178.16.55.89]: SASL LOGIN authentication failed: authentication failure
May 5 14:06:00 mail postfix/smtpd[28354]: disconnect from unknown[178.16.55.89]
May 5 14:06:00 mail postfix/smtpd[28854]: warning: unknown[178.16.55.89]: SASL LOGIN authentication failed: authentication failure
May 5 14:06:00 mail postfix/smtpd[28854]: disconnect from unknown[178.16.55.89]
假如一直持續有以上的訊息, 代表 178.16.55.89 這個 ip 一直想登入 mail server, 但是密碼一直不對, 這代表這個 ip 一直想闖入, 二話不說, 將此 ip 封鎖, 一種是用 postfix 的 access 來封, 可是它還是可以進來嘗試, 直接用防火牆封鎖, 以下是用兩種不同的方式:
1. 用 postfix access
# vi /etc/postfix/access
加入
178.16.55.89 REJECT
# postmap /etc/postfix/access
# postfix reload
2. 用防火牆
# firewall-cmd --permanent --add-rich-rule='rule family='ipv4' source address="178.16.55.89" reject'
# firewall-cmd --reload
封鎖後須持續監督 mail log, 因為嘗試闖入的一直會持續!