Exim
如何使用 qmail 停止 BACKSCATTER?
我有一個 Linux 機器充當域託管的虛擬主機。它執行 CentOS 和 Parallels Plesk 9.x。無論以下情況如何,SPAM 都以 1-3 / 秒的速度持續流入。
問題的解釋
xinetd 服務偵聽 SMTP 連接並轉發到 qmail-smtpd。qmail 服務只處理隊列,但不控制進入隊列的消息……這就是為什麼停止它沒有效果。如果你停止 xinetd 和 qmail,然後殺死任何打開的 qmail-smtpd 程序,所有郵件流有時會停止。
問題是,qmail-smtpd 不夠聰明,無法在接受郵件之前檢查本地主機上的有效郵箱。因此,它接受帶有偽造回复地址的壞郵件,該地址由 qmail 在隊列中處理。Qmail 無法在本地投遞並退回到偽造的回复地址。
我們認為修復方法是修補 qmail-smtpd 程序,使其能夠在接受郵件之前檢查本地郵箱是否存在。問題是當我們嘗試編譯 chkuser 更新檔時,由於 Plesk 控制面板,我們遇到了失敗。
有沒有人知道我們可以做不同或更好的事情?
到目前為止還沒有奏效的其他事情:
- 關閉任何和所有郵件程序(以檢查個人帳戶是否已被盜用。這已被證實不是這種情況。)
- 關閉郵件和 http 伺服器程序(在 formmail 受損的情況下)
- 執行 Exim 代替 qmail(簡單/快速安裝,但 xinetd 強制 exim 關閉並自行重新啟動 qmail)
- 通過 Plesk GUI 開啟 SPF 保護。沒有幫助。
- 通過 Plesk GUI 打開灰名單。沒有幫助。
- 通過命令行禁用退回通知
可能有效但有並發症的事情:
- 使用 Postfix 而不是 qmail(不了解 Postfix,也不想打擾它,除非有人知道它有可能在投入時間之前很好地處理反向散射)
- 如上所述,編譯一個chkusr 更新檔,我們相信會停止這個問題,以及 qmail(因為混合了 Plesk,編譯每次都失敗,除非我掏錢,否則 Parallels Plesk 支持沒有響應)
如果我不每晚從外發郵件隊列中清除垃圾郵件,那麼它就會被數百萬個垃圾郵件堵塞,並導致外發電子郵件服務中斷。
您可以將庫存 qmail-smtpd 替換為qpsmtpd。然後您可以使用外掛 check_badrcptto 來驗證收件人地址並在無效時拒絕電子郵件。
看看這個有用的更新檔:
http://qmail.jms1.net/patches/validrcptto.cdb.shtml
使用 cdb 文件列出有效的收件人。可能是使用 qpsmtpd 的一個很好的替代方案。