Cuma, Mayıs 23, 2014

Convert mail delivery from Procmail to Dovecot 2.0.9 on Redhat EL 6

Maybe you installed this like MTA system


So i installed this MTA system but our delivery method remained procmail. Last two days i try to change delivery system promail to dovecot, after thart i installed dovecot-pigeonhole sieve manager, so users can create their own filters or etc. Before that there is no need just like these thing , everybody is happy.

HowTo :

first stop everything,

service stop postfix
service stop dovecot

ok these are steps of procmail to dovecot

1. in

change mailbox_command to

mailbox_command = /usr/libexec/dovecot/dovecot-lda -f "$SENDER" -a "$RECIPIENT"

change virtual_transport to 
virtual_transport = dovecot
and add
dovecot_destination_recipient_limit = 1

2. in

dovecot   unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/dovecot-lda -f ${sender} -d ${recipient}

in this example our user is vmail you must change with your own.

3. in dovecot/conf.d/15-lda.conf  add log file values
protocol lda
  log_path = /var/log/dovecot-lda-errors.log
  info_log_path = /var/log/dovecot-lda.log
  debug_log_path = /var/log/dovecot-lda-errors.log
maybe all these log values are not neccessary but it works :) i didn't touch them.

4. in dovecot/conf.d/10-master.conf uncomment mod and user, remember vmail is our user in here

service auth {
  # auth_socket_path points to this userdb socket by default. It's typically
  # used by dovecot-lda, doveadm, possibly imap process, etc. Its default
  # permissions make it readable only by root, but you may need to relax these
  # permissions. Users that have access to this socket are able to get a list
  # of all usernames and get results of everyone's userdb lookups.
  unix_listener auth-userdb {
    mode = 0600
    user = vmail 
    #group = 

finally start everything 

service start postfix
service start dovecot

that's it.

i hope helps someone else.