https://pigeonhole.dovecot.org/download.html
こちらから安定版リリースを取得。 いつの間にか、pigeonholeとmanagesieveが一つのパッケージにまとまっていました。
make
デフォルトで/usr/localに入るようで、configureでディレクトリ指定のオプションは不要でした。
tar xzf dovecot-2.3-pigeonhole-0.5.20.tar.gz
cd dovecot-2.3-pigeonhole-0.5.20/
./configure
make
make install
Dovecot 設定
/usr/local/share/doc/dovecot/example-config/conf.d/ にsieveのconfが出来るので、sieve関連のファイルを/usr/local/etc/dovecot/conf.d/へコピーします。
cp /usr/local/share/doc/dovecot/example-config/conf.d/*sieve*.conf /usr/local/etc/dovecot/conf.d/
以下のコメント化を解きます。
protocols = $protocols sieve
service managesieve-login{
inet_listener sieve {
port = 4190
}
}
service managesieve{
}
90-sieve.confはデフォルトのままで動作するので、編集不要です。
LMTP配信
以下、sieveがLMTPで動作するように設定します。
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0600
user = postfix
}
}
今回はRoundCubeへログインするアカウントが、メールアドレス形式(yamada@virtual.localdomain 等)なので不要ですが、ユーザ名のみ(yamada 等)の場合はauth_username_format = %nを設定します。 ※下手に設定するとログイン出来なくなります。
postmasterは実在するユーザの誰かを指定します。
protocol lmtp {
postmaster_address = yamada@virtual.localdomain
mail_plugins = $mail_plugins sieve
}
編集が終わったら、リロードします。
doveadm reload
Postfix
virtualユーザを対象にします。
virtual_transport = lmtp:unix:private/dovecot-lmtp
RoundCube
pluginsにmanagesieveを追加します。
$config['plugins'] = ['acl', 'managesieve'];
RoundCubeも同じサーバで動作しているので、plugins側の設定ファイルはなくても動作しますが、一応設定ファイルをコピーしておきます。
cp -p plugins/managesieve/config.inc.php.dist plugins/managesieve/config.inc.php
サーバが異なる場合は、managesieve_hostを変更して下さい。
RoundCubeにログインして設定を開くと、フィルターが追加されています。
動作するか確認するため作成を押して、件名 Subjectに「test」が含まれていたらtestフォルダへ移動させてみます。
これで自分宛に件名を「test」を含んだメールを送って、テストフォルダへ到達していれば完了です。
Tags: CentOS , Dovecot , pigeonhole , sieve
This entry was posted on 水曜日, 4月 5th, 2023 at 17:28 and is filed under Dovecot , Roundcube . You can follow any responses to this entry through the RSS 2.0 feed.
You can skip to the end and leave a response. Pinging is currently not allowed.