Mail kuyruğunun kontrolsüz biçimde büyümesi, Plesk paneli kullanılan sunucularda sistem yöneticilerinin en sık karşılaştığı teknik problemlerden biridir.
Gönderilemeyen ya da ertelenmiş e-postalar zaman içerisinde birikerek kuyrukta binlerce mesaja ulaşabilir.
Bu durum, mail servisinin çalışma hızını düşürmekle kalmaz, aynı zamanda sunucunun genel performansını da olumsuz yönde etkiler.
Mail, web ve veritabanı servislerinin aynı sunucu üzerinde konumlandığı sistemlerde bu tip sorunlar çok daha sık yaşanır.
Mail Queue doluluğu ile karşılaşıldığında ilk yapılması gereken, kuyruktaki mesajları kontrollü biçimde silerken hangi yöntemin hangi durumda tercih edilmesi gerektiğini bilmektir.
Plesk Yönetim Paneli ile Mail Kuyruğu Temizliği
Plesk yönetim paneli aracılığıyla gerçekleştirilen temizleme işlemleri, düşük yoğunluklu mail kuyrukları için uygundur.
Bu yöntemde herhangi bir komut satırı kullanımı gerekmez ve işlem bütünüyle Plesk arayüzünden yapılır.
Mail Queue Ekranına Giriş İşlemi
Plesk paneline admin yetkileriyle giriş yaptıktan sonra ayarlar alanına geçelim. Ayarlar sayfasında mail başlığı altında yer alan Mail Server Settings seçeneğini açalım.

Sayfa açıldıktan sonra üst menüden Mail Queue sekmesine geçelim. Bu ekranda sunucuda gönderilmeyi bekleyen ve ertelenmiş tüm postalar listelenir.
Mail Kuyruğunda Clear mi Remove mu Kullanılmalı?
Mail Queue ekranındaki Clear ve Remove seçenekleri görünüş olarak benzer olsa da farklı ihtiyaçlara hitap eder. Clear seçeneği, mail kuyruğunda bekleyen tüm mesajları tek seferde silerek kuyruğu tamamen temizler. Kuyruk kontrol edilemez seviyeye ulaştıysa veya spam çıkışı çok geniş bir kapsama yayıldıysa bu seçenek tercih edilir.
Remove ise yalnızca seçilmiş e-postaların silinmesine olanak tanır. Belirli bir gönderici, domain veya alıcıya ait mesajları hedeflemek istediğinde Remove kullanmak daha uygundur.
Bu yaklaşım, tüm kuyruğun gereksiz şekilde silinmesini engeller ve kullanıcı hatası riskini azaltır.
Mail Kuyruğundaki Mesajları Analiz Edelim
Mail Queue listesinde yer alan Sender ve Status bilgilerini özellikle kontrol edelim.
Aynı gönderen adresinden yoğun şekilde mesaj birikmiş olması, genellikle spam gönderimi yapıldığını gösterir.

Mail Kuyruğunun Komple Temizlenmesi
Mail kuyruğunda bulunan tüm mesajları silmek için Mail Queue ekranının üst bölümündeki Clear butonuna tıklanır.
Bu işlem sonucunda kuyruktaki tüm e-postalar kalıcı olarak silinir.

