必要パッケージ: vpopmail-5.3.14.tar.gz  daemontools,tcpserverをあらかじめインストールしていること。 qmail + vpopmailにて以下の機能を実現します。 ・バーチャルドメイン対応 SMTPサーバ ・バーチャルユーザ対応 POPサーバ ログインアカウントと独立したPOPアカウント。loginアカウント無しでPOPが利用可能。 ・APOP,SMTP-AUTH対応 実現される環境は、例えば以下のとおり メイルアドレス : takemru@e-doraku.com SMTPサーバ : mail.e-doraku.com POPサーバ : mail.e-doraku.com POP/SMTP-AUTHユーザ名 : takemaru%e-doraku.com (ユーザ名+"%"+ドメイン名) vpopmailはこの中で、POPアカウントのバーチャルドイメイン化、POP/APOP/SMTP-AUTH認証を担当する /// vpopmail用のGIDを準備 /// % su root # mkdir /var/vpopmail # groupadd vchkpw # useradd -g vchkpw -d /var/vpopmail -s /sbin/nologin vpopmail # exit /// source 展開、configure、install /// % tar zxvf vpopmail-5.3.14.tar.gz % cd vpopmail-5.3.14 % su root # ./configure --enable-sqwebmail-pass=y --enable-logging=p --enable-sqwebmail-pass=y --enable-log-name=vpopmail vpopmail 5.3.14 Current settings --------------------------------------- vpopmail directory = /var/vpopmail uid = 1011 gid = 1005 ip alias = OFF --enable-ip-alias-domains=n (default) address extentions = OFF --enable-qmail-ext=n (default) roaming users = OFF --enable-roaming-users=n default user quota = OFF --enable-defaultquota=NOQUOTA default table optimization = many domains --enable-many-domains=y default auth module = cdb default system passwords = OFF --enable-passwd=n default file locking = ON --enable-file-locking=y default file sync = OFF --enable-file-sync=n default disable vdelivermail fsync make seekable = ON --enable-make-seekable=y default auth logging = ON --enable-auth-logging=y default mysql logging = OFF --enable-mysql-logging=n default clear passwd = ON --enable-clear-passwd=y (default) users big dir = ON --enable-users-big-dir=y (default) valias processing = OFF --enable-valias=n mysql limits = OFF --enable-mysql-limits=n default pop syslog = show failure attempts with clear text password --enable-logging=p default domain = --enable-default-domain= auth inc = -Icdb auth lib = # make # make install-strip /// qmailとの連係のための調整 /// # vi /etc/group ----- ... vchkpw:*:1007:qmaild ----- # chmod g+rx /var/vpopmail/domains # chmod g+rx /var/vpopmail/domains/${DOMAIN} # cd /var/vpopmail/domains/${DOMAIN} # chmod g+r vpasswd* /// 起動準備 /// # mkdir /var/vpopmail/supervise /var/vpopmail/supervise/qmail-pop3d # vi /var/vpopmail/supervise/qmail-pop3d/run ----- #!/bin/sh env - PATH="/var/qmail/bin:/usr/local/bin" tcpserver -H -R 0 pop3 \ /var/qmail/bin/qmail-popup e-doraku.com /var/vpopmail/bin/vchkpw \ /var/qmail/bin/qmail-pop3d Maildir ----- # chmod 751 /var/vpopmail/supervise/qmail-pop3d/run daemntoolsの管理下に入れ、起動させます。 # ln -s /var/vpopmail/supervise/qmail-pop3d /service/qmail-pop3d /// vpopmailにsmtp-authの認証をさせる /// qmailのsmtp-authにvpopmailを使う方法はqmailのインストールでも紹介して います。smtp-auth対応パッチをあてたqmailをインストール後に行ってくだ さい。 # ls -la ~vpopmail/bin/vchkpw -rwx--x--x 1 vpopmail vchkpw 45656 Jan 30 00:18 /var/vpopmail/bin/vchkpw # chmod 4755 ~vpopmail/bin/vchkpw # chown root.wheel ~vpopmail/bin/vchkpw 認証プログラムとしてvpopmailのvchkpwを使います。 cd /var/qmail/supervise/qmail-smtpd cp run run.org vi run --- #!/bin/sh exec /usr/local/bin/tcpserver -v -p -R -u vpopmail -g vchkpw \ ^^^^^^^^ ^^^^^^ -x /var/qmail/tcprules/smtp.cdb 0 smtp /var/qmail/bin/qmail-smtpd \ e-doraku.com /var/vpopmail/bin/vchkpw /usr/bin/true 2>&1 --- ^^^^^^^^^^^^^^^^^^^^^^^^ qmail-smtpdを再起動します。 /usr/local/bin/svc -dx /service/qmail-smtpd /// 運用メモ /// svscan -> /servive/qmail-pop3d (supervise-qmail-smtpd) /usr/local/bin/supervise /service/qmail-pop3d & (サービス開始) /usr/local/bin/svstat /service/qmail-pop3d (stat) /usr/local/bin/svc -u /service/qmail-pop3d (up) /usr/local/bin/svc -d /service/qmail-pop3d (down) /usr/local/bin/svc -dx /service/qmail-pop3d (サービス停止。その5秒後に起動) サービス完全停止 # cd /service/qmail-pop3d # mv /service/qmail-pop3d /service/.pop3d # svc -dx . log バーチャルドメイン、アカウントの設定 # cd /var/vpopmail/bin # ./vadddomain VERTUAL.DOMAIN.NAME Please enter password for postmaster: enter password again: # ./vadduser USER@VERTUAL.DOMAIN.NAME Please enter password for USER@VERTUAL.DOMAIN.NAME: enter password again: