BlogもどきのWeblog

備忘録と日々の呟きとメモとCGIの実験場とされる何か。
プロフィール

GLANSHE
絵描き担当らしい

Total: 16386
Today: 226
Yesterday: 238
最新の記事

コンテンツ

最新のコメント

最新のトラックバック

カテゴリー

リンク

ニコ動MyListLink

qmail + qmail-vidaのインストールメモ
仮想メールアドレスを使う事になって、今までのやり方では出来ない事が発覚したらしいのでqmail-vidaを入れる事に。ついでにCRAM-MD5にも対応。

■qmail-vidaの特徴
・checkpasswordの認証方式の追加(CRAM-MD5,APOP対応)
・checkpasswordのSMTP認証対応
・qmail-smtpupプログラムの追加
・仮想ユーザ対応
・バーチャルドメイン対応
・パスワードデータベースは CDB を利用するため、ユーザ数が多くても高速
・D.J.Bernstein氏のライブラリを積極的に利用

■必要なもの
・qmail (or netqmail)
・qmail-vida
・checkpassword
・ucspi-tcp

■Makefileを修正
qmail, checkpassword, ucspi-tcpのソースの位置を修正する。
netqmailを使う時は

${PATCH} -p1 < $${here}/patch/qmail.patch

${PATCH} -p1 -F 3 < $${here}/patch/qmail.patch

に変更。

■qmail-vidaでqmailとcheckpasswordを拡張
qmail-vidaを解凍すると patch/ 以下に拡張用のパッチが入ってるのでそれをあてる。
$ make patch
$ make copy

■他のパッチを手動であてる
・qmail-date-localtime.patch

glibcのバージョンが2.3.1以降の場合は次のパッチもあてる。
・qmail-1.03.errno.patch
・qmail-1.03.qmail_local.patch

・checkpassword-0.90.errno.patch

・ucspi-tcp-0.88.errno.patch
・ucspi-tcp-0.88.a_record.patch
・ucspi-tcp-0.88.nobase.patch

■コンパイルとインストール
$ cd ../qmail-1.03/
$ make
# make setup check
# ./config-fast hogehoge.com

$ cd ../checkpassword-0.90/
$ make
# make setup check

$ cd ../ucspi-tcp-0.88/
$ make
# make setup check

$ cd ../qmail-vida/src/vida/
*errnoエラーをなんとかする
$ vi error.h
4行目 extern int errno → #include
$ make
# make setup check

■POPを平文で通すcdbを作る
# /var/qmail/bin/vida-pwdbinit
# vi /usr/local/etc/pop3.rul
# cat /usr/local/etc/pop3.rul
:allow,ALLOWPLAIN="",DOMAINOWNER=""
# tcprules /usr/local/etc/pop3.cdb /usr/local/etc/pop3.tmp < /usr/local/etc/pop3.rul

■起動スクリプト
#!/bin/sh
PATH=/var/qmail/bin:/usr/local/bin:/bin:/usr/bin

[ -f /var/qmail/rc ] || exit 0

case "$1" in
start)
# Start daemons.
echo "Starting qmail:"
csh -cf '/var/qmail/rc &'
tcpserver -v -u `id -u qmaild` -g `id -g qmaild` -x /var/qmail/etc/tcp.smtp.cdb \
0 smtp /var/qmail/bin/qmail-smtpd 2>&1 \
| /var/qmail/bin/splogger smtpd 3 &

exec env - DOMAINOWNER="pop" \
tcpserver -vHR -l hogehoge.com -x /usr/local/etc/pop3.cdb \
-- 0 587 /usr/bin/fixcrio /var/qmail/bin/qmail-smtpup hogehoge.com \
/var/qmail/bin/checkpassword /var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger smtpd-sub 3 &

exec env - DOMAINOWNER="pop" \
tcpserver -vHR -l hogehoge.com -x /usr/local/etc/pop3.cdb \
0 110 /var/qmail/bin/qmail-popup hogehoge.com /var/qmail/bin/checkpassword \
/var/qmail/bin/qmail-pop3d Maildir 2>&1 \
| /var/qmail/bin/splogger pop3d &

touch /var/lock/qmail
;;
stop)
# Stop daemons.
echo "Shutting down qmail:"
PID=`/bin/ps -aefw | grep qmail | awk '{print $2}'`
if [ ! -z "$PID" ] ; then
/bin/kill ${PID} 1> /dev/null 2>&1
fi
rm -f /var/lock/qmail
;;

*)
echo "Usage: qmail {start|stop}"
exit 1
esac

exit 0

参考文献
Stray Penguin -Linux Memo-
自宅サーバー構築メモ
qmail-vida 解説文書など
qmail-vida の インストール


time stamp:2008/05/15 18:36:32
トラックバック(0)|コメント(0)
この記事のトラックバックURL:

コメントを書く
名前:
タイトル:
MAIL:
URL:
コメント:
PASS:
何かしら