tcpserverをインストールします。
入手場所
http://cr.yp.to/ucspi-tcp.html
# wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
# tar zxf ucspi-tcp-0.88.tar.gz
# cd ucspi-tcp-0.88
# make
# make setup check
インストールされたかどうか確認
# find / -name tcpserver
/usr/local/src/ucspi-tcp-0.88/tcpserver
/usr/local/bin/tcpserver
# find / -name tcprules
/usr/local/src/ucspi-tcp-0.88/tcprules
/usr/local/bin/tcprules
POP3用アクセスデータベースを定義
# ee /etc/tcp.pop3
/etc/tcp.pop3
---------------------
:allow
---------------------
POPは別に制限する必要がないので全てのホストを許可します。
SMTP用アクセスデータベースを定義
# ee /etc/tcp.smtp
/etc/tcp.smtp
---------------------
:allow
---------------------
これは非常に危険な設定な気がしますが…。
ここでは接続を許可するだけでリレー許可では無いようです。
cdb形式に変換
# /usr/local/bin/tcprules /etc/tcp.pop3.cdb /etc/tcp.pop3.tmp < /etc/tcp.pop3
# /usr/local/bin/tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
POP3の起動
# /usr/local/bin/tcpserver -v -x \
/etc/tcp.pop3.cdb -R -H 0 pop3 \
/var/qmail/bin/qmail-popup \
test.net \
/bin/checkpassword /var/qmail/bin/qmail-pop3d \
Maildir 2>&1 &
長いコマンドです。いっそ自動起動も含めてシェルにしたほうがいいですね。
因みにpop3の手前は0(ゼロ)です。
これは起動するサーバーホストを特定しない場合に記述します。
SMTPの起動
まずはqmailのuidとgidを調べる。
# id qmaild
uid=82(qmaild) gid=81(nofiles) groups=81(nofiles)
tcpserverコマンドで起動
# /usr/local/bin/tcpserver -v -x \
/etc/tcp.smtp.cdb -R -H -u 82 -g 81 0 smtp \
/var/qmail/bin/qmail-smtpd 2>&1 &
接続試験
ポートが利用できるかどうかを確認
# telnet 127.0.0.1 110 (POP3の場合)
# telnet 127.0.0.1 25 (SMTPの場合)

コメントする