Özellikle paylaşımlı hosting sunucularında, parolası zayıf olan veya zararlı yazılımlara (malware/shell) maruz kalmış e-posta hesapları, spam göndericilerinin bir numaralı hedefidir. Sunucu sahibinin veya kullanıcının haberi dahi olmadan arka planda binlerce spam mail gönderilebilir. Bu durum, sunucu IP adresinizin Gmail, Hotmail (Outlook) ve çeşitli antispam kuruluşları (RBL) tarafından hızla Kara Listeye (Blacklist) alınmasına yol açar.
Bir önceki makalemizde spam yapan hesabı nasıl tespit edip durduracağımızı anlatmıştık. Bu rehberimizde ise
1. Exim Mail Kuyruğunu Görüntüleme
Temizlik işlemine başlamadan önce kuyrukta ne kadar mail olduğunu görmek iyi bir referanstır. SSH üzerinden sunucunuza root yetkisiyle bağlanın ve kuyruktaki mailleri listelemek için şu komutu kullanın:
exim -bp
DoğruHost Pro-İpucu: Eğer listede binlerce mail varsa ekranın akıp gitmesi kafa karıştırıcı olabilir. Sadece kuyruktaki toplam mail sayısını rakam olarak görmek isterseniz
exim -bpckomutunu kullanabilirsiniz.
2. Mail Kuyruğunu Temizleme Yöntemleri
Kuyruktaki mail sayısına ve sunucunuzun yoğunluğuna göre tercih edebileceğiniz iki farklı temizlik metodu bulunmaktadır.
Yöntem A: Exim Komutları ile Standart Temizlik (Önerilen)
Eğer kuyruktaki mail sayısı aşırı yüksek değilse, doğrudan Exim'in kendi komut dizinini kullanarak listedeki mailleri sildirmek en güvenilir yöntemdir. Modern Linux altyapılarında (AlmaLinux, CentOS 7+, Ubuntu vb.) Exim servisini durdurup temizliği başlatmak için aşağıdaki komutları sırasıyla uygulayın:
systemctl stop exim
exim -bp | grep '<' | awk '{ print $3; system("exim -Mrm "$3)}'
systemctl start exim
Bu komut, kuyruktaki e-postaların ID'lerini sırasıyla okur ve Exim üzerinden güvenli bir şekilde silinmelerini sağlar.
Yöntem B: Dizin Üzerinden Zorla (Force) Silme (Aşırı Yüklü Kuyruklar İçin)
Kuyrukta on binlerce, hatta yüz binlerce spam mail biriktiyse, A yöntemindeki komutun işlemesi saatler sürebilir veya sunucuyu yorabilir. Bu gibi acil durumlarda doğrudan /var/spool/exim dizinine giderek log ve input dosyalarını fiziksel olarak silebilirsiniz:
systemctl stop exim
cd /var/spool/exim
find input -type f -exec rm -rf {} \;
find msglog -type f -exec rm -rf {} \;
systemctl start exim
Not: Bu işlem Exim'in ilgili dizinlerindeki tüm bekleme ve log dosyalarını kalıcı olarak silecektir.
Önemli Güvenlik Uyarısı!
Kuyruğu temizlemek günü kurtarır ancak sorunun kaynağını çözmez. Spam çıkışlarının tekrar etmemesi için spam yapan cPanel hesabının şifrelerini mutlaka güçlü bir kombinasyonla değiştirin ve ilgili hesap içerisinde geniş çaplı bir virüs/malware taraması gerçekleştirin.
