LDA
Back
Dovecot LDA
# qmailctl stop # cd /home/vpopmail/domains/domain.tld # cp -p .qmail-default .qmail-default.bak # cat > .qmail-default << __EOF__ | /usr/bin/dspam --user \$EXT@\$HOST --deliver=stdout --feature=no,wh \ | /usr/bin/rspamc --mime \ | /var/qmail/bin/preline -f /usr/libexec/dovecot/deliver -d \$EXT@\$USER __EOF__ # setfacl -m u:vpopmail:rw,g:vchkpw:rw /var/run/dovecot/stats-writer # mkdir /var/log/dovecot-lda && chmod 770 /var/log/dovecot-lda && chown vpopmail:vchkpw /var/log/dovecot-lda # touch /etc/logrotate.d/dovecot-lda # cp /etc/dovecot/dovecot.conf /etc/dovecot/dovecot.conf.bak.orig # cat >> /etc/dovecot/dovecot.conf << __EOF__ protocol lda { deliver_log_format = From:<%f>-<%e> :: Subject:<%s> :: Status:<%$> :: MsgID:<%m> :: Size<%p> :: vSize<%w> log_path = /var/log/dovecot-lda/dovecot-lda-errors.log info_log_path = /var/log/dovecot-lda/dovecot-lda.log } service stats { unix_listener stats-writer { group = vchkpw } } __EOF__ # systemctl restart dovecot
Dovecot Sieve
# cp -p /etc/dovecot/dovecot.conf /etc/dovecot/dovecot.conf.lda.orig # yum -y install dovecot-pigeonhole # cat >> /etc/dovecot/dovecot.conf << __EOF__ plugin { sieve = ~/.dovecot.sieve sieve_global_path = /var/lib/dovecot/sieve/default.sieve sieve_dir = ~/sieve sieve_global_dir = /var/lib/dovecot/sieve/ } protocol lda { mail_plugins = $mail_plugins sieve }
Global permissions
# setfacl -m u:vpopmail:rwx,g:vchkpw:rx /var/lib/dovecot/sieve # setfacl -d -m u:vpopmail:rwx,g:vchkpw:rx /var/lib/dovecot/sieve # setfacl -m u:vpopmail:rwx,g:vchkpw:rx /var/lib/dovecot # setfacl -d -m u:vpopmail:rwx,g:vchkpw:rx /var/lib/dovecot
User permissions
# cd /home/vpopmail/domains/domain.tld/user # mkdir .sieve # touch .sieve/user.sieve # ln -s .sieve/user.sieve .dovecot.sieve # chown -R vpopmail:vchkpw .sieve # chown vpopmail:vchkpw .dovecot.sieve # chmod 700 .sieve
service managesieve-login { inet_listener sieve { port = 4190 } }