Mailmanでメーリングリスト実験

※Linux関連記事についてはsnagplaces on @wikiにまとめていますので、そちらをご参照ください。

※現在mailmanは削除したので、今後更新することはないと思います。

mailmanはFedoraやApacheやらで採用されているメーリングリストサーバだそうです。これはWeb管理型ですがPerlやPHPではなくPythonで動く個別パッケージのような扱いになっています。

前提条件:

  • Apache・Postfixが構築済み

参考サイト:

現在自分のテストサーバではHTTP通信やメールの暗号化通信を有効にしていなので、ここではシンプルな構築のみにとどめておきます。

mailmanのインストール

# yum install mailman ※インストール時点では3:2.1.9-4.el5でした。

mailman設定ファイルの編集

最低限、MTA,DEFAULT_URL_HOST,DEFAULT_EMAIL_HOST,DEFAULT_SERVER_LANGUAGEさえ設定してればいいです。

# vi /etc/mailman/mm_cfg.py

【46行目あたり追記】基本設定項目
MTA = ‘Postfix’ ※MTAをPostfixに指定
DEFAULT_SERVER_LANGUAGE = ‘ja’ ※デフォルト言語を日本語に
DEFAULT_URL_PATTERN = ‘http://%s/mailman/’ ※Web設定へのアドレス(「https」とすればSSLで)
DEFAULT_LIST_ADVERTISED = No ※メーリングリスト一覧を非表示
OWNERS_CAN_DELETE_THEIR_OWN_LISTS = Yes ※メーリングリストをWeb上から削除可能にする
DEFAULT_SUBJECT_PREFIX = "[%(real_name)s:%%d] " ※件名に記事番号を付加
DEFAULT_REPLY_GOES_TO_LIST = 1 ※返信アドレスを投降者でなくメーリングリストのアドレスにする
DEFAULT_NEW_MEMBER_OPTIONS = 258 ※投稿した本人にはメールを送らない
DEFAULT_GENERIC_NONMEMBER_ACTION = 2 ※非会員から投稿を拒否
DEFAULT_MSG_FOOTER = "" ※メッセージのフッタを表示しない
DEFAULT_SEND_REMINDERS = No ※毎月のパスワード備忘通知を送らない
DEFAULT_SEND_WELCOME_MSG = No ※新入会員歓迎メールを送らない
DEFAULT_MAX_MESSAGE_SIZE = 0 ※メール本文の字数制限をしない
DontReceiveDuplicates = 0
DEFAULT_ARCHIVE_PRIVATE = 1 ※保存書庫は会員に限定して公開
DEFAULT_SCRUB_NONDIGEST = True ※添付ファイルを保管する
【97行目あたり変更】サーバアドレスの指定
DEFAULT_URL_HOST   = ‘サーバのアドレス’
DEFAULT_EMAIL_HOST = ‘メールサーバのアドレス’ ※ieserver.netならば上と同一のアドレス

管理用パスワードの設定

# /usr/lib/mailman/bin/mmsitepass
新しい サイト のパスワード:※パスワード入力
パスワード確認:※上と同じものを入力
パスワードを変更しました.

アクセス権等の確認

yumで入れた場合はちゃんと設定されているはずなので念のため実行する程度で。エラーが出たら「check_perms -f」で自動設定します。

# /usr/lib/mailman/bin/check_perms
Warning: Private archive directory is other-executable (o+x).
         This could allow other users on your system to read private archives.
         If you’re on a shared multiuser system, you should consult the
         installation manual on how to fix this.
問題ありません

エイリアス設定

aliases作成

# /usr/lib/mailman/bin/genaliases

所有者をmailmanに

# chown mailman. /etc/mailman/aliases*

パーミッション変更

# chmod g+w /etc/mailman/aliases*

postfix設定ファイル編集

【377行目あたり変更】mailmanのaliasを付加
alias_maps = hash:/etc/aliases, hash:/etc/mailman/aliases

管理用メーリングリストの作成

# /usr/lib/mailman/bin/newlist mailman ※「mailmanというメーリングリストを作成」
リスト管理者のメールアドレスを入力してください: root@サーバ名
mmadmin の初期パスワード:パスワードを入力
Enter を押して mailman の管理者にメール通知する… ※Enterを押すとrootあてに確認メールを出す

サイトリストの構築

# /usr/lib/mailman/bin/config_list -i /etc/mailman/sitelist.cfg mailman
標準でない値を修復: personalize

mailmanサービスの起動

# service mailman start

これでmailmanの設定は完了です。mailmanは各メーリングリスト毎の管理画面が存在し、そこで新しいユーザのリストを登録するといった作業を行います。

それぞれの設定へのアクセスは以下の通り。

  • mailmanメイン画面:http://ドメイン名/mailman/listinfo
  • 新しいメーリングリストを作成:http://ドメイン名/mailman/create
  • 一般会員用ページ:http://ドメイン名/mailman/listinfo/メーリングリスト名
  • 管理者用ページ:http://ドメイン名/mailman/admin/メーリングリスト名

ひととおり構築したのはいいのですが、結論としてはすごく使いにくいです。また、httpdのログをみると、結構mailmanにアクセスしようとする者がいるようで、もし構築するならSSLでしっかり対策したほうがいいかもしれません。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中