Sieveによるサーバ側でのメール振り分け

Sieveを利用して、サーバ側でメールを振り分けることができるようにする。

事前準備

リポジトリの追加を参考にして、EPELリポジトリを有効にしておくこと。
メールサーバの構築を参考にして、Postfix、Dovecotを導入しておくこと。

インストール

dovecot-pigeonholeをインストールする。

dnf install dovecot-pigeonhole

設定

3つの設定ファイルを編集する。

vi /etc/postfix/main.cf

#mailbox_command = /some/where/procmail
#mailbox_command = /some/where/procmail -a "$EXTENSION"
mailbox_command = /usr/libexec/dovecot/dovecot-lda -f "$SENDER" -a "$RECIPIENT"

vi /etc/dovecot/conf.d/15-lda.conf

protocol lda {
  # Space separated list of plugins to load (default is global mail_plugins).
  #mail_plugins = $mail_plugins
  mail_plugins = $mail_plugins sieve
}

vi /etc/dovecot/conf.d/20-managesieve.conf

# Uncomment to enable managesieve protocol:
#protocols = $protocols sieve
protocols = $protocols sieve

ルール作成

振り分けルールのsieveスクリプトを作成する。

mkdir /home/hogehoge/sieve
vi /home/hogehoge/sieve/master.sieve

例として、foo@hogehoge.comから来たメールを”Foo”というフォルダに振り分けるルール。

require ["fileinto"]

if address :is "from" "foo@hogehoge.com" {
  fileinto "Foo"
}

作成したsieveスクリプトへのシンボリックリンクをホームディレクトリの.dovecot.sieveに張る。

ln -s /home/hogehoge/sieve/master.sieve /home/hogehoge/.dovecot.sieve

Postfix、Dovecotの再起動

最後に、Postfix、Dovecotを再起動する

systemctl restart postfix
systemctl restart dovecot
%d人のブロガーが「いいね」をつけました。