メーリングリストサーバー構築(Postfix+Mailman編)

最終更新日: 2017.02.01

<<トップページ <<新着情報 <<逆引き集 <<アンケート <<リンク集 <<サイト内検索 <<CentOSで自宅サーバー構築 <<Scientific Linuxで自宅サーバー構築

■概要

FedoraApacheでも利用されているメーリングリストサーバーであるMailmanを使用してメーリングリストサーバーを構築する。

メールサーバーWebサーバーWebサーバー間通信内容暗号化が構築済であること

vpopmailを導入している場合はvpopmail用メールアカウント&メーリングリスト管理システム導入(Postfix+qmailadmin)を参照


■Mailmanインストール

[root@fedora ~]# yum -y install mailman ← Mailmanインストール

■Mailman設定

(1)Mailman設定
[root@fedora ~]# vi /etc/mailman/mm_cfg.py ← mailman設定ファイル編集
##################################################
# Put YOUR site-specific settings below this line.
以下を追加
DEFAULT_URL_HOST = 'fedorasrv.com' ← Webサーバー名を指定
DEFAULT_EMAIL_HOST = 'mail.fedorasrv.com' ← メールサーバー名を指定
add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST) ← 追加
MTA = 'Postfix' ← メールサーバー指定
DEFAULT_SERVER_LANGUAGE = 'ja' ← 日本語化
DEFAULT_URL_PATTERN = 'https://%s/mailman/' ← Webインタフェースをhttps=SSLにする
DEFAULT_LIST_ADVERTISED = No ← メーリングリスト一覧を非公開にする
OWNERS_CAN_DELETE_THEIR_OWN_LISTS = Yes ← メーリングリストをWeb上から削除可能にする
DEFAULT_SUBJECT_PREFIX = "[%(real_name)s:%%d] " ← 件名に記事b付加する
DEFAULT_REPLY_GOES_TO_LIST = 1 ← 返信先を投稿者ではなくリストにする
DEFAULT_NEW_MEMBER_OPTIONS = 258 ← 投稿した本人にはメールを送らないようにする
DEFAULT_GENERIC_NONMEMBER_ACTION = 2 ← 非会員からのメールには拒否応答

[root@fedora ~]# /usr/lib/mailman/bin/mmsitepass パスワード ← メーリングリストサーバー管理パスワード設定
パスワードを変更しました.

[root@fedora ~]# /bin/cp /usr/lib/mailman/cron/crontab.in /etc/cron.d/mailman ← mailmanCRON設定

(2)aliases設定
[root@fedora ~]# /usr/lib/mailman/bin/genaliases ← aliasesファイル作成

[root@fedora ~]# chown mailman. /etc/mailman/aliases* ← aliasesファイル所有者変更

[root@fedora ~]# chmod g+w /etc/mailman/aliases* ← aliasesファイルパーミッション変更

[root@fedora ~]# vi /etc/postfix/main.cf ← postfix設定ファイル編集
# ALIAS DATABASE
#
# The alias_maps parameter specifies the list of alias databases used
# by the local delivery agent. The default list is system dependent.
#
# On systems with NIS, the default is to search the local alias
# database, then the NIS alias database. See aliases(5) for syntax
# details.
#
# If you change the alias database, run "postalias /etc/aliases" (or
# wherever your system stores the mail alias file), or simply run
# "newaliases" to build the necessary DBM or DB file.
#
# It will take a minute or so before changes become visible.  Use
# "postfix reload" to eliminate the delay.
#
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/aliases
↓
alias_maps = hash:/etc/aliases, hash:/etc/mailman/aliases ← mailmanのaliasesファイルを追加

[root@fedora ~]# /etc/rc.d/init.d/postfix restart ← Postfix再起動
Shutting down postfix:                                     [  OK  ]
Starting postfix:                                          [  OK  ]

(3)Apache設定
[root@fedora ~]# vi /etc/httpd/conf.d/mailman.conf ← mailman用Apache設定ファイル編集
ScriptAlias /mailman/ /usr/lib/mailman/cgi-bin/
<Directory /usr/lib/mailman/cgi-bin/>
    SSLRequireSSL ← 追加(SSL経由アクセス強制)
    AllowOverride None
    Options ExecCGI
    Order allow,deny
    Allow from all
</Directory>

[root@fedora ~]# /etc/rc.d/init.d/httpd reload ← Apache設定反映
httpd を再読み込み中:                                      [  OK  ]

■管理用メーリングリスト(mailman)作成

[root@fedora ~]# /usr/lib/mailman/bin/newlist mailman ← 管理用メーリングリスト(mailman)作成
リスト管理者のメールアドレスを入力してください: root@fedorasrv.com ← mailmanメーリングリスト管理者メールアドレス応答
mailman の初期パスワード:  ← mailmanメーリングリスト管理パスワード応答(表示されない)
Enter を押して mailman の管理者にメール通知する... ← 空ENTER

※python-2.5環境で管理用メーリングリスト作成時に以下のエラーメッセージが出力されて異常終了してしまう場合の対処
LookupError: unknown encoding: iso-2022-jp
[root@fedora ~]# sed -i 's/import japanes/#import japanes/g' /usr/lib/mailman/bin/paths.py
[root@fedora ~]# sed -i 's/import japanes/#import japanes/g' /usr/lib/mailman/cron/paths.py
[root@fedora ~]# sed -i 's/import japanes/#import japanes/g' /usr/lib/mailman/scripts/paths.py
[root@fedora ~]# sed -i 's/import japanes/#import japanes/g' /usr/lib/mailman/tests/paths.py
[root@fedora ~]# /usr/lib/mailman/bin/rmlist -a mailman

[root@fedora ~]# /usr/lib/mailman/bin/config_list -i /etc/mailman/sitelist.cfg mailman ← mailmanメーリングリスト初期設定
標準でない値を修復: personalize

■Mailman起動

[root@fedora ~]# /etc/rc.d/init.d/mailman start ← mailman起動
mailman を起動中:                                          [  OK  ]

[root@fedora ~]# chkconfig mailman on ← mailman自動起動設定

[root@fedora ~]# chkconfig --list mailman ← mailman自動起動設定確認
mailman         0:off   1:off   2:on    3:on    4:on    5:on    6:off ← ランレベル2〜5のonを確認

■Mailman確認

※例としてtestというメーリングリストを作成する

(1)testメーリングリスト作成
https://サーバー名/mailman/createにアクセスする※httpsでアクセスすること

「リストの名前」⇒test

「リスト管理者アドレスの初期設定」⇒リスト管理者メールアドレス

「初期パスワードを自動生成しますか?」⇒はい

「リスト作成者の認証パスワード」⇒メーリングリストサーバー管理パスワード

「リストを作成する」ボタン押下

※testメーリングリストの作成完了通知がリスト管理者メールアドレス宛に送信されてくる

(2)利用者向けtestメーリングリストの利用方法
https://サーバー名/mailman/listinfo/test参照※httpsでアクセスすること

(3)管理者向けtestメーリングリストの利用方法
https://サーバー名/mailman/admin/test参照※httpsでアクセスすること
※「リスト管理者パスワード」はリスト管理者メールアドレス宛に送られてきたメールに記載

(4)testメーリングリスト削除
https://サーバー名/mailman/rmlist/testにアクセスする※httpsでアクセスすること

「リストのパスワード」⇒リスト管理者パスワード
※「リスト管理者パスワード」はリスト管理者メールアドレス宛に送られてきたメールに記載

「このリストを削除」ボタン押下





▲このページのトップへ戻る

LPIロゴ Copyright© 2012 fallenangels, All rights reserved.
ご自由にリンクしてください(連絡は不要です)
本ページへのご意見・ご要望、誤字・脱字・リンク切れ等のご連絡はこちらからお願いします