.qmail(ドットqmail)ファイルをユーザーのホームディレクトリ内に作成し、そのユーザー固有のメール配送制御を設定する事が出来ます。
※目次をクリックすると目次の下部にコンテンツが表示されます。
- 1.他のユーザーに転送
- 2.mbox、maildir形式でメールを受け取る
- 3.プログラム実行
- 4.exitコードとqmailの処理内容
- 5.condredirectを使って、条件に応じてメール配送する例
- 6.アドレスが使用停止になっている事を知らせる場合
他のユーザーに転送
下記のように.qmailファイル内に”&”をつけて、又は直接メールアドレス、アカウント名を指定して転送先を指定します。
例)
&test@example.com
testuser
例)
&test@example.com
testuser
mbox、maildir形式でメールを受け取る
プログラム実行
“|”を記述し、その後にプログラムを記述してプログラムを実行できます。
例)
|echo “このアドレスは現在使用されていません” && exit 100
例)
|echo “このアドレスは現在使用されていません” && exit 100
exitコードとqmailの処理内容
.qmailに複数の配送処理が記述されている場合を想定します。
0 :処理は成功。後続も処理。
99 :処理は成功。後続はスキップ。
111:”soft”(temporary)エラー。再送試行
100:”hard”(permanent)エラー。即バウンスメール
0 :処理は成功。後続も処理。
99 :処理は成功。後続はスキップ。
111:”soft”(temporary)エラー。再送試行
100:”hard”(permanent)エラー。即バウンスメール
condredirectを使って、条件に応じてメール配送する例
●構文
condredirect 転送先メールアドレス コマンド
・コマンドが成功
引数に指定したメールアドレスに転送
condredirectのexitコード 99
.qmailの次の行以降の処理は実行しない。
・コマンドのexitコードが111の場合
condredirectのexitコード 111(ソフトエラー)
再送を試みる
・コマンドのexitコードがそれ以外またはコマンドを指定しない場合
メールは転送しない。
bouncesayingのexitコード 0
.qmailの次の処理を実行する。
●設定例
メールメッセージに”system down”が含まれていたら、infra@example.com宛てにメールを転送します。
それ以外のメールは./MailBoxファイルに受信させる場合
condredirect 転送先メールアドレス コマンド
・コマンドが成功
引数に指定したメールアドレスに転送
condredirectのexitコード 99
.qmailの次の行以降の処理は実行しない。
・コマンドのexitコードが111の場合
condredirectのexitコード 111(ソフトエラー)
再送を試みる
・コマンドのexitコードがそれ以外またはコマンドを指定しない場合
メールは転送しない。
bouncesayingのexitコード 0
.qmailの次の処理を実行する。
●設定例
メールメッセージに”system down”が含まれていたら、infra@example.com宛てにメールを転送します。
それ以外のメールは./MailBoxファイルに受信させる場合
$ vi .qmail |condredirect infra@example.com grep -i "system down" ./MailBox
アドレスが使用停止になっている事を知らせる場合
$ vi .qmail |echo "このアドレスは現在使用されていません" && exit 100
上記設定を行ったユーザー宛てにメールを送信すると、瞬時に”このアドレスは現在使用されていません”と記載されたバウンスメールが届きます。