UnixPower on Networking
  http://www.unix-power.net/

 
 Top - Linux - CentOS Mailman




■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画面上から行うことが可能です。




 
 関連記事
 Postfix+Dovecotのインストール
 Postfix+Dovecot+OpenLDAPの設定
 PostfixAdmin+Dovecot+MySQLのインストール
 Postfixでバーチャルドメイン
 Postfix+AMaViS+Clamavのインストール
 RoundCubeのインストール
 Copyright(C) 2003-2015 UnixPower on Networking All rights reserved.