Ubuntu10.04LTSにdovecot sieveを導入

メールサーバーの最大の弱点はSPAMメールが届くということ。 それをオフィシャルな対策によって、ほぼ完璧に取り省く方法。

メールサーバーの設定は以下を参考に設定する。
CAの認証は、無料で認証してくれる所があるのでそれを活用する。

https://help.ubuntu.com/10.04/serverguide/C/email-services.html
上の中の以下を...
  1. postfixの設定
  2. dovecotの設定
  3. mail-filteringの設定
をおこなうと。 DKIMフィルタが導入でき、Spamメール判断、ウィルス検知もできるようになる。
しかし、このままではスマフォー(e.g. iPhone)などでは***SPAM***のメールを受信してしまうので、それをsieveによって、自動にJunkフォルダへ転送するシステムを構築するのがこのドキュメントのねらい。


10.04にはdovecot-commonにseiveが入っているのでそれを使う。
protcolはスマーフォーやタブレットの広まりによって、imap,imapsを使う。


/etc/dovecot/dovecot.confを以下に修正
mail_location = mbox:~/mail

protocol lda {
  ...
  mail_plugins =  sieve
  ...
}

plugin {
  ...
  sieve=~/.dovecot.sieve
  ...
}

/etc/postfix/main.cf


mailbox_command = /usr/lib/dovecot/deliver -a "$RECIPIENT"
に変更、もしくは追加。

sudo service dovecot restart
各ユーザー
/home/ユーザー/mail
にメールボックスが作られる

.dovecot.seiveは。。。
# send to Junk folder if spam
require ["fileinto","regex","envelope","vacation"];
# Spamのとき
if header :contains "X-Spam-Flag" "YES" {
 fileinto "Junk";
 stop;
}
# 転送, .forwardと同じ機能
if address :regex "From" ["test@example.*",
                          "test@gmail\.com.*"] {
 redirect "foo@hoo.com";
}


以上で終了。
正常に動作しているならば、メールを受信したときに。
.dovecot.svbin
ができており、動作確認がとれる。


PS.1
procmailは必要なくなる。 一応、.procmailrcをseiveスクリプトへコンバートするツールがある。
注意として.forwardなどでprocmailへの転送などがあると、邪魔されてsieveが動作しない。 消しておく。

PS2
メーラーでimapを使って一度受信しなければメールが読めないことがあった。

PS3
次のLTS(Ubuntu 12.04LTS)ではdovecot2になるので、dovecot.confに変更が必要。
コンバーターツールがある。

コメント

このブログの人気の投稿

日本でコンピュータサイエンスを学ぶ難しさ

UML tool Dia