qmail設定 .qmailファイルを使ってユーザー単位に配送制御

.qmail(ドットqmail)ファイルをユーザーのホームディレクトリ内に作成し、そのユーザー固有のメール配送制御を設定する事が出来ます。

1)他のユーザーに転送


 
下記のように.qmailファイル内に”&”をつけて、又は直接メールアドレス、アカウント名を指定して転送先を指定します。
 
例)
&test@example.com
testuser
 

2)mbox、maildir形式でメールを受け取る


 
qmail設定 ユーザー単位に配送タイプ(mbox、maildir)を指定参照
 

3)プログラム実行


 
“|”を記述し、その後にプログラムを記述してプログラムを実行できます。
 
例)
|echo “このアドレスは現在使用されていません” && exit 100
 

4)exitコードとqmailの処理内容


 
.qmailに複数の配送処理が記述されている場合を想定します。
 
0 :処理は成功。後続も処理。
99 :処理は成功。後続はスキップ。
111:”soft”(temporary)エラー。再送試行
100:”hard”(permanent)エラー。即バウンスメール
 

5)condredirectを使って、条件に応じてメール配送する例


 
●書式
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

 

6)アドレスが使用停止になっている事を知らせる場合


 
$ vi .qmail
|echo “このアドレスは現在使用されていません” && exit 100

 
上記設定を行ったユーザー宛てにメールを送信すると、瞬時に”このアドレスは現在使用されていません”と記載されたバウンスメールが届きます。

関連記事の目次

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です