Postfixでマルチドメイン・バーチャルドメインって? †
- マルチドメインとは、1つのサーバ(1つのIP)で複数のドメインを管理するもので、
たとえば sea-bird.org と hogehoge.co.jp(例です!) などを管理するものです。
ググってみるとこのマルチドメインという言葉とバーチャルドメインという言葉が混在しており
私は意味が判りません(笑)
- これをPostfixではバーチャルドメインとして処理できるように対処がされています。
Postfixでマルチドメイン・バーチャルドメインを設定 †
- 私は、マルチドメインのテスト用に window-shop.biz というドメインを取得してます。
下記の例は、その設定方法です。
- 注意!!!
- メインである sea-bird.org ドメインは、バーチャルドメインの配信対象ではありません。
そのため virtual_mailbox_domains には、バーチャルドメインの記述のみをすること。
あえて記述しても問題はないけど、/var/log/maillogに警告が下記のように出力されます。
warning: do not list domain sea-bird.org in BOTH mydestination and virtual_mailbox_domains
- /etc/postfix/main.cf 以下の定義値を追加する(最終行に追加)。
※くどいようだけど必ずバックアップファイルを作成してから作業すること。
#
# virtual-domain
#
# バーチャルドメインにはvirtualデーモンを用いる
virtual_transport = virtual
# メールボックスを保存するベースディレクトリ
virtual_mailbox_base = /home/mailuser
# メールの振り分け先を定義するmailbox_mapsファイルの指定
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
# バーチャルドメインの定義
virtual_mailbox_domains = window-shop.biz
# 配送されるメールの最小UID
virtual_minimum_uid = 20000
# 配送されるメールのUID
virtual_uid_maps = static:20000
# 配送されるメールのGID
virtual_gid_maps = static:20000
# ローカル配送にはlocalデーモンを用いる
local_transport = local
# ローカル配送ではOSのアカウントや$alias_mapsを利用する
local_recipient_maps = unix:passwd.byname $alias_maps
# 中継は、バーチャルドメインも許す
relay_domains = $mydestination, $virtual_alias_domains
- Postfix を再起動する前に以下の作業をしておく。
- 上記の結果を /var/log/maillog にて確認します。
Feb 20 14:16:42 ns postfix/smtpd[26696]: connect from ns[127.0.0.1]
Feb 20 14:17:13 ns postfix/smtpd[26696]: 08CEC1342DD: client=ns[127.0.0.1]
Feb 20 14:17:20 ns postfix/cleanup[26698]: 08CEC1342DD: message-id=<20050220051659.08CEC1342DD@ns.sea-bird.org>
Feb 20 14:17:20 ns postfix/qmgr[26694]: 08CEC1342DD: from=<hoge@sea-bird.org>, size=352, nrcpt=1 (queue active)
Feb 20 14:17:20 ns postfix/virtual[26699]: 08CEC1342DD: to=<hoge@window-shop.biz>, relay=virtual, delay=21,status=sent (delivered to maildir)
Feb 20 14:17:20 ns postfix/qmgr[26694]: 08CEC1342DD: removed
- /home/mailuserディレクトリ以下に、/home/mailuser/window-shop.bizというディレクトリが作成されていれば成功です。
日々の運用について †
- メインドメインの方は、ローカルのpasswdベースでの認証となり、バーチャルドメインの方は
/etc/postfix/vmailboxにアカウントを記述(手作業)していくことになります。
- 商業運用ベースでは、手作業で運用なんて到底できないので、バーチャルドメインの記述部分を
データベース化たりて対応しているんでしょうなあ。。きっと(笑。
参考にさせて頂いたサイト様 †
|