メンテナンス・トラブルシュート - メールサーバ - procmail - 基本設定
- 1. 概要
- 2. 基本的な転送設定
- 3. 主な環境変数
1. 概要
「procmail」の具体的な設置方法については「FreeBSD」の各 RELEASE ごとのメールサーバの項をお読みください。
「FreeBSD 12.0 RELEASE - メールサーバ qmail」
「FreeBSD 11.3 RELEASE - メールサーバ qmail」
「FreeBSD 12.1 RELEASE - メールサーバ qmail」
上記の設定でまずは ~/.procmailrc を作成して下記のように記述しているはずです。
PATH=/usr/bin:/usr/local/bin
MAILDIR=$HOME/Maildir/
DEFAULT=$MAILDIR
ここでは、~/.procmailrc に書いていく転送設定について記述します。
ちなみに procmail では転送設定に関する記述を「レシピ」と言います。
この中で「レシピ」という言葉を使っているときはこれを指します。
2. 基本的な転送設定
foo@hogehoge.jp 来たメールを bar@fugafua.jp へ転送するには、以下のように記述します。
# foo@hogehoge.jp から来たら bar@fugafua.jp に転送するのだ
0:
* ^From:.*foo\@hogehoge\.jp.*
! bar@fugafua.jp
おなじみ、行頭の「#」はコメント行になります。
コメントは、コメント行のみで、レシピを記述している行の途中に「#」を記述する場合、その後ろがコメントになるのではなくと「#」何らかの意味をあらわすものになるので注意が必要です。
0:
「0:」はこの行からレシピの記述がはじまるという意味です。
「0:」から次の「0:」かファイルの終端がくるまでが1つのレシピとなります。
* ^From:.*foo\@hogehoge\.jp.*
の先頭の「*」はこの行が条件文であることを意味します。
「^From」は行頭が「From」という意味でメールヘッダについてご存知ならすぐわかるかと思います。
「^」を含めここの文は、正規表現を使用しています。procmail> の正規表現については「別稿」で簡単に説明しています。
! bar@fugafua.jp
の先頭の「!」はこの行で示すメールアドレスにメールを転送することを意味します。メールアドレスはスペースで区切って、複数アドレスを列挙可能です。
こちらは正規表現でなく、生のメールアドレスで記述します。
この行の先頭に「!」をつけず、「/dev/null」とした場合、メールはどこにも転送も保存もされず、消えてなくなります。
3. 主な環境変数
わたしが使用している、主な環境変数をあげておきます。
環境変数 | 意 味 |
DEFAULT | どのレシピにも適合しなかった場合に格納する先を記述します。 通常は DEFAULT=$MAILDIR と記述します。 |
INCLUDERC | 他のファイルの記述をインクルードすることができます。 共通的な設定を使用するときに便利です。 INCLUDERC=ファイル名 と記述します。 |
LOGFILE | 処理内容のログをファイルに出力するときに LOGFILE=ファイル名 の型式で記述します。 |
MAILDIR | メールディレクトリの指定です。 qmail の場合、通常は MAILDIR=$HOME/Maildir/ と記述することになります。 |
VERBOSE | ログの内容を詳細に出力する際 VERBOSE=on と記述します。デフォルトは off です。 |
|
|