Postfix, Dovecot ve MySQL, mükemmel karışım.

Bookmark and Share

Sayfa : « 1 2 3 4 5 6 7 »

3. Dovecot Kurulumu

Dovecot basit, hızlı ve gayet başarılı bir email sunucusu. Kimisi Courier’ı tercih ediyor, ancak ben uzun zamandır bir IMAP kullanıcısı olarak Dovecot’tan çok daha verim aldım diyebilirim, çünkü kendi indexleme sistemi var ve 60 bin kadar mail içerisinden aradığımı kolayca bulabiliyorum.

Şimdi gelelim Dovecot ayarlarına, burada kurcalayacağımız iki tane dosya var. İlki dovecot.conf;

[...]
protocols = imap imaps pop3 pop3s
[...]
disable_plaintext_auth = no
[...]
mail_location = maildir:/home/vmail/%d/%u:LAYOUT=fs
[...]
 #passdb pam {
 [...pam auth'u kapatmamız lazım, o yüzden
 karşılığı olan } işaretini bulmak şart...]
 #}
 passdb sql {
  args = /etc/dovecot/dovecot-sql.conf
 }
[...]
 userdb sql {
  args = /etc/dovecot/dovecot-sql.conf
 }
[...aşağıdaki ayarları açarak postfix'i SASL için dovecot'a
bağlıyoruz, eğer Cyrus konusunda ısrarlıysanız bu değişikliği
yapmayın...]
 socket listen {
  client {
   path = /var/spool/postfix/private/auth-client
   mode = 0660
   user = postfix
   group = postfix
  }
 }

Burada yaptığımız ayarlarla Dovecot’u aynı zamanda Postfix’in SASL ihtiyacı için de kullanacağız, böylece Cyrus SASL konfigürasyon işkencesinden de kurtulmuş oluyoruz. En önemli nokta ise -bence- Dovecot’u standart gizli klasörlerle değil değil, FS layout denilen gerçek klasörler isimleriyle çalıştırmak olacak. Böylece .INBOX.Giden gibi abuk klasör isimlerinden ziyade, mail klasörünün altında Giden diye bir klasör bulunacak. Hali hazırda kurulu bir sistemde bu değişikliği yapmak zor olabilir, ancak kesinlikle rahat edeceğinizi düşünüyorum.

Gelelim dovecot-sql.conf ayarlarımıza. Burada dosyanın tamamını aşağıdaki içerikle değiştirerek hızlı bir ayar yapabiliriz;

driver = mysql
connect = host=127.0.0.1 dbname=mailAdmin user=root password=zagorTenay
password_query = SELECT Username AS user, Password AS password FROM User WHERE Username = '%u'
user_query = SELECT '/home/vmail/%d/%n' as home, 'maildir:/home/vmail/%d/%n:LAYOUT=fs:INBOX=/home/vmail/%d/%n' as mail, 5000 as uid, 5000 as gid FROM User WHERE Username = '%u'

MySQL sorgusunda statik ayarlar da yapıyoruz, bunlardan bir tanesi grup ID’si olarak 5000, user ID’si olarak ta 5000 gelmesi, böylece dovecot’un mail klasörlerine yazarken saçmalamaması için çok önemli. Asıl mail klasörümüzü de burada belirtiyoruz; maildir:/home/vmail/%d/%n. %d domain, %n ise domain’den önceki kullanıcı adı oluyor. Yalnız dovecot’a email programımızı kullanarak bağlanmak istediğimizde kullanıcı adımızı mutlaka tam email adresimiz olarak girmeliyiz, yoksa çalışmayacaktır. Diğer bir ayar ise INBOX klasörü ile ilgili, POP3 kullanıcılarını çok enterese etmese de IMAP kullanıcıları için belki değişiklik yapmak gerekebilir, böylece daha okunabilir klasörlere sahip olabilirsiniz. Benim ayarlarımda INBOX= şu şekilde; /home/vmail/%d/%n/INBOX , yalnız aynı şekilde postfix’in mysql-virtual_mailboxes.cf içerisindeki sorgudaki CONCAT kısmının sonundaki ‘/’ içeriğini de ‘/INBOX/’ olarak değiştirmeyi de unutmayın.

Sayfa : « 1 2 3 4 5 6 7 »

Bookmark and Share
Bu yazı Internet, Linux, Yeni Başlayanlar İçin kategorisine gönderilmiş ve , , , , , , , , , , ile etiketlenmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.

Postfix, Dovecot ve MySQL, mükemmel karışım. için 4 cevap

  1. Ayhan der ki:

    Merhaba Öncelikle elinize sağlık çok güzel bi çalışma fakat bütün işlemleri takip ettiğimde outlook da gerekli tanımlamaları yaptım pop3 ve smtp serverı buluyor fakat authentication yapamıyor ve ne mail alıp nede gönderiyor acaba bu konuda bana yardımcı olabilirmisiniz ve webmail konusundada bi yazınız olursa sevinirim.

    Kolay gelsin

  2. Acemi der ki:

    Merhaba, öncelikle paylaşımınız için teşekkürler, gerçekten çok detaylı anlatmışsınız.
    Ben ayarları yaparken mysql erişimimi kaybettim, bu sebepten dolayı mysql i kaldırıp yeniden kurmaya çalıştım ama bir türlü olmadı :( Linuxta yeniyim, konuyla ilgili yardımcı olabilirseniz çok sevinirim.

    ps ax | grep -i mysql dediğimde
    5095 pts/1 S+ 0:00 grep –color=auto -i mysql diyor

    giriş yapmaya çalışınca

    ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)
    hatasını veriyor

    telnet localhost 3306 dediğimde
    Trying ::1…
    Trying 127.0.0.1…
    telnet: Unable to connect to remote host: Connection refused diyor

    /etc/mysql$ cd /etc/init.d/mysql start dediğimde de
    bash: cd: /etc/init.d/mysql: No such file or directory hatasını veriyor….

  3. Omer der ki:

    sadece bu bilgilerle bir arıza tespiti yapmak mümkün değil, ancak anladığım kadarı ile mysql paketini yok etmişsiniz. kullandığınız dağıtıma bağlı olarak yeniden kurarsanız tahmin ediyorum bir sıkıntı kalmayacaktır.

  4. Acemi der ki:

    Mysql sorunumu halletim ama bu sefer de main.cf ile ilgili sıkıntım var. main.cf ye gerekli eklemeleri yaptığımda 25. port kilitleniyor. ayarları geri kaldırınca düzeliyor. Şimdi onunla uğraşıyorum. Ama benim asıl anlamadığım ben nasıl dışarıya(diğer kullanıcılara ya da başka domainlere) mail yollayacağım, ya da dışarıdan mail alacağım. Bunun için ayrı bir program kullanmam ya da sayfa tasarımı falan mı yapmam lazım.Bu konuyla ilgili de açıklama yapabilir misiniz :)

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*

*


Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>