[Linxu]PostfixAdminでバーチャルメールの構築
環境:Postfix + Dovecot + PostfixAdmin
参考:http://www.very-cute.net/wp/postfixadmin-setup/
※ほぼ、参考サイトの通りに作業しました。
■今回の手順
・Postfixインストール
・Dovecotインストール
・MySQLインストール、PostfixAdmin用データベース、ユーザ作成
・バーチャルユーザー作成
・PostfixAdminインストール
・httpd.conf修正
・PostfixをPostfixAdmin向けに設定
・DovecotをPostfixAdmin向けに設定⇒参照サイトを参照してください。
■MySQLにPostfixAdmin用データベース、ユーザ作成
データベース名: postfix
ユーザー名 : hogehoge
パスワード : herahera
mysql> create database postfix; mysql> grant all privileges on postfix.* to ‘hogehoge’@’localhost’ identified by ‘herahera’;
mysql> flush privileges;
■バーチャルユーザー作成
# mkdir /home/vmailbox
# groupadd -g 1000 vuser
# useradd -g vuser -u 1000 -d /home/vmailbox -s /sbin/nologin vuser
# chown vuser:vuser /home/vmailbox
# chmod 771 /home/vmailbox
■Postfixadmin
$wget http://sourceforge.net/projects/postfixadmin/files/postfixadmin/postfixadmin-2.3.6/postfixadmin-2.3.6.tar.gz
$tar xvzf postfixadmin-2.3.6.tar.gz
# mv postfixadmin-2.3.5 /var/www/postfixadmin
# cd /var/www/postfixadmin
# chown -R apache.apache * /var/www/postfixadmin/config.inc.phpの変更ポイント
< $CONF[‘configured’] = true; — > $CONF[‘configured’] = false;
< $CONF[‘setup_password’] = ‘xxxxxxxxxxxxxx’; ⇦ setup後に画面に表示されたものを設定する — > $CONF[‘setup_password’] = ‘changeme’;
< $CONF[‘default_language’] = ‘ja’; — > $CONF[‘default_language’] = ‘en’;
< $CONF[‘database_user’] = ‘username’;
< $CONF[‘database_password’] = ‘hogehoge’;
< $CONF[‘database_name’] = ‘database’; — > $CONF[‘database_user’] = ‘postfix’;
> $CONF[‘database_password’] = ‘postfixadmin’;
> $CONF[‘database_name’] = ‘postfix’;
< $CONF[‘admin_email’] = ‘info@kumakake.com’; — > $CONF[‘admin_email’] = ‘postmaster@change-this-to-your.domain.tld’;
// Dovecotを使用して、パスワードを暗号化して保存したい為、encryptをmd5cryptにしている
< //$CONF[‘encrypt’] = ‘cleartext’;
< $CONF[‘page_size’] = ‘100’; — > $CONF[‘page_size’] = ’10’;
< ‘abuse’ => ‘info@kumakake.com’,
< ‘hostmaster’ => ‘info@kumakake.com’,
< ‘postmaster’ => ‘info@kumakake.com’,
< ‘webmaster’ => ‘info@kumakake.com’ — > ‘abuse’ => ‘abuse@change-this-to-your.domain.tld’, > ‘hostmaster’ => ‘hostmaster@change-this-to-your.domain.tld’, > ‘postmaster’ => ‘postmaster@change-this-to-your.domain.tld’, > ‘webmaster’ => ‘webmaster@change-this-to-your.domain.tld’ < $CONF[‘aliases’] = ‘100’; < $CONF[‘mailboxes’] = ‘100’;
< $CONF[‘maxquota’] = ‘100’; — > $CONF[‘aliases’] = ’10’;
> $CONF[‘mailboxes’] = ’10’;
> $CONF[‘maxquota’] = ’10’; // エイリアス(転送先などの作成)を自分で制御 < $CONF[‘alias_control’] = ‘YES’; — > $CONF[‘alias_control’] = ‘NO’;
< $CONF[‘alias_control_admin’] = ‘YES’; — > $CONF[‘alias_control_admin’] = ‘NO’;
< $CONF[‘user_footer_link’] = “https://kumakake.com/wp/wp/”; — > $CONF[‘user_footer_link’] = “http://change-this-to-your.domain.tld/main”;
< $CONF[‘show_footer_text’] = ‘NO’; — > $CONF[‘show_footer_text’] = ‘YES’;
< $CONF[‘emailcheck_resolve_domain’]=’NO’; — > $CONF[‘emailcheck_resolve_domain’]=’YES’; // default $CONF[‘domain_in_mailbox’] = ‘YES’; // maildir:/home/vmailbox/%d/%n@%d
・encrypt設定について データベースにパスワードを保存する際の暗号化方法を決めます。
cleartextPLAINPLAIN,APOP,CRAM-MD5等PLAIN,CRAM-MD5等md5cryptMD5-CRYPTPLAINPLAIN,LOGIN
encrypt | Dovecot | POP認証方式 | SMTP-AUTH認証方式 |
※クライアントPC~POPサーバ間でSSLを使用している場合は、認証方式をPLAINにしておいて、データベース側をmd5cryptにすることができる。
■Postfix # virtual_mailbox_domainsで指定したドメインが処理されるので未指定。コメントアウトではないので注意。
mydestination = #SMTP-Auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
#dovecot-sasl smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
# for broken broken_sasl_auth_clients = yes
# virtual domain setting virtual_transport = virtual
virtual_mailbox_base = /home/vmailbox
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_alias_domains = $virtual_alias_maps
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf virtual_minimum_uid = 1000
virtual_uid_maps = static:1000
virtual_gid_maps = static:1000
# mail box size limit
virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_overquote_bounce = yes
■Postfixadminのセットアップ
http://www.hogehoge.com/postfixadmin/setup.php IMAPで警告が出てますが、今回は使わないので、無視します。 パスワードを設定します。 パスワードを設定して、Generatする あとは、スーパー管理者を設定します