Sadece İstenen Mesajları Silme
Tüm kuyruğun silinmesi tercih edilmiyorsa yalnızca belirli mesajlar temizlenebilir.
Silinmesi planlanan e-postalar listeden checkbox yardımıyla seçilir.
Seçim tamamlandıktan sonra Remove butonuna tıklanır.
Panel Performansı Düştüğünde
Mail kuyruğu aşırı büyüdüğünde panel üzerinden yapılan temizleme sırasında arayüz yavaşlayabilir veya işlem yanıt vermeyebilir. Bu gibi durumlarda sadece temizlik yapmak yeterli olmayabilir ve mail servislerinin kontrollü şekilde yeniden başlatılması gerekebilir Bu nedenle panelde beklemek yerine SSH bağlantısı üzerinden doğrudan temizlik yapılması önerilir.
SSH ile Mail Kuyruğu Temizleme
SSH üzerinden uygulanan temizleme yöntemi, özellikle binlerce e-posta içeren mail kuyruklarında çok daha hızlı ve güvenilir sonuçlar sağlar.
Plesk, mail kuyruğunu temizlemek için kendi komut satırı araçlarını sunar.
Sunucuya root kullanıcısı ile SSH bağlantısı oluşturalım.
Tüm Kuyruğu Silmek
Kuyrukta bulunan tüm mailleri, hem gönderilmeyi bekleyen hem de giden mesajlar dahil olacak şekilde anında silmek için aşağıdaki komutu kullanalım.
postsuper -d ALLYalnızca Deferred Kuyruğunu Temizleme
Gönderim hatası aldığı için ertelenmiş durumda bekleyen ve çoğu zaman spam trafiğine ait olan mailleri silmek için aşağıdaki komut tercih edilir.
postsuper -d ALL deferredSorunlu Göndericiye Ait Mail Kuyruğunu Temizleme
Eğer mail kuyruğunu büyüten tek bir gönderici adresi varsa bu yöntem kullanılmalıdır.
mailq | tail -n +2 | awk 'BEGIN { RS = "" } /spam@alanadi\.com/ { print $1 }' | tr -d '*!' | postsuper -d -Kuyruk Durumunu Kontrol Etme
Mail kuyruğunda kaç adet mesaj bulunduğunu ve bu mesajların neden biriktiğini anlayabilmek için aşağıdaki komutları kullanabiliriz.
Kuyruktaki mail sayısını görmek için
mailq | grep -c "^[A-F0-9]"Kuyrukta bekleyen maillerin içeriğini incelemek için
postcat -q [MAIL_ID]Kuyruğun Kaynağını Tespit Etme
Eğer gönderici alanında bir e-posta adresi yerine sistem kullanıcısı görüyorsanız, mail gönderimi bir PHP dosyası üzerinden yapılıyor olabilir.
Bu duruma hangi dosyanın sebep olduğunu bulmak için öncelikle mailq komutu ile bir Mail ID seçelim.
Ardından aşağıdaki komut ile ilgili dosya yolunu tespit edelim.
postcat -q A1B2C3D4 | grep "X-PHP-Originating-Script"Temizlik sonrası kontrol
Temizleme işlemi tamamlandıktan sonra tekrar Plesk paneline dönelim ve Mail Queue sekmesi yenileyelim. Liste boşsa işlem başarıyla tamamlanmıştır.
Gelecekte Kuyruk Şişmesini Nasıl Önlerim?
Mail kuyruğunu temizlemek sorunu geçici olarak çözer. Asıl önemli olan, aynı problemin tekrar yaşanmamasını sağlamaktır. Bunun için Plesk üzerinde birkaç temel ayarın mutlaka yapılması gerekir.
Giden Mail Sınırı Koyulmalı
Plesk panelde Tools & Settings > Outbound Spam Protection kısmından her domain için saatlik limit belirleyelim.

SPF ve DKIM Kayıtlarını Kontrol Edelim
Plesk’te her domain için Mail Settings bölümünden SPF ve DKIM ayarlarının aktif olduğundan emin olunmalıdır. Çünkü SPF ve DKIM kayıtları eksik veya hatalıysa, gönderilen mailler karşı sunucular tarafından reddedilir

Relay Ayarlarını Kapatalım
Plesk panelde ayarlar bölümünden relay ayarları kontrol edilmelidir. Mail sunucusunun Open Relay durumunda olması, en kritik güvenlik risklerinden biridir. Open Relay olan bir sunucu, dışarıdan herkes tarafından mail göndermek için kullanılabilir.