*PostfixAdmin [#p4648a76] PostfixをPHPベースのwebインターフェースで操作するプログラム。 データはMySQLに格納しておき、PostfixからSQLを叩く事によって受信制御を行う。 ~ *構築環境 [#a6687ead] 今回検証した環境はこちら -debian 8.1 x86_64 ※CentOS 6.x等の非Systemd環境で構築する場合には、各スクリプトをinit用に書き換える必要がある。 ~ *構築 [#a9cd2b96] &size(16){&font(b){1. ディレクトリ構成};}; Postfixをそのまま使うと、メールデータは"/var/spool"以下に保存されるのだが、 今回はPostfixAdminからディレクトリ操作を行う必要があるので、 1段掘り下げるなどして、ディレクトリ構成を変更する。 メールデータディレクトリ:/var/hostname/spool/* Postfixのコンフィグディレクトリ:/etc/postfix/* Postfixのシステムコンフィグファイル:/etc/sysconfig/postfix ちなみに、今回はこのディレクトリ構成でMTA構築を行う ~ &size(16){&font(b){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 ~ *設定 [#c4ee01a0] &size(16){&font(b){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 ~ &size(16){&font(b){2. PostfixAdminの設定変更};}; PostfixAdminの動作環境を満たしているか確認する為に、 コンフィグの一部を変更した後にWebブラウザで "http://${サーバのIPアドレス}/postfixadmin/setup.php"にアクセスする # vi ${DocumentRoot}/postfixadmin/config.inc.php $CONF['configured'] = false; //trueに変更する