空メールを指定のメールアドレスに送信すると自動応答メールが返ってくる。
それを実現する方法1つはprocmailを利用することだ。
空メール送信先は
kara@xxx.xx
とする。
今回はMTAにpostfixを使用しているので、main.cfの
mailbox_command = /usr/bin/procmail -a "$EXTENSION"
を設定しておく。(デフォルトはコメントになっている)
Linuxユーザーkaraを作成し、kara専用に/home/karaに".procmailrc"のprocmai専用の設定ファイルを作成する。作成後パーミッションは"600"にしておく。
.procmailrcには下記のよう記述すると空メール自動応答処理が可能となる。
今回は$ELISTであるenablelistに許可するドメインを記述しておき、指定ドメイン以外からのメールを闇に葬るのだ。
例えば携帯専用のサイトなどではPCからのメールを無視したいので、docomo.ne.jpやezweb.ne.jpと許可するドメインを記述する。
自動応答メールの内容を記述した"info.txt"も用意しておく。
/home/kara/.procmailrc
ELIST=$HOME/enablelist
PATH=/bin:/usr/bin:/usr/sbin
MAILDIR=/var/spool/mail/$USER
DEFAULT=$MAILDIR
LOGFILE=$HOME/procmail.log
:0 h
* ? !(formail -x From: -x Reply-To: -x Sender: -x From | fgrep -iqf $ELIST)
/dev/null
:0 c
* ^Subject:
* !^X-Loop: kara@xxx.xx
| (/usr/bin/formail -r -A"Precedence: info" \
-A"From:karaamail " ;\
cat /home/kara/info.txt) |\
/usr/sbin/sendmail -t
/home/kara/enablelist
docomo.ne.jp
ezweb.ne.jp
vodafone.ne.jp
しかしこのprocmailの設定ファイルって非常に美しくないソースだ。
ランキング投票お願いします♪
procmailを利用しての空メール自動応答処理2
Manpage of PROCMAILRC