pop5smtp ホームページ

ダウンロード / DOWNLOAD

[pop5smtp アーカイブ version 1.5]2001/02/07 19:55 updated tar+gzipにて圧縮してあります

[qmail-setup アーカイブ]2001/02/07 19:55 updated tar+gzipにて圧縮してあります

[qmapop0.3 アーカイブ]1999/02/20 01:16 updated tar+gzipにて圧縮してあります (作者は私ではありませんがGPLに基づくフリーソフト)

[qmail 関連パッケージ]リンクです

特徴 / BLURB

BerkleyDBライブラリを利用しすべてCで記述してあるため高速です。コードもversion1.3現在、599行とコンパクトながらセキュリティ対策に注意を払っています。

使い方 / description

 POPによる認証を行った後10分間任意の宛先のSMTPを受け入れるようになります。現存するWindowsやMacの通常のメーラであれば普通に設定すればよいはずです。ただし、仕様上大きいメール等によって受信に10分以上かかった場合は、送信に失敗することがあります。その時はもう一回送受信し直してください。

Tips

10分以内にPOP認証したIPアドレスを知りたい場合
/var/qmail/bin/pop5smtp -l
登録されているIPアドレスを削除したい場合 (例)
env TCPREMOTEIP=127.0.0.1 /var/qmail/bin/pop5smtp -d
POP認証したことにしてIPアドレスを登録したい場合 (例)
env TCPREMOTEIP=127.0.0.1 /var/qmail/bin/pop5smtp -p

インストール / INSTALL

ファイルの概要

pop5smtp
プログラム本体。qmail-smtpd, qmail-pop3d それぞれの前段にこれを噛ませます。
@qmail.sh
qmail関連プロセス起動/停止用サンプルスクリプト

インストール手順 (FreeBSD用)

qmail-1.xxをインストール
tar xvzf qmail-1.xx.tar.gz
tar xvzf qmail-setup.tar.gz
tar xvzf qmapop-0.3.tar.gz
cd qmail-setup
./00mkdir.sh
./01mkuser.sh
./02make.sh
./03makerc.sh
./04sendmail.sh
./05apop.sh
pop5smtpをインストール
tar xvzf pop5smtp.tar.gz
(cd pop5smtp; make; make install)
ucspi-tcp-0.8xをインストール
tar xvzf ucspi-tcp-0.8x.tar.gz
(cd ucspi-tcp-0.8x; make; make setup)
cp /usr/local/bin/tcpserver /var/qmail/bin
mkdir /local; mkdir /local/sbin; cp /usr/local/bin/tcpserver /local/sbin
FreeBSDを再起動します。
reboot

qmail の設定

qmail-control - qmail-1.03 制御ファイルを参照してください。 me,locals,rcpthosts,defaultdomain は確認するべきでしょう。

運用手順

 @qmail.sh はqmail関係のプロセスをまとめて起動/停止するためのプログラムです。qmailを起動するには引数なしで呼び出してください。qmail停止するには引数に stop を与えて呼び出してください。

インストール手順 (qmailをすでに自分で設定した人向け)

makeの際の注意事項 (Linuxとかの*BSD以外)

makeの際には、Berkeley DBが標準ライブラリでないので Makefileの4行目ぐらいにある#EXTRA_LIBS=-ldb#を削除して下さい。autoconfを勉強せねば…

Berkeley DBがない環境では先にインストール必要があります。
Sleepycat Software http://www.sleepycat.com/はBerkeley DBの互換性があるとのアナウンスをしています。ただしバージョン3以降では動作確認できませんでした。Berkeley DB Patches and Change Logsから2.xをダウンロードしてインストールして下さい。
また、configure の際 --enable-compat185 をつけて下さい。

よしおかあきら様より以下の環境で動かすためのパッチをいただきました。ありがとうございます。
OS:Linux/Debian woody
Linuxヴァージョン:2.2.15
インストール済みソフト:Sleepycat Software DB2 2.7.7-2.2
以下のテキストをファイルに保存した後、patch < ファイル名 でパッチを適用して下さい。

pop5smtp.c.diff

$ diff -c pop5smtp.c pop5smtp.c.org
*** pop5smtp.c  Fri Oct 13 03:42:54 2000
--- pop5smtp.c.org      Mon Jul 12 14:05:51 1999
***************
*** 31,37 ****
  #include 
  #include 
  #include 
! #include 
  #ifdef USE_SYSLOG
  #include 
  #else
--- 31,37 ----
  #include 
  #include 
  #include 
! #include 
  #ifdef USE_SYSLOG
  #include 
  #else

IPv6への対応 (FreeBSD 4.x)

FreeBSD 4.x からIPv6対応になりました。またinetdがtcpwrapper付のため、tcpserverを利用しなくてもSPAM対策が可能です。
当然 qmail には IPv6パッチを当てる必要があります。http://www.rcac.tdi.co.jp/fujiwara/
inetd経由の接続となるため、tcpserver を起動してはいけません。@qmail.sh を利用している場合は、/var/qmail/control/popd-ip, /var/qmail/control/smtpd-ip を削除して下さい。
現在手元のマシンでは以下のように設定してあります。一応telnetベースではうまくいっているように見えますが、IPv6対応メーラーからの接続は未確認です。

/etc/inetd.conf

#
# Qmail
#
smtp    stream  tcp46   nowait  qmaild:nofiles  /var/qmail/bin/tcp-env  tcp-env /var/qmail/bin/pop5smtp /var/qmail/bin/qmail-smtpd
pop3    stream  tcp46   nowait  root    /var/qmail/bin/tcp-env  tcp-env /var/qmail/bin/qmail-popup www.mimori.org /var/qmail/bin/checkpassword /var/qmail/bin/pop5smtp /var/qmail/bin/qmail-pop3d Maildir

/etc/hosts.allow

# qmail (smtp, pop3)
tcp-env : localhost : setenv RELAYCLIENT : allow
tcp-env : 10.0.0.0/255.0.0.0 : setenv RELAYCLIENT : allow
tcp-env : 172.16.0.0/255.240.0.0 : setenv RELAYCLIENT : allow
tcp-env : 192.168.0.0/255.255.0.0 : setenv RELAYCLIENT : allow
tcp-env : 210.225.29.32/255.255.255.240 : setenv RELAYCLIENT : allow
tcp-env : 210.228.4.160/255.255.255.248 : setenv RELAYCLIENT : allow
tcp-env : [2001:218:440::]/48 : setenv RELAYCLIENT : allow
tcp-env : [fe80::%ed1]/10 : setenv RELAYCLIENT : allow
tcp-env : ALL : allow

Courier-IMAPへの対応

Courier-IMAPの場合もQmailのPOP3サーバと起動方法はほぼ同じです。pop5smtpとしてはv1.5より対応しました。

/usr/local/etc/rc.d/imapd.sh

# diff -c /usr/local/libexec/courier-imap/imapd-ssl.rc imapd-ssl.sh
*** /usr/local/libexec/courier-imap/imapd-ssl.rc        Wed Nov 15 16:36:29 2000
--- imapd-ssl.sh        Wed Nov 15 18:56:40 2000
***************
*** 39,44 ****
--- 39,45 ----
                        -pid=$SSLPIDFILE $TCPDOPTS \
                        $SSLPORT $COURIERTLS -server -tcpd \
                                ${exec_prefix}/sbin/imaplogin $LIBAUTHMODULES \
+                               /var/qmail/bin/pop5smtp \
                                ${exec_prefix}/bin/imapd Maildir"
        ;;
  stop)

pop5smtpの歴史 / HISTORY

ver.1.5 2000.11.16
courier-imapdに対応
ver.1.3 2000.6.6
エラーメッセージを強化した
ver.1.2 1999.7.12
TIMEOUTを2分から10分にした
ver.1.1.7 1999.1.12
-p -c オプションの追加
ver.1.1.5 1999.1.12
バグ取りとエラーメッセージの充実
ver.1.1.3 1999.1.5
とりあえず完成

pop5smtpの由来 / NAME

「POP後SMTP」

ライセンス / LICENSE

pop5smtp

pop5smtpのライセンス情報は以下の通りです

Copyright (c) 1999 KAMIYA Satosi mimoriso@gmail.com
Redistribution for any purpose, without significant modification, is granted as long as all copyright notices are retained.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES ARE DISCLAIMED.


last updated 2004/08/31 17:52
e-mail : 上美谷 智史<mimoriso@gmail.com>