qmailでsmPbS(POP before SMTP)


1. 概要

smPbSの節を参照。ここではMTAにqmail、POPにqmail-pop3dを使用し、Maildir形式のspoolを使用する場合の解説を行う。

2. 準備

・使うファイル達:

checkpassword-0.81.tar.gz
open-smtp3.tar.gz

3. 設定

・qmailのコンパイル、設定

qmailの節を参照

・checkpassword をインストールする。

% tar zxvf checkpassword-0.81.tar.gz ; cd checkpassword-0.81
% patch -p1 < ../open-smtp/checkpassword.patch (smPbS用のpatch)
% make
# make setup check

・open-smtpの設定

pop3-recordを編集する
(open-smtpのものは同じIPを何度も記録してしまうため、書き換えてあります。)

open(FILE,"/etc/tcp/tcp.smtp.filter.iplist");
等のファイル名を、環境にあわせて設定。

exec()で呼ばれるコマンドや、引数のファイル名等も、環境にあわせて書き換えること。

# cp pop3-record /usr/local/bin
(checkpassword.patchによって、/usr/local/bin/pop3-recordが呼ばれるため、/usr/local/binに置くか、linkを張ること)

・POP認証済みClientのIPアドレスの掃除のための設定

age-smtpをcronで30分おきに実行
30分ごとに実行すると、一回のPOP認証で1時間はメールの送信が行える

・qmail-pop3dを起動する

ucspi-tcpの節を参照し、ucspi-tcpから、qmail-pop3dを起動するようにする。

tcp.smtpに
(relayを許可するClientのip address):allow,RELAYCLIENT=// を追加しておこう

/usr/local/bin/tcpserver -v -c 5 -x /etc/tcp/tcp.pop.cdb 0 \
pop3 /var/qmail/bin/qmail-popup ホストネーム \
/bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir 2>&1 | /usr/bin/logger -t tcp.pop3 &

4. テスト

popで入ってみて、

% cdbdump < /etc/tcp/tcp.smtp.cdb
正常動作していれば、

+15,14:210.162.171.194->+RELAYCLIENT=
+0,0:->

等の出力が得られる。

※参照:

http://www.jp.qmail.org/q103/faq/faq5.html#5.4.


Copyright © Dai Okuyama / dai@unixuser.org
Last modified: Wed Jun 23 18:32:45 JST 1999