Dovecot

by

IMAP sunucu olarak uzun zamandır Dovecot kullanıyorum. Dovecot ile tanışmam RHEL sayesinde oldu. RHEL içinde Dovecot gelmeye başlayınca denemeye karar verdim. Testler sonrasında gerçek sistemlerde kullanmaya başladım.

Sunucularda Postfix ve Dovecot’u beraber kullanıyorum. Postfix, SMTP ile e-postayı alıyor ama posta kutusuna yazma işini kendisi yapmıyor. E-posta, LMTP ile Dovecot’a iletiliyor. Dovecot, kullanıcının klasörlerinin hangi sunucu üzerinde olduğunu bulup gelen e-postayı ilgili klasöre yazıyor.

Dovecot sunucularında posta kutusu formatı (Mailbox format) olarak Maildir kullanıyorum. Bu formatta her bir mesaj ayrı bir dosya içine yazılıyor. Çok sayıda küçük dosya olacağı için altta kullanılan dosya sisteminin buna uygun olması gerekiyor. Ben ZFS kullanmayı tercih ediyorum.

Kullanıcı posta kutuları sunuculara dağıtılmış durumda. İhtiyaç olursa sunucu ekleyip yatay olarak genişletebiliyorum. Ortak bir depolama sunucusu yok. Her bir sunucunun kendi üzerinde diskler var. Bir kullanıcı posta kutusunun hangi sunucu üzerinde olduğunu gösteren bilgi, LDAP sunucuda her bir kullanıcının bilgileri ile beraber tutuluyor. Herhangi bir kullanıcı e-posta okumak istediğinde Dovecot Proxy devreye giriyor. LDAP sunucudan kullanıcının depolama sunucusunu öğrenip gelen isteği o sunucuya yönlendiriyor. Gelen e-postalar için de benzer bir çözüm var. Proxy olarak çalışan Dovecot, Postfix’ten LMTP ile mesajı alıyor, kullanıcının sunucusunu buluyor ve o sunucu üzerinde çalışan Dovecot’a mesajı ileterek posta kutusuna yazılmasını sağlattırıyor.

Aslında her gelen mesaj gelen posta kutusuna yazılmak zorunda değil. Dovecot, Sieve dilini destekliyor. Kullanıcı isterse mesajı başka bir e-posta adresine yönlendirebilir, farklı bir klasöre yazdırabilir veya mesajı filtreleyerek sildirebilir. Sieve’in desteklediği bütün işlemleri yaptırmak mümkün.

Dovecot çeşitli istatistikler de topluyor. 2.3 versiyonu ile birlikte format değişti. Ben ilgimi çeken verileri Zabbix ile toplayıp grafikler üzerinden izlemeyi tercih ediyorum.

Kullanıcı şifrelerinin ağ üzerinde açık olarak dolaşmasını istemediğim için IMAP, POP3 bağlantılarında SSL/TLS kullanımı zorunlu. Benzer şekilde Dovecot sunucuları LDAP sunuculara erişirken de SSL/TLS kullanımı zorunlu.