UnixPower on Networking
  http://www.unix-power.net/

 
  Top - Solaris8 - Solaris Postfix



postfix は、sendmail 互換プログラムを持つ MTA です。設定が簡単、かつ高性能なため、最近よく利用されています。sendmailのときと同じようにBerkeleyDBとDracのインストールを行います。


db-4.0.14.tar.gz
http://www.oracle.com/technetwork/database/berkeleydb/downloads/index-082944.html

drac.tar.Z
ftp://mail.cc.umanitoba.ca/src/


postfix-2.0.16.tar.gz
http://mirror.postfix.jp/postfix-release/index.html


teapop-latest.tar.gz
http://www.toontown.org/teapop/



■BerkeleyDB.4.0.14のインストール


# tar xvzf db-4.0.14.tar.gz
# cd db-4.0.14/build_unix
# CC=gcc ../dist/configure
# make
# make install


次のコマンドでシンボリックリンクをはります。


# ln -s /usr/local/Berkeley.4.0/lib/libdb-4.0.so /usr/lib/libdb-4.0.so



■Dracのインストール


作業用ディレクトリを作ってその中で作業します。

# mkdir tmp
# mv drac.tar.Z tmp
# cd tmp
# tar xvzf drac.tar.Z


Makefileの次の部分を以下のように編集します。


cc=gcc
CFLAGS = $(DEFS) -g -I/usr/local/BerkeleyDB.4.0/include
LDLIBS = -L/usr/local/BerkeleyDB.4.0/lib -lnsl -ldb


次にインストールを行います。


# make
# make install


以下の起動スクリプトを準備して自動起動するよう設定しておきます。


#!/bin/sh -
# Put this file into /etc/rc.d/init.d/dracd
# and link it intot he run levels you want to use it
# by doing "ln -s  /etc/rc.d/init.d/dracd /etc/rc.d/rc.<runlevel>/S99dracd"
#
# dracd-setup

# Source function library.
. /etc/rc.d/init.d/functions

# See how we were called.
case "$1" in
  start)
        echo -n "Starting rpc.dracd daemon: "
        daemon /usr/local/sbin/rpc.dracd -i -e 10&
        echo
        touch /var/lock/subsys/rpc.dracd
        ;;
  stop)
        echo -n "Stopping rpc.dracd daemon: "
        killproc rpc.dracd
        echo
        rm -f /var/lock/subsys/rpc.dracd
        ;;
  *)
        echo "Usage: dracd {start|stop}"
        exit 1
esac

exit 0



■teapopのインストール


最近作られただけあって、現在の流行にはよくマッチしている部分が多いです。特徴的な機能を挙げてみます。


  1. バーチャルドメインが使える
  2. APOPをサポートしている
  3. スタンドアロン、inetd起動のどちらにも対応している
  4. MySQL, PostgreSQL, Apacheの.htpasswd による認証ができる
  5. OpenLDAPによる認証ができる
  6. mbox, Maildir のどちらにも対応している
  7. Pop Before SMTP用の認証IPファイル出力ができる
  8. DRAC(http://mail.cc.umanitoba.ca/drac/)に対応している


認証の方法として利用できるものが、他のものに比べ多くなっています。ここでの目的は、DRACを利用して Pop Before SMTP を行うことです。そこで、configureには、次のように指定します。

./configure  --enable-homespool=Maildir/ --with-drac=/usr/local/src/drac


このとき、--enable-homespool=Maildir/ オプションの最後のスラッシュに気をつけてください。pop_passwd.c の中で「最後の文字がスラッシュだったら Maildir形式」という判定をしています。


あとはコンパイルとインストールです。


# make
# make install


teapop は、xinetd からでも、スタンドアロンでも起動できます。 ここではスタンドアローンから起動するよう以下のスクリプトを用意します。


#!/bin/sh -
#
# teaop

PATH=/usr/sbin:/usr/bin
DAEMON=/usr/local/libexec/teapop
TEAPOP_PID=/var/run/teapop.pid

case "$1" in
start)
        $DAEMON -s -p 127.0.0.1
        echo "starting $DAEMON" >&2
;;
stop)
        kill `cat $TEAPOP_PID`
        rm -f $TEAPOP_PID
;;
*)
        echo "Usage: /etc/init.d/teapop {start|stop}" >&2
;;
esac

#!/end


実際に起動スクリプトは以下のコマンドということになります。


# /usr/local/libexec/teapop -s -p 127.0.0.1



■Postfixのインストール


まずはじめにPostfixを動かすユーザとグループを追加する必要があります。


# /usr/sbin/groupadd postdrop
# /usr/sbin/useradd -s /bin/false -d /nonexistent postfix


次にソフトのインストールにうつります。DRAC はリレー許可データベースを、Berkeley-DB の btree 形式で吐き出します。これを読む為には、postfixも Berkeley-DB 対応で作成する必要があります。


# tar xvzf postfix-2.0.16.tar.gz
# cd postfix-2.0.16
# make makefiles CCARGS="-DHAS_DB -I/usr/local/BerkeleyDB.4.0/include" \
                 AUXLIBS="-L/usr/local/BerkeleyDB.4.0/lib -ldb"
# make
# make install


インストール時の対話スクリプトは、特になにもしなければ、設定ファイル /etc/postfix、バイナリ /usr/sbinにインストールされます。ここまで終われば/etc/postfix/main.cfにて設定を行います。私のmain.cfはこちらのようになっております。


また、main.cfの詳細な設定内容についてはこちらのサイトが非常に有益です。実際の起動の仕方は以下のようになります。


# /usr/sbin/postfix start

以上で完了です。



 

 Copyright(C) 2003-2015 UnixPower on Networking All rights reserved.