Yaklaşık bir iki haftadır Hotmail sunucularından qmail sunuculara mailler gelmemeye başladı.
Aslında problemin kaynağı yeni değil. Sorunun sebebi Hotmail sunucularının RFC 822bis’da belirtilen standartlara uymaması.
RFC 822bis’e göre CRLF (CR: carriage-return, LF: LineFeed) gerekir. Fakat Hotmail sunucuları bu standart uymadığı için qmail RFC uyumlu değil diye bu formattaki maileri reddeder.
Postfix vb. yazılımlar ise bunun bir sorun olduğu bilmekle birlikte bu formattaki bozuk mailleri kendisi RFC uyumlu hale getirerek alır.
http://cr.yp.to/docs/smtplf.html adresinde konuyla ilgili detaylı bilgiyi bulabilirsiniz.
Çözüm
qmail-smtpd servisini başlatan scriptte DJB’nin ucspi-tcp paketi ile gelen fixcrio komutunun kullanılması gerekir.
Örneğin qmail-smtpd/run dosyasının içeriği aşağıdaki gibi ise:
exec /usr/local/bin/softlimit -m 20000000 /usr/local/bin/tcpserver -H -R -l 0 -v -p -x /etc/tcp.smtp.cdb -c $MAXSMTPD -u $QMAILDUID -g $NOFILESGID 0 smtp /var/qmail/bin/qmail-smtpd 2>&1
SMTP ile /var/qmail/bin/qmail-smtpd arasına fixcrio tam yolu ile eklenir.
Bu durumda dosyanın son hali:
exec /usr/local/bin/softlimit -m 20000000 /usr/local/bin/tcpserver -H -R -l 0 -v -p -x /etc/tcp.smtp.cdb -c $MAXSMTPD -u $QMAILDUID -g $NOFILESGID 0 smtp /usr/local/bin/fixcrio /var/qmail/bin/qmail-smtpd 2>&1
Değişikliğin etkin olması için servisin restart edilmesi gerekir.
Not: fixcrio, TLS modülünde uyumsuzluk çıkardığı için qmail sunucunuzda STARTTLS özelliği varsa STARTTLS ile bağlantı kurmaya çalışan uzak sunucular size mail gönderemeyecektir. Eğer sunucunuzda bu destek varsa
- TLS desteğini iptal edip tekrardan qmail derlemeniz gerekir.
- TLS desteğini kullanmak istiyorsanız http://www.arctic.org/~dean/patches/qmail-0.95-liberal-lf.patch adresindeki ufak yamayı yapmanız gerekir.

Son Yorumlar