Roundcube Mail Gönderiminde “451 4.2.0 Internal Error Occurred (LMTP)” Hatası ve Kesin Çözüm Rehberi

- Roundcube Mail Gönderiminde “451 4.2.0 Internal Error Occurred (LMTP)” Hatası ve Kesin Çözüm Rehberi
- Hata Nasıl Görünür?
- Olası Nedenler
- Adım Adım Çözüm Rehberi
- 1. Logları İnceleyin
- 2. Mailbox İzin/Sahiplik Kontrolü & Onarımı
- 3. Disk Alanı ve Kota Kontrolü
- 4. Postfix → Dovecot LMTP Yapılandırması
- 5. Roundcube SMTP Ayarları
- 6. Servisleri Yeniden Başlatın & Test Edin
- Kontrol Listesi
- SSS – Kısa Sorular & Yanıtlar
- Sonuç
- Kaynaklar
Roundcube ile e-posta gönderimi yapılırken karşılaşılan “451 4.2.0 Internal error occurred / LMTP” hatası, Postfix → Dovecot teslim zincirinde Dovecot tarafında bir hata oluştuğunu gösterir. Bu yazıda, sebep, teşhis ve çözüm adımlarını kod örnekleriyle beraber bulacaksınız.
Hata Nasıl Görünür?
Sunucu Sorunu: STATUS: Internal error occurred. Refer to server log for more information.
(host linux.saviorhost.com[private/dovecot-lmtp] said: 451 4.2.0 Internal error occurred (in reply to end of DATA command))
Bu mesaj, Postfix’in Dovecot LMTP’ye mesajı teslim etmeye çalıştığını, ancak Dovecot’un “internal error” ile yanıt verdiğini gösterir.
Olası Nedenler
- Mailbox izin ya da bozulma: Maildir dizini sahiplik / izin hataları veya bozuk indekler.
- Disk doluluğu ya da kota problemi: Mesaj teslim edilemiyor çünkü yeterli alan yok.
- LMTP / Postfix entegrasyon hatası: Dovecot’un `private/dovecot-lmtp` soketi ya da `mailbox_transport` tanımı yanlış.
- Roundcube SMTP ayarları tutarsız: Yanlış SMTP sunucusu, port ya da bağlantı türü.
Adım Adım Çözüm Rehberi
1. Logları İnceleyin
sudo tail -n 200 /var/log/dovecot.log
sudo tail -n 200 /var/log/maillog
sudo journalctl -u dovecot -u postfix --since "today"
Loglar, hatanın tam nedenini “Permission denied”, “No space left on device”, “lmtp” gibi ifadeleri içererek gösterir.
2. Mailbox İzin/Sahiplik Kontrolü & Onarımı
sudo ls -ld /home/vmail/example.com/iletisim
sudo chown -R vmail:vmail /home/vmail/example.com/iletisim
sudo chmod -R 700 /home/vmail/example.com/iletisim
# Bozuk kutuları yeniden senkronize et
sudo doveadm force-resync -u iletisim@example.com INBOX
sudo doveadm force-resync -u iletisim@example.com '*'
3. Disk Alanı ve Kota Kontrolü
df -h
sudo du -xh /var /home | sort -h | tail -n 20
Kota ya da depolama limiti aşıldıysa, gereksiz dosyaları temizleyin veya kullanıcı kotasını artırın.
4. Postfix → Dovecot LMTP Yapılandırması
Postfix (main.cf):
mailbox_transport = lmtp:unix:private/dovecot-lmtp
Dovecot (10-master.conf):
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
mode = 0600
user = postfix
group = postfix
}
process_min_avail = 5
}
protocol lmtp {
# lmtp_rcpt_check_quota = yes (Gerekirse aktif edin)
}
5. Roundcube SMTP Ayarları
6. Servisleri Yeniden Başlatın & Test Edin
sudo systemctl restart dovecot
sudo systemctl restart postfix
# Kuyrukta bekleyen mailleri kontrol et
postqueue -p
# Logları yeniden izleyin
sudo tail -n 100 /var/log/maillog
Kontrol Listesi
- Loglarda ilgili saat/dakika ile hata satırlarını buldum.
- Mailbox izinleri (`vmail:vmail`, `700`) doğru.
- Disk alanı/kota kontrolü yapıldı, sorun yok.
- Postfix → LMTP yapılandırması uygun.
- Roundcube SMTP ayarları doğrulandı.
- Gerekirse `doveadm force-resync` ile onarım yapıldı.
SSS – Kısa Sorular & Yanıtlar
- “451 4.2.0 neden geçici hata?”
- 4.x kodları SMTP protokolünde “geçici” hatadır. Sorun giderilirse mail yeniden teslim edilebilir.
- Sadece bir kullanıcıda mı hata var?
- Muhtemelen o kullanıcının mailbox’ında bozulma ya da izin sorunu vardır. Onarıp tekrar test edin.
Sonuç
“451 4.2.0 Internal Error Occurred (LMTP)” hatası genellikle **izin, LMTP entegrasyonu veya posta kutusu bozulması** kaynaklıdır. Yukarıdaki rehberi adım adım uygulayarak sorunu kalıcı şekilde çözebilirsiniz. Her adımda logları takip etmeyi unutmayın.