Postfixの仮想ドメイン(マルチドメイン)の設定

カテゴリ:メールサーバ

CentOS/Ubuntu 両対応

仮想ドメインのためのmain.cfの設定

Postfixでマルチドメインを使用するためには、まず main.cf ファイルで以下の仮想ドメイン用の設定パラメータを追加します。

# vi /etc/postfix/main.cf

以下の例では、example1.com、example2.com、example3.com の3つの仮想ドメインを設定しています。

virtual_alias_domains = example1.com, example2.com, example3.com
virtual_alias_maps = hash:/etc/postfix/virtual

仮想ドメインのテーブルの作成

次に /etc/postfix/virtual に仮想ドメインとユーザーを設定します。
仮想ドメインのメールアドレスをユーザーと一対一で紐付け、そのユーザーのメールボックスが仮想ドメインメールアドレスのメールボックスになります。
以下の例では、example1.com、example2.com、example3.com の3つのドメインの admin アカウントを、それぞれ example1、example2、example3 のユーザーに紐づけています。

# vi /etc/postfix/virtual
example1.com anything
example2.com anything
example3.com anything
admin@example1.com example1
admin@example2.com example2
admin@example3.com example3

postmapコマンドで virtual.db テーブルを作成します。

# postmap /etc/postfix/virtual

仮想ドメインのユーザーの作成

次に、各ユーザーを mail グループで作成し、パスワードを設定します。
※mail グループで作成するのは、/var/spool/mail には初期設定で root ユーザーと mail グループにしか書き込み権限がないためです。

# useradd -G mail example1
# passwd example1
# useradd -G mail example2
# passwd example2
# useradd -G mail example3
# passwd example3

Postfixの設定をリロードします。

# systemctl reload postfix

仮想ドメインのテスト

一般的なメーラーでテストしてもいいですが、ここでは手軽に mail コマンドでメールボックスにメールが届くかだけをテストします。
まず、mailコマンドをインストールしていない場合はインストールします。

CentOS 7 の場合:

# yum -y install mailx

CentOS 8 以降の場合:

# dnf -y install mailx

Ubuntu の場合:

# apt -y install mailutils

試しに admin@example1.com 宛にメールを送信してみます。

# mail admin@example1.com
Subject: test
test
.
EOT

admin@example1.com に紐付けたユーザーである example1 ユーザーのメールボックスのサイズが増えていることを確認します。

# ls -la /var/spool/mail/
合計 12
drwxrwxr-x. 2 root     mail 4096  7月 21 00:19 2014 .
drwxr-xr-x. 8 root     root 4096  7月 19 23:22 2014 ..
-rw-rw----. 1 example1 mail  612  7月 21 00:19 2014 example1
-rw-rw----. 1 example2 mail    0  7月 21 00:15 2014 example2
-rw-rw----. 1 example3 mail    0  7月 21 00:15 2014 example3

また、/var/log/maillog でも example1@localhost.localdomain 宛に送られ、メールボックスへの配送が成功している事を確認します。

Jul 21 00:19:06 localhost postfix/pickup[7353]: 7B3CD260BB8: uid=0 from=
Jul 21 00:19:06 localhost postfix/cleanup[7407]: 7B3CD260BB8: message-id=<20140720151906.7B3CD260BB8@localhost.localdomain>
Jul 21 00:19:06 localhost postfix/qmgr[7352]: 7B3CD260BB8: from=, size=445, nrcpt=1 (queue active)
Jul 21 00:19:06 localhost postfix/local[7409]: 7B3CD260BB8: to=, orig_to=, relay=local, delay=0.36, delays=0.23/0.05/0/0.09, dsn=2.0.0, status=sent (delivered to mailbox)
Jul 21 00:19:06 localhost postfix/qmgr[7352]: 7B3CD260BB8: removed

公開日時:2014年07月21日 00:34:39
最終更新日時:2022年03月10日 21:26:05

なお、VPS選びで迷ったらこちらの記事で主要VPSのメモリ容量ごとの月額、年額料金を比較していますので、是非参考にしてみてください。

メールサーバに戻る

このページのトップに戻る