こちらの記事で使ったサーバに引き続き、sieveを入れます。
yum -y install dovecot-pigeonhole dovecot-managesieve
/etc/dovecot/conf.d/に20-managesieve.confと90-sieve.confが無い場合、
rpm -ql dovecot-managesieve|grep conf
rpm -ql dovecot-pigeonhole|grep conf
で表示されたファイルを/etc/dovecot/conf.d/へコピーして下さい。
後はひたすら編集。
/etc/dovecot/conf.d/10-auth.conf
auth_username_format = %n
/etc/dovecot/conf.d/10-master.conf
service lmtp {
# dovecotのlmtp
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0600
user = postfix
}
}
/etc/dovecot/conf.d/20-managesieve.conf
protocols = $protocols sieve
service managesieve-login{
inet_listener sieve {
port = 4190
}
}
service managesieve{
}
/etc/dovecot/conf.d/20-lmtp.conf
protocols = $protocols lmtp
protocol lmtp {
postmaster_address = roundcube@localhost.localdomain
mail_plugins = $mail_plugins sieve
}
postmaster_addressのユーザーは、必要であればuseraddで作成します。
/etc/dovecot/conf.d/90-sieve.confはそのままでOKです。
/etc/postfix/main.cf
mailbox_transport = lmtp:unix:private/dovecot-lmtp
ここまで終わったら、一度リロードします。
service postfix reload
service dovecot reload
$config['plugins'] = array(
... // 元々記載してあるなら、一行追加するだけ
'managesieve',
);
plugins/managesieve/config.inc.php.distをconfig.inc.phpへコピーして編集
plugins/managesieve/config.inc.php
$config['managesieve_port'] = 4190;
$config['managesieve_host'] = 'localhost';
RoundCubeログイン後、設定にフィルタが追加されていますので、正常に起動していれば設定画面が出ます。
フィルター下の+アイコンで追加出来るので、フィルター名をtestにして、
タイトルにtestを含むメール受信時にtestフォルダへ移動するようにしてみます。
件名 含む test
次にメッセージを移動 test
で保存して、件名をtestで自分宛に送信してみて下さい。
届かない時はいつものように/var/log/maillogでlmtpでログを検索しつつググるだけ。