1. 概要
smtpfeed は sendmail から呼び出される配信エージェントで、
SMTP によるメールの配信を高速化します。
MailingListなんかで大量の配信を行う場合などの有用です。
2. 準備
・使うファイル達:
・sendmail.8.9.1以降、 3.1W.patch以降 を作る。
(sendmailの節、CFの節を参照)
3. .コンパイル
(sendmailのcompile、設定に付いては、sendmailの節を参照。 )
% tar xvz smtpfeed-current.tar.gz
% cd smtpfeed-$version
% ./configure --with-bind8=/usr/local/bind (環境にあわせて)
% make
% smtpfeed -dA -lstderr < TEST.in
# make install
4. 設定、起動
(CFの節を参照してsendmail.defを作成)
LOCALHACKMAILER='# smtp feed mailer\ Msmtpf, P=/usr/libexec/smtpfeed, F=mDFMuXz!-, S=11/31, R=21, \ T=DNS/RFC822/SMTP, E=\n, L=990, *=5,\ M=500000, &=1000, A=smtpfeed' DIRECT_DELIVER_MAILER=smtpf DIRECT_DELIVER_DOMAINS=all DSPTLOCALHACK='R.$*(タブを入れる)$#smtpf$@LMTP$:$2$#smtp$@$1$X$:$2'をsendmail.defに追加した。
上記の設定内容の意味は、
A=smtpfeed に与えるオプション。
hostnameの出力がFQDNでない場合はA=smtpfeed -c $jとする。
P=はインストールディレクトリに適宜設定してください。
F=(mailer flag)は、INSTALL.jにあるように
# mailer flag ! (runqueue での使用を抑制)
# mailer flag - (TEMPFAIL でも次に進まない)
を追加してみました。
*=5を追加して、5人未満への配送はsmtpfeedを使わないようにした。
M= equate (扱うメッセージサイズの上限)
&= 一回のトランザクション当たりの受信者の最大数・ テスト
# sendmail -C newsendmail.cf addresses < file
して、logを確認。・ 起動
sendmail.cf の置き換えと再起動をします。