Webインタフェースによるメーリングリストの作成
メーリングリストもバーチャルドメインで
さて、これまでWebサーバ、メールサーバとバーチャルドメインを構築してきたので、メーリングリストでも当然バーチャルドメインを活用して、各ドメインごとにメーリングリストを用意できるようにしたい、という要望があるだろう。Mailmanをバーチャルドメイン対応にするのは簡単で、次のようにいくつかの設定ファイルを更新するだけである。
PostfixではMailmanのメーリングリスト情報を参照できるように、「virtual_alias_maps」へ下記のように設定を追加する。
virtual_alias_maps = hash:/etc/postfix/virtual,
hash:/etc/mailman/virtual-mailman |
Mailmanの方にも、設定ファイルである「/etc/mailman/mm_cfg.py」の末尾へ2行追加する。add_virtualhostで始まる行に、Webサーバのドメイン名(http://example.net/mailman/ のexample.net)とメーリングリストのドメイン名(sample example.net のexample.net)のマッピング情報を「,」で区切って登録する。今回は両方とも同じexample.netなので「'example.net'」を指定した。次に「POSTFIX_STYLE_VIRTUAL_DOMAINS」の行にメーリングリストで使用するドメイン名を指定する。ここで指定するドメイン名はPostfixでバーチャルドメインとして扱われるように設定されている必要がある。例では「'example.net'」だけを指定しているが、複数のバーチャルドメインを指定したい場合は、「,」で区切って「['example.net','example_2.com']」のように記述すれば良い。
add_virtualhost('example.net', 'example.net');
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['example.net'] |
最後にバーチャルエイリアス用の「/etc/mailman/virtual-mailman」ファイルを作成したら、genaliasesコマンドで「/etc/mailman/virtual-mailman.db」ファイルができることを確認しておく。ここで、Webインタフェースを使う場合にはapacheユーザの権限でgenaliasesコマンドが実行されるので、これらのファイル所有者をapacheとし、Mailmanも参照と編集ができるようグループをmailmanにしておく。
# touch /etc/mailman/virtual-mailman
# chown apache:mailman /etc/mailman/virtual-mailman
# /usr/lib/mailman/bin/genaliases
# chown apache:mailman /etc/mailman/virtual-mailman.db
# chmod 660 /etc/mailman/virtual-mailman*
# ls -l /etc/mailman/virtual-mailman*
-rw-rw---- 1 apache mailman 0 3月 2 16:30 /etc/mailman/virtual-mailman
-rw-rw---- 1 apache mailman 12288 3月 2 16:30 /etc/mailman/virtual-mailman.db |
PostfixとMailmanの設定が完了したら、それぞれserviceコマンドで反映させる。
# service mailman restart
mailman を停止中: [ OK ]
mailman を起動中: [ OK ]
# service postfix reload
Reloading postfix: [ OK ] |
これで、Webインタフェースを使ってns.example.comドメイン以外のメーリングリストも作成できるようになった。example.netドメインのメーリングリストを作成したい場合は「http://example.net/mailman/create」へアクセスして処理をすれば良い。下記のようにnewlistコマンドを使って新規作成をすることもできる。
# /usr/lib/mailman/bin/newlist example example.net
リスト管理者のメールアドレスを入力してください: taro ns.example.com
example の初期パスワード:
Enter を押して example の管理者にメール通知する... |
以上で、メーリングリストのバーチャルドメイン対応もできるようになったわけだが、この方法はバーチャルエイリアスによる実現である点には注意が必要である。つまり、sample ns.example.comとsample example.netといった、同名のメーリングリストを作成することはできないという制約がある。Mailmanを各バーチャルドメイン専用の設定でソースからコンパイルしてインストールすれば、完全なバーチャルドメイン対応が可能だ。ただしその場合はそれなりのリソースを消費することになるので、今回はバーチャルエイリアスによる方法を選択した。
第1回 沢山あるWebサイトのメンテもSuitePROで楽々
第2回 バーチャルドメインを使い倒すWebサーバ設定
第3回 メールサーバもバーチャルドメインに最適化しよう
第4回 ここまでできる、バーチャルドメインでメーリングリストも運用
■特集『WebARENA SuitePRO』を選ぶ7つの理由
|
|
|
|