PostfixをPHPベースのwebインターフェースで操作するプログラム。
データはMySQLに格納しておき、PostfixからSQLを叩く事によって受信制御を行う。
今回検証した環境はこちら
1. ディレクトリ構成
Postfixをそのまま使うと、メールデータは"/var/spool"以下に保存されるのだが、
今回はPostfixAdminからディレクトリ操作を行う必要があるので、
1段掘り下げるなどして、ディレクトリ構成を変更する。
メールデータディレクトリ:/var/hostname/spool/* Postfixのコンフィグディレクトリ:/etc/postfix/* Postfixのシステムコンフィグファイル:/etc/sysconfig/postfix
ちなみに、今回はこのディレクトリ構成でMTA構築を行う
2. インストール
PostfixAdminの動作にはLAMP環境が必須なので事前に構築しておく。
インストール方法は、同梱されているINSTALL.TXTに全部書いてあるので、
わからなかったらINSTALL.TXTを見る。
# wget "http://sourceforge.net/projects/postfixadmin/postfixadmin.***.tar.gz" # tar zxvf postfixadmin.***.tar.gz # mv postfixadmin ${DocumentRoot}/postfixadmin # chown -R root.apache ${DocumentRoot}/postfixadmin # find postfixadmin -type d -print | xargs chmod 750 # find postfixadmin -type f -print | xargs chmod 640
1. MySQLの設定
インストールを行う為に、MySQLのDB初期化を行う。
合わせてPostfixAdmin用のMySQLユーザも作成する。
※下のユーザ名などは一例なので、本番環境では変更する事
ユーザ名:postfix-admin-user , パスワード:postfix-admin-pass , データベース名:postfixadmin # mysql -u root -p ================================================== Enter password: {MySQLのrootユーザパスワード} > create database postfixadmin; > grant all on postfixadmin.* to postfix-admin-user identified by 'postfix-admin-pass'; > grant all privileges on `postfixadmin` . * to 'postfixadmin'@'localhost'; > flush privileges; > exit
2. PostfixAdminの設定変更
PostfixAdminの動作環境を満たしているか確認する為に、
コンフィグの一部を変更した後にWebブラウザで
"http://${サーバのIPアドレス}/postfixadmin/setup.php"にアクセスする
# vi ${DocumentRoot}/postfixadmin/config.inc.php $CONF['configured'] = false; //trueに変更する