Hotmail mail sorunu
Son 1-2 hafa içerisinde hotmail sunucularından gönderilen maillerin özellikle qmail kullanan linux mail sunucularına ulaşmadığı yönünde destek talepleri almaktaydık.
Yaptığımız araştırmalar neticesinde sorunun kaynağının hotmail sunucularının RFC 822bis de belirlenen standartlara uygun davranmaması olduğu sonucuna vardık.
RFC 822bis e göre CRLF (CR= carriege-return, LF=LineFeed) gerekir. Oysaki hotmail sunucuları bağlantı isteklerini bu uyumluluğu gözardı ederek yapmaya çalıştıklarında özellikle RFC standartlarına sıkı sıkıya bağlı olan qmail mail sunucuları ile aralarında bağlantı kurulamama sorunu yaşamaktalar. Zira gelen bağlantı istekleri RFC uyumlu olmaması gerekçesi ile qmail tarafından rededilir.
Temelde sorunun hotmail in sistemlerini RFC 822bis e uygun hale getirmesi ile çözülmesi gerekir ama bu hususta hotmail in henüz bir aksiyon almamış olması ve alacağınında süpheli olması farklı bir çözüm arayışı doğurmaktadır.
Postfix gibi yazılımlar gelen bağlantı isteğindeki uyumsuzluğu bir sorun olarak algılamalarına rağmen bu bozukluğu öntanımlı konfigurasonları sebebi ile kensileri uyumlu hale getirerek kabul etmeye devam ederler.
Ancak qmail ve özellikle özelleştilmiş qmail kullanan plesk hosting kontrol panelli sunucular için sorun devam etmektedir.
özellikle plesk qmail log dosyasında gorülen
Sep 19 03:27:07 hostname qmail-queue[19056]: possible qmail-smtpd exited by timeout, reset connection or with “See http://pobox.com/~djb/docs/smtplf.html.”
benzeri satırların aşırı yoğun sekilde bulunması sunucunuzun bu sorunu yaşadığının kanıtıdır.
Konu ile ilgili detaylı bilgiye http://cr.yp.to/docs/smtplf.ht adresinden de erişilebilir.
Peki qmail i posta sunucusu olarak kullanan plesk for linux sunucularında sorunu nasıl çözebiliriz.
Özellikle Plesk 8.x serisi ve yine qmail kullanan plesk 9.x linux sunucuları icin
yaptığımız denemeler ile kanıtlanmış yöntem şudur.
DJB nin ucspi-tcp paketi ile gelen fixcrio komutu bu amaçla kullanılabilir.
Standart linux dağıtımları ile gelmeyen bu komutu uscip-tcp paketinin kaynak kodunu derleyerek yada kullanmış olduğunuz linux dağıtımı için yapılmış rpm,deb gibi hazır paketlerinden birini kullanarak sisteminizde fixcrio komutunun varolmasını sağlamalısınız.
ilgili paketi http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz adresinden indirip derleyerek ( derleme yönergeleri : http://cr.yp.to/ucspi-tcp/install.html adresinden ulaşılabilir) veya basit google aramaları ile sisteminize uygun rpm, dep gibi paketi sisteminize yükleyerek fixcrio programına sahip olun.
program ontanımlı olarak /bin , /usr/bin, /usr/local/bin gibi bir klasöre kurulmuş olacaktır.
fixcrio binary sini /var/qmail/bin klasörüne kopyalayın ve dosya haklarını
-r-xr-xr-x 1 root root 15672 Oct 14 15:32 fixcrio
haline getirin.
sonrasında xinetd tarafından çalıştırılan plesk smtp servisi icin
/etc/xinetd.d/smtp_psa
dosyası üzerinde
server_args = -Rt0 /var/qmail/bin/relaylock /var/qmail/bin/fixcrio /var/qmail/bin/qmail-smtpd /var/qmail/bin/smtp_auth /var/qmail/bin/true /var/qmail/bin/cmd5checkpw /var/qmail/bin/true
değişikliğini yapın
öntanımlı olarak yukarıdaki satırın
server_args = -Rt0 /var/qmail/bin/relaylock /var/qmail/bin/qmail-smtpd /var/qmail/bin/smtp_auth /var/qmail/bin/true /var/qmail/bin/cmd5checkpw /var/qmail/bin/true
benzeri bir halde olması gerekir relaylock binarysinden sonra pipe edilen fixcrio binarysi gerekli CRLF düzeltmesini yapacak ve qmail kullanan plesk sunucunuz hotmail den gelen RFC uyumsuz bağlantı isteklerini kabul edebilir hale gelecektir.
tabi xinetd servisini restart etmeyi unutmayın.
Etiketler: fixcrio, hotmail, hotmail mail sorunu, hotmail qmail problem, plesk, qmail, RFC 822bis
15 Eki 09 |