●fetchmailの設定

 fetchmailはディストリビューションによってはすでに組み込まれているので

$ which fetchmail ←コマンド入力
/usr/bin/fetchmail

と表示されるならインストールされていることになる。ここでは仮に2個のメールアカウントを,それぞれのプロバイダやフリーメールのPOPサーバから,メールを自動受信させる設定を行ってみよう。設定は各ユーザーのホームディレクトリにある「.fetchmailrc」で行う。

$ cd ~
$ vi .fetchmailrc

○.fetchmailrcの記述例

 以下に.fecthmailrcの記述例を掲載する。ここで利用されるコマンドの意味はリスト1のようになる。

set daemon 300
set nobouncemail

poll pop.example.or.jp ←1つめのアカウント
proto pop3
user hoge1
password bduT76RtsV
keep
no mimedecode
mda "/usr/bin/procmail"

poll pop.itmedia.com ←2つめのアカウント
proto pop3
user taro2
password uIyt789Nhy
keep
no mimedecode
mda "/usr/bin/procmail"

リスト1■.fecthmailrcの記述方法

set daemon 300:何分間おきにメールをチェックするかを設定(300であれば5分間おきにということになる)

set nobouncemail:エラーメールを送信者に転送しないための設定

poll pop.example.or.jp :poll [popサーバ名]

proto pop3:proto [メールプロトコル]

user taro2:use [ユーザ名]

password uIyt789Nhy :password [パスワード]

keep:メールを削除するかしないかの設定(メールを残さない場合はflush)

no mimedecode:メールサブジェクトが文字化けしないため(サブジェクトをデコードしないよう)に記述

mda "/usr/bin/procmail":受信したメールをMDAであるprocmailに渡すため設定

 複数のアカウントを利用するときに設定を簡素化させたい場合は,下記のように記述することもできる。

set daemon 300
set nobouncemail

defaults ←デフォルトの設定を記述
protocol pop3
keep
no mimedecode
mda "/usr/bin/procmail"

poll pop.example.or.jp ←アカウント情報。以下必要なだけ記述
user hoge1
password bduT76RtsV

poll pop.itmedia.com
user taro2
password uIyt789Nhy

 設定ファイルを保存したら,パーミッションを変更する。パスワードが書かれているファイルだけにファイルの扱いには注意したい。

$ chmod 600 .fetchmailrc

 最後に

$ fetchmail &

として,fetchmailを起動する。

○Procmailの設定

 次に,受信したメールを振り分けるためのprocmailを設定する。procmailもfetchmail同様,ディストリビューションによってはすでに組み込まれているので

$ which procmail
/usr/bin/procmail

としてインストールされているかを確認しておこう。

 procmailの設定もfetchmailと同じだ。各ユーザーのホームディレクトリに「.procmailrc」を作成して記述する。

$ cd ~
$ vi .procmailrc

○.procmailrcの記述例

 ここで.procmailrcの記述例も掲載しておこう。それぞれのコマンドの意味はリスト2のようになる。

PATH=/bin:/usr/bin:/usr/local/bin
MAILDIR=$HOME/Maildir
DEFAULT=$MAILDIR/.default/
LOGFILE=$MAILDIR/procmaillog
LOCKFILE=$HOME/.lockmail

:0
* ^To:.*hoge1@example.co.jp
.hoge-example/

:0
* ^To:.*taro2@itmedia.co.jp
.taro-itmedia/

リスト2■.procmailrcの記述方法

PATH=/bin:/usr/bin:/usr/local/bin :環境変数の設定

MAILDIR=$HOME/Maildir :メールディレクトリへのパス

DEFAULT=$MAILDIR/.default/ :振り分けに当てはまらなかったメールの保存先

LOGFILE=$MAILDIR/procmail.log :ログの保存場所指定

LOCKFILE=$HOME/.lockmail :ロックファイルのパスを指定

 なお,

:0
* ^To:.*hoge1@example.co.jp
.hoge-example/

の部分だが,振り分け設定は「:0」と記述し,「* ^To:.*hoge1@example.co.jp」のように記述する。記述例を参考に,ユーザーで振り分けたい条件を記述すればよい。

 たとえば,上記であれば,受信したメールの送信先が「hoge1@example.co.jp」の場合,メールフォルダ「hoge-example」に振り分ける。もし,Toが無い場合(BCCなどで送られたメールなど)は設定ファイル.procmailrcの冒頭で指定している「DEFAULT=$MAILDIR/.default/」で指定した「default」フォルダに振り分けられる。

 Fromで指定したければ

:0
* ^From:.*hoge1@example.co.jp
.hoge-example/

といったように条件を記述すればよい。たとえばメーリングリストなどで受信したメールは,そのメーリングリスト用のフォルダを作成し振り分けておくと整理しやすいだろう。

 もちろん,fetchmailおよびprocmailの設定ファイルの記述例はほんの一例だ。ほかのオプション設定などは必要に応じて加えてほしい。

PREV 2/6 NEXT