FreeBSD-5.3 postfix-2.1.5_1,1

postfixによるバーチャルホスト運用の為の設定手順です

バーチャルサーバによるメール受信用アカウントの作成

バーチャルアカウント宛てメールを受信する為のUNIXアカウントを作成します

ユーザ名mailuser
GID10000
OID10000

以下を実行してユーザを作成します

# adduser
Username: mailuser
Full name: mailuser
Uid (Leave empty for default): 10000
  :       :
  :       :
  :       :

Recommend Book

上級のメールサーバー管理者にとっても十分に実用的な情報がそろっています

ディレクトリの作成

foo@example.com宛てのメールを保存するディレクトリ(Maildir)を作成します

mailuserユーザのホームディレクトリ以下にディレクトリを作成します

作成イメージは以下です

/home/mailuser
          +---example.com
                  +--- foo
                        +---Maildir
                              +--- cur
                              +--- new
                              +--- tmp

作成するコマンドは以下です

# cd /home/mailuser
# mkdir example.com
# cd example.com
# mkdir foo
# maildirmake /home/mailuser/example.com/foo/Maildir
# chown -R mailuser:mailuser /home/mailuser/example.com/

postfixの設定変更

Postfixの設定変更を行います

/usr/local/etc/postfix/main.cfの変更

/usr/local/etc/postfix/main.cfに以下を追加します

virtual_transport = virtual
virtual_maps = hash:/usr/local/etc/postfix/vmaps
virtual_mailbox_base = /home/mailuser
virtual_mailbox_maps = hash:/usr/local/postfix/vmailbox
virtual_mailbox_domains = hash:/usr/local/postfix/vmaildomains
virtual_minimum_uid = 10000
virtual_uid_maps = static:10000
virtual_gid_maps = static:10000

vmaildomainsの作成

/usr/local/postfix/vmaildomainsを作成します

ファイルの内容は以下です

example.com This is virtual host

vmailboxの作成

/usr/local/postfix/vmailboxを作成します

ファイルの内容は以下です

foo@example.com example.com/foo/Maildir/

vmapsの作成

/usr/local/postfix/vmapsを作成します

バーチャルドメイン宛てのメールで、ローカルユーザに転送するアドレスの対応を記述するものです

とりあえず、転送しないので空のファイルを用意します

ちなみに設定するとしたら以下の様になります

foo@example.com root
foo2@example.com root

vmailbox,vmaildomains,vmapsをDB化

以下を実行し、BerkeleyDB化します

# postmap /usr/local/etc/postfix/{vmailbox,vmaildomains,vmaps}

Courier-IMAPに"foo"ユーザを登録する

ユーザ登録

# userdb foo@abc.local set \
# home=/home/mailuser/abc.local/foo \
# mail=/home/mailuser/abc.local/foo/Maildir \
# uid=10000 gid=10000

パスワードの設定

# userdbpw -md5 | userdb foo@abc.local set pop3pw
# makeuserdb

その他の設定

imapでも行える様にするには

Courier-IMAPパスワードの設定時に以下の様にします

# userdbpw -md5 | userdb foo@abc.local set imappw

を行った後、makeuserdbを実行すればよいです

容量制限を行いたい(quota)

容量制限を行いたければ、Courier-IMAPユーザ作成時に以下の様にします

100MBの制限にする場合は以下の様にします

# userdb foo@example.com set quota=100000000
# makeuserdb

関連ページ