Mailmanのメーリング・リストをバーチャル・ホストに移行する

2014-04-01 (火) 16:42:32 (1086d) | Topic path: Top / その他 / Mailmanのメーリング・リストをバーチャル・ホストに移行する

はじめに

新しいドメインを取得して同じサーバーに設定したときに,Mailmanで運用しているメーリング・リストを新しいドメインに移行する方法についてのメモです.

以下の環境で確認しました.

  • Mailman
  • Postfix

Postfixにおけるバーチャル・ホストの設定

ここでは,現在 example.com で運用しているMailmanの ml という名前のメーリング・リストを同じサーバーで運用しているバーチャル・ホスト virtual.org へ移行します.

/etc/postfix/main.cf に以下の行を追加します.

# Virtual domains
virtual_alias_domains = virtual.org
virtual_alias_maps = hash:/etc/postfix/virtual, hash:/etc/mailman/virtual-mailman

バーチャル・ホストの設定ファイルを作成します.

# touch /etc/mailman/virtual-mailman
# chown apache:mailman /etc/mailman/virtual-mailman

バーチャル・ホストの設定ファイルに設定を書き込みます.

virtual.org   IGNORE
@virtual.org  @example.com

ここでは,virtual.org ドメイン宛のメールをすべて元の example.com ドメイン宛に転送しています.

バーチャル・ホストの設定を反映させ,Postfixを再起動します.

# postmap /etc/mailman/virtual-mailman
# /etc/rc.d/init.d/postfix restart

Mailmanにおけるメーリング・リストの設定変更

/etc/mailman/mm_cfg.py に次の行を追加します.

add_virtualhost('www.virtual.org', 'virtual.org')

前者はURLのホスト名,後者はメールのホスト名です.

withlist コマンドを使ってメーリング・リストの設定を変更します.

# /usr/lib/mailman/bin/withlist ml
ml のリストを読み込中 (ロック解除)
変数 `m' が ml の MailList インスタンスです
>>> m.Lock()
>>> m.host_name='virtual.org'
>>> m.web_page_url='http://www.virtual.org/mailman/'
>>> m.Save()
>>> 
リストをロック解除 (保存はしてません): ml
最終処理中

Ctrl-D で終了しています.

Mailmanを再起動します.

# /etc/rc.d/init.d/mailman restart

以上です.

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS