Tutorial: Sieve, Managesieve filters with Dovecot and Roundcube.

Questions regarding the Mail Server
Dovecot, Exim, RoundCube
zdi
Posts: 6
Joined: Fri May 06, 2016 5:34 pm

Tutorial: Sieve, Managesieve filters with Dovecot and Roundcube.

Postby zdi » Fri May 06, 2016 5:40 pm

I want to thank Jeffery Tay for his help.

Without further ado:


#Install Dovecot Manage Sieve

yum install dovecot-pigeonhole

#edit 20-managesieve.conf
nano /etc/dovecot/conf.d/20-managesieve.conf

#Uncomment protocols
protocols = $protocols sieve

#Edit 10-master.conf
#add in section listed in blue

nano /etc/dovecot/conf.d/10-master.conf

service auth {
unix_listener auth-client {
group = mail
mode = 0660
user = dovecot
}
unix_listener auth-master {
group = mail
mode = 0660
user = dovecot
}

user = dovecot
}

#Append this to the end of 10-master.conf
service managesieve-login {
inet_listener sieve {
port = 4190
}
}
service managesieve {
}
protocol sieve {
managesieve_max_line_length = 65536
managesieve_implementation_string = dovecot
log_path = /var/log/dovecot-sieve-errors.log
info_log_path = /var/log/dovecot-sieve.log
}
plugin {
sieve = ~/.dovecot.sieve
sieve_global_path = /etc/dovecot/sieve/default.sieve
sieve_dir = ~/sieve
sieve_global_dir = /etc/dovecot/sieve/global/
}
lda_mailbox_autocreate = yes
lda_mailbox_autosubscribe = yes
protocol lda {
mail_plugins = $mail_plugins autocreate sieve quota
postmaster_address = postmaster@testdomain.com
hostname = srv.testdomain.com
auth_socket_path = /var/run/dovecot/auth-master
log_path = /var/log/dovecot-lda-errors.log
info_log_path = /var/log/dovecot-lda.log
}
protocol lmtp {
mail_plugins = $mail_plugins autocreate sieve quota
log_path = /var/log/dovecot-lmtp-errors.log
info_log_path = /var/log/dovecot-lmtp.log
}

#touch and set the permissions on the log files, else you will get permission errors
touch /var/log/dovecot-lda-errors.log
chmod 660 /var/log/dovecot-lda-errors.log
chown dovecot.mail /var/log/dovecot-lda-errors.log

touch /var/log/dovecot-lda.log
chmod 660 /var/log/dovecot-lda.log
chown dovecot.mail /var/log/dovecot-lda.log

touch /var/log/dovecot-lmtp-errors.log
chmod 660 /var/log/dovecot-lmtp-errors.log
chown dovecot.mail /var/log/dovecot-lmtp-errors.log

touch /var/log/dovecot-lmtp.log
chmod 660 /var/log/dovecot-lmtp.log
chown dovecot.mail /var/log/dovecot-lmtp.log

#Create default sieve rule

mkdir /etc/dovecot/sieve
nano /etc/dovecot/sieve/default.sieve
require ["fileinto"];
# rule:[SPAM]
if header :contains "X-Spam-Flag" "YES" {
fileinto "Spam";
}

touch /etc/dovecot/sieve/default.sieve
chmod +w /etc/dovecot/sieve/default.sieve
chown dovecot.mail /etc/dovecot/sieve/default.sieve

#Restart dovecot, if service starts, means configuration is successful
service dovecot restart

#Configure roundcube

nano /etc/roundcubemail/config.inc.php
$rcmail_config[‘plugins’] = array(‘managesieve’);

nano /usr/share/roundcubemail/plugins/managesieve/config.inc.php.dist

// default contents of filters script (eg. default spam filter)
$config[‘managesieve_default’] = ‘/etc/dovecot/sieve/default.sieve’;

#Configure Exim, modify part in purple
nano /etc/exim/exim.conf
localuser:
driver = accept
#transport = local_delivery
transport = dovecot

condition = ${lookup{$local_part}lsearch{/etc/exim/domains/$domain/passwd}{true}{false}}



######################################################################
# TRANSPORTS CONFIGURATION #
######################################################################
begin transports

dovecot:
driver = pipe
command = /usr/libexec/dovecot/dovecot-lda -e -d $local_part@$domain -f $sender_address -a $original_local_part@$original_domain
return_path_add
log_output = true
delivery_date_add
envelope_to_add
user = ${extract{2}{:}{${lookup{$local_part}lsearch{/etc/exim/domains/$domain/passwd}}}}
group = mail
return_output


#Restart exim, if service starts, means configuration is successful
service exim restart

gogoi
Posts: 7
Joined: Tue Dec 01, 2015 3:20 am

Re: Tutorial: Sieve, Managesieve filters with Dovecot and Roundcube.

Postby gogoi » Thu Dec 22, 2016 7:21 am

Hello!

This solution works fine with real linux accounts.

This send a single autoresponser message for all virtual email accounts in a domain under a linux vestacp account

BUT how can this work with virtual email accounts under a linux account?


Return to “Mail Server”



Who is online

Users browsing this forum: No registered users and 2 guests