■Mailmanのインストール
メーリングリストソフトといえば昔ながらのFMLがありますが、今ではMailmanのほうが主流でしょうか。FMLはPerlで書かれているのにたいし、Mailmanはpythonという言語で記載されており、動作が軽快と思われます。先ずはmailmanをyumからインストールします。
# yum install mailman # rpm -qa | grep mailman mailman-2.1.12-17.el6.i686 |
/etc/mailman/mm_cfg.pyが設定ファイルとなります。以下、編集部分のみ記載致します。
# vi /etc/mailman/mm_cfg.py DEFAULT_URL_HOST = 'mailman.xxyy.jp' DEFAULT_EMAIL_HOST = 'mailman.xxyy.jp' [ 以下は追記 ] MTA = 'Postfix' # MTAにPostfixを指定 DEFAULT_URL_PATTERN = 'http://%s/mailman/' # URLを指定 DEFAULT_SERVER_LANGUAGE = 'ja' # 日本語を指定 OWNERS_CAN_DELETE_THEIR_OWN_LISTS = Yes # Web上からMLを削除可能にする DEFAULT_SUBJECT_PREFIX = "[%(real_name)s:%%d] " # Subjectに通し番号をつける DEFAULT_REPLY_GOES_TO_LIST = 1 # 返信先はMLにする DEFAULT_GENERIC_NONMEMBER_ACTION = 1 # 誰でも投稿可能にする |
以下のコマンドでパーミッションチェックを行います。
# /usr/lib/mailman/bin/check_perms |
これでパーミッションに関するメッセージが表示されたら以下のコマンドでno problemといわれるまで繰り返します。
# /usr/lib/mailman/bin/check_perms -f |
基本的にはWeb上からの管理となりますので、それ用の設定を実施します。以下では管理画面のパスワードを設定しています。
/usr/lib/mailman/bin/mmsitepass |
postfixに渡すaliasesファイルを生成します。下記のコマンドで/etc/mailman/aliases.dbが生成 されます。また、apacheから作成することになりますので権限を変更しておきます。
# /usr/lib/mailman/bin/genaliases # chmod 666 /etc/mailman/aliases* |
上記で生成したaliases.dbをpostfixに渡してあげる必要があるのでmain.cfを変更します。
# vi /etc/postfix/main.cf #alias_maps = hash:/etc/aliases alias_maps = hash:/etc/aliases, hash:/etc/mailman/aliases #alias_database = hash:/etc/aliases alias_database = hash:/etc/aliases, hash:/etc/mailman/aliases allow_mail_to_commands = alias,forward,include # /etc/rc.d/init.d/postfix reload |
apache 用のconfファイルも追加されていますのでそれも修正します。
# vi /etc/httpd/conf.d/mailman.conf #ScriptAlias /mailman/ /usr/lib/mailman/cgi-bin/ Alias /mailman/ /usr/lib/mailman/cgi-bin/ <Directory /usr/lib/mailman/cgi-bin/> AllowOverride None Options ExecCGI Sethandler cgi-script Order allow,deny Allow from all </Directory> |
次に 管理用MLを作成します。
# /usr/lib/mailman/bin/newlist mailman リスト管理者のメールアドレスを入力してください: test@xxyy.jp mailman の初期パスワード: Enter を押して mailman の管理者にメール通知する... |
/etc/mailman/aliases にリストが追加されます。
# more /etc/mailman/aliases # This file is generated by Mailman, and is kept in sync with the # binary hash file aliases.db. YOU SHOULD NOT MANUALLY EDIT THIS FILE # unless you know what you're doing, and can keep the two files properly # in sync. If you screw it up, you're on your own. # The ultimate loop stopper address mailman-loop: /var/lib/mailman/data/owner-bounces.mbox # STANZA START: mailman # CREATED: Wed Nov 28 17:20:43 2012 mailman: "|/usr/lib/mailman/mail/mailman post mailman" mailman-admin: "|/usr/lib/mailman/mail/mailman admin mailman" mailman-bounces: "|/usr/lib/mailman/mail/mailman bounces mailman" mailman-confirm: "|/usr/lib/mailman/mail/mailman confirm mailman" mailman-join: "|/usr/lib/mailman/mail/mailman join mailman" mailman-leave: "|/usr/lib/mailman/mail/mailman leave mailman" mailman-owner: "|/usr/lib/mailman/mail/mailman owner mailman" mailman-request: "|/usr/lib/mailman/mail/mailman request mailman" mailman-subscribe: "|/usr/lib/mailman/mail/mailman subscribe mailman" mailman-unsubscribe: "|/usr/lib/mailman/mail/mailman unsubscribe mailman" # STANZA END: mailman |
そしてmailmanとapacheを起動します。
# /etc/rc.d/init.d/mailman start # /etc/rc.d/init.d/httpd start |
http://url/mailman/adminで画面が見れれば成功です。
以下の画面からメーリングリストを作成することが出来ます。
画面最下部にある「リスト作成者の認証パスワード」はmmsitepassで設定したパスワードを入力します。MLに関する詳細な設定は全てWeb画面上から行うことが可能です。