portageからインストールする。
> emerge -av mailman
MTA = 'Postfix' # メールサーバを指定 DEFAULT_SERVER_LANGUAGE = 'ja' # 表示言語 MAILMAN_SITE_LIST = 'ml-admin' # サイトの管理者ML名(通常は変更する必要なし)。各種管理用メールの差出人などになる。 DEFAULT_EMAIL_HOST = 'ml.example.com' # MLサーバのFQDN DEFAULT_URL_HOST = 'www.example.com' # 管理用WebインタフェイスのURL DEFAULT_URL_PATTERN = 'https://%s/mailman/' # 管理用Webインターフェイスのパス # DEFAULT_URL_HOST, DEFAULT_EMAIL_HOSTを書き換えた場合に必要 # 管理用WebインターフェイスのURLとドメインを紐づける add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)
サーバ全体にかかわる設定に加えて、各MLのデフォルト値も設定する。Defaults.pyのパラメータから変更するものを設定していく。
# 例)MLの件名を標準でML名+連番にする DEFAULT_SUBJECT_PREFIX = "[%(real_name)s %%d] "
これらのほとんどはWebインターフェイスから変更できる。
# /etc/conf.d/apache2 APACHE2_OPTS="..... -D MAILMAN"
owner_request_special = no recipient_delimiter = + # mailmanに配送するために、mailmanのaliasデータベースを読み込むようにする alias_maps = hash:/etc/mail/aliases, hash:/var/lib/mailman/data/aliases
Postfixからmailmanに配送連携させるためのaliasマップを生成する。
> /usr/lib/mailman/bin/genaliases
Gentooではインストール時にmailmanユーザが作成されているのでmailmanユーザになって実行する。
PATHが通っていないが、mailmanのインストールディレクトリがmailmanユーザのホームディレクトリになっているので、mailmanユーザになれば、ホームディレクトリ以下のbinディレクトリにコマンドがある。
mailman関係のデータファイルは
以下に置かれている。
にあるaliasデータベースはWebインターフェイスを利用する場合、apacheの書き込み権限が必要な場合があるので確認する。
mm_cfg.pyで設定した管理者MLを作成する。作成は先ほどと同様にmailmanユーザで行う。
> /usr/lib/mailman/bin/newlist ml-admin # 管理者MLに標準のテンプレートを適用。Web画面などで設定してもよい。 > $prefix/bin/config_list -i $prefix/data/sitelist.cfg ml-admin
まとめ送りなどのためにCronを設定する。用意されたcrontabをmailmanユーザのcrontabに設定する。
> cd /usr/lib/mailman/cron > crontab -u mailman crontab.in
ML全体の管理者パスワードを設定する。どのパスワードボックスに入力しても有効なパスワードであるため管理には十分注意すること。
> /usr/lib/mailman/bin/mmsitepass # -c オプションでサイト全体ではなくML作成のみのパスワードを生成する。
mm_cfg.pyで設定したURLにアクセスして動作確認する。
以下のファイルがあればMLの内容は移行できる。
ログなども含めて、/var/lib/mailman全体をバックアップすればよい。