PostfixAdmin のインストールと設定
提供:maruko2 Note.
バーチャルのドメイン&ユーザ情報は MySQL データベースに保存し、PostfixAdmin の Web インターフェースから管理する。
PostfixAdmin で設定できる項目
PostfixAdmin は、管理権限が 3 段階に分かれている。
- サイト Admin
- /postfixadmin/admin/
- PostfixAdmin 全体について操作ができる権限(すべてのドメインが管理可能)
Admin List | Admin 権限メールアカウントの一覧と、編集/削除 |
Domain List | ドメインの一覧 |
Virtual List | メールアカウント、エイリアスの設定一覧 |
View Log | PostfixAdmin のログを見る |
Backup | SQL でデータベースをバックアップ |
New Domain | ドメインを新規追加 |
New Admin | Admin を新規追加 |
Add Alias | エイリアスを追加 |
Add Mailbox | メールアカウントを追加 |
- ドメインごとの Admin
- /postfixadmin/
- バーチャルドメインごとに管理できる権限
Overview | 管理ドメイン一覧と、管理ドメインのメールアカウント設定を編集/削除 |
Add Alias | 管理ドメインのエイリアス設定 |
Add Mailbox | 管理ドメインにメールアカウントを新規作成 |
Send Email | メール送信 (うまく動かない) |
Password | パスワード変更 |
View Log | PostfixAdmin のログを見る |
Logout | ログアウト |
- メールアカウントユーザ
- /postfixadmin/users/
- それぞれのユーザ権限
Change your forward | 転送設定 |
Change Password | パスワード変更 |
Logout | ログアウト |
PostfixAdmin のインストール
1. 解凍後 config.inc.php.sample をコピーし config.inc.php を作成
[root]# cp config.inc.php.sample config.inc.php
2. ブラウザでアクセス Postfix Admin Setup Checker のチェックがすべて OK なら setup.php を削除するか、名前を変更する。
mv setup.php setup.php~
CentOS の PHP は magic_quotes_gpc が OFF になっているので、php.ini か httpd.conf か .htaccess のいずれかで magic_quotes_gpc を ON に設定 |
3. SQL を実行しデータベース作成
[root]# mysql -uroot -p < DATABASE_MYSQL.TXT
4. admin ディレクトリ内の .htpasswd を修正
[root]# htpasswd -cm admin/.htpasswd admin New password: パスワード Re-type new password: パスワード
PostfixAdmin の設定 (config.inc.php の編集)
- データベース接続設定
デフォルトのデータベース設定は localhost からしか接続できないようになている。
// Database Config // mysql = MySQL 3.23 and 4.0 // mysqli = MySQL 4.1 // pgsql = PostgreSQL $CONF['database_type'] = 'mysql'; $CONF['database_host'] = 'localhost'; $CONF['database_user'] = 'postfixadmin'; $CONF['database_password'] = 'postfixadmin'; $CONF['database_name'] = 'postfix'; $CONF['database_prefix'] = ;
- postmaster のメールアドレス
// Site Admin $CONF['admin_email'] = 'postmaster@example.com';
- SMTP サーバアドレスの設定
バーチャルにしている場合、main.cf の local_transport パラメータが絡んでくる。
// Mail Server $CONF['smtp_server'] = 'localhost'; $CONF['smtp_port'] = '25';
- パスワードをデータベースに記録するときの暗号化の方法
SMTP Auth (Postfix + SASL2 + MySQL) を使用する場合 cleartext で保存しないと、うまく認証できない。 |
Courier-authlib は md5crypt も使用可能だが、
// Encrypt $CONF['encrypt'] = 'cleartext';
- デフォルトのメールエイリアスの設定
// Default Aliases // The default aliases that need to be created for all domains. $CONF['default_aliases'] = array ( 'abuse' => 'abuse@example.com', 'hostmaster' => 'hostmaster@example.com', 'postmaster' => 'postmaster@example.com', 'webmaster' => 'webmaster@example.com' );
- メールクオータの設定
// Quota $CONF['quota'] = 'YES';
- ユーザのメールボックスをドメインごとに分けるか、メールボックスにドメインを付けるかの設定
デフォルトでは、/home/vmail/username@domain のようにメールボックスが作られる。
/home/vmail/domain/username のように、ドメインごとにメールボックスを分けるには、次のようにする。
//Mailboxes $CONF['domain_path'] = 'YES'; <- ドメインごとにディレクトリで分けるかどうか $CONF['domain_in_mailbox'] = 'NO'; <- メールボックスにドメインを付けるかどうか
- メールアカウントを新規に作る時(Add Mailbox する時)、create mailbox にチェックを入れると、作成したメールアドレスに Welcome Message が送られ、メールボックスが作成される。その Welcome Message の内容。
// Welcome Message $CONF['welcome_text'] = <<<EOM Hi, <font color="red"Welcome to your new account.</font> EOM;