この情報は古い可能性があります!
いろいろなメーリングリストがあるのですが、
見やすいWebアーカイブ+Webコンソールでの管理という面で
mailmanを利用します。
HP: http://mailman.sourceforge.net/
3.x系のHP: https://launchpad.net/mailman
2.1.13がでましたが、今後の主力は3.x系になるそうです。
インストール
useradd -d /usr/local/mailman mailman
chmod 02775 /usr/local/mailman
cd /usr/local/src
wget http://jaist.dl.sourceforge.net/sourceforge/mailman/mailman-2.1.13.tgz
tar zxvf mailman-2.1.13.tgz
cd mailman-2.1.13
wget http://ftp.momo-i.org/pub/mail/mailman-2.1.13-utf-8.patch.gz
gzip -d mailman-2.1.13-utf-8.patch.gz
patch -p1 < mailman-2.1.13-utf-8.patch
次に文字コード変換です。
cd /usr/local/src/mailman-2.1.13
cd messages/ja
nkf -w INSTALL > INSTALL.w
mv INSTALL.w INSTALL
nkf -w README.ja > README.ja.w
mv README.ja.w README.ja
nkf -w UPGRADING > UPGRADING.w
mv UPGRADING.w UPGRADING
cd LC_MESSAGES
nkf -w mailman.po > mailman.po.w
mv mailman.po.w mailman.po
cd ../
cd doc
nkf -w Defaults.py.in > Defaults.py.in.w
mv Defaults.py.in.w Defaults.py.in
nkf -w mailman-install.tex > mailman-install.tex.w
mv mailman-install.tex.w mailman-install.tex
nkf -w mailman-member.tex > mailman-member.tex.w
mv mailman-member.tex.w mailman-member.tex
cd ../../../
cd templates/ja/
ここはいっぱいあるのでシェルで。
vi ch.sh
#!/bin/bash
for i in `ls -1`; do
nkf -w $i > $i.w
mv $i.w $i
done
sh ch.sh
rm ch.sh
コンパイル
cd /usr/local/src/mailman-2.1.13
./configure \
--with-mail-gid=vchkpw \
--with-cgi-gid=apache \
--with-mailhost=list.momo-i.org \
--with-urlhost=list.momo-i.org
make
make install
cd /usr/local/mailman/bin
./check_perms -f
/usr/local/mailman/templates/pt_BR: ディレクトリのパーミッションは 02775 でなければいけません (修正中)
~~snip~~
/usr/local/mailman/messages/sl: ディレクトリのパーミッションは 02775 でなければいけません (修正中)
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.
問題があります: 61
修正するには -f オプションをつけて mailman か root の権限で実行してください
もう一回実行するとWarningが出ますが、
以下のように正常になったことが分かります。
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.
問題ありません
これは以下の手順で消せます。
cd /usr/local/mailman/archives/
chmod 02770 private
cd /usr/local/mailman/bin
./check_perm -f
次にQmailとの連携をします。
セキュリティのためにhttpsにも対応させておきます。
/usr/local/mailman/Mailman/mm_cfg.py
DEFAULT_SUBJECT_PREFIX = "[%(real_name)s:%%d] "
add_virtualhost('list.momo-i.org','list.momo-i.org')
add_virtualhost('URLのホスト名', 'メールサーバのホスト名')
ALLOW_SITE_ADMIN_COOKIES = 1
DEFAULT_URL_PATTERN = 'https://%s/mailman/'
PUBLIC_ARCHIVE_URL = 'https://%(hostname)s/pipermail/%(listname)s'
DEFAULT_SERVER_LANGUAGE = 'ja'
MTA_ALIASES_STYLE = 'qmail'
/usr/local/mailman/Mailman/Defaults.py
DEFAULT_URL_PATTERN = 'http://%s/mailman/'
↓
DEFAULT_URL_PATTERN = 'https://%s/mailman/'
PUBLIC_ARCHIVE_URL = 'http://%(hostname)s/pipermail/%(listname)s'
↓
PUBLIC_ARCHIVE_URL = 'https://%(hostname)s/pipermail/%(listname)s'
Apacheの設定
/usr/local/apache2/conf/httpd.conf
Alias /pipermail/ /usr/local/mailman/archives/public/
Alias /icons/ /usr/local/mailman/icons/
ScriptAlias /mailman/ /usr/local/mailman/cgi-bin/
AllowOverride All
Options ExecCGI FollowSymLinks Includes MultiViews SymLinksIfOwnerMatch
Order allow,deny
Allow from all
メーリングリストを作るためのパスワードを設定
cd /usr/local/mailman/bin
./mmsitepass
新しい サイト のパスワード: *****
パスワード確認: *****
パスワードを変更しました.
後は起動です。
ln -s /usr/local/mailman/bin/mailmanctl /etc/init.d/mailman
/etc/init.d/mailman start
デフォルトのメーリングリストを作成してみましょう。
cd /usr/local/mailman/bin
./newlist mailman
リスト管理者のメールアドレスを入力してください: webmaster@momo-i.org
mailman の初期パスワード: *****
メーリングリストの作成を完了するには, /etc/aliases (または同等の
ファイル) に, 以下の行を追加してください.
また, `newaliases' コマンドの実行が必要でしょう.
## mailman mailing list
mailman: "|/usr/local/mailman/mail/mailman post test3"
mailman-admin: "|/usr/local/mailman/mail/mailman admin test3"
mailman-bounces: "|/usr/local/mailman/mail/mailman bounces test3"
mailman-confirm: "|/usr/local/mailman/mail/mailman confirm test3"
mailman-join: "|/usr/local/mailman/mail/mailman join test3"
mailman-leave: "|/usr/local/mailman/mail/mailman leave test3"
mailman-owner: "|/usr/local/mailman/mail/mailman owner test3"
mailman-request: "|/usr/local/mailman/mail/mailman request test3"
mailman-subscribe: "|/usr/local/mailman/mail/mailman subscribe test3"
mailman-unsubscribe: "|/usr/local/mailman/mail/mailman unsubscribe test3"
Enter を押して mailman の管理者にメール通知する...
そしたらメールアドレスに次のようなメールが届きます。
Subject: 新しいメーリングリスト: mailman
`mailman' メーリングリストが作成されました.
以下は,このメーリングリストの基本的な情報です.
メーリングリストのパスワード:
******
メーリングリストの設定を行うにはこのパスワードが必要です.
また,発言の制限があるリストへの投稿を承認する場合など,管理上の申請を
処理する際にも必要になります.
~~後略~~
次にQmail用の設定をさらにします。
/home/vpopmail/domains/list.momo-i.org/mailman.sh
#!/bin/sh
if [ $# = 1 ]; then
i=$1
echo Making links to $i...
echo "|preline /usr/local/mailman/mail/mailman post $i" > .qmail-$i
echo "|preline /usr/local/mailman/mail/mailman admin $i" > .qmail-$i-admin
echo "|preline /usr/local/mailman/mail/mailman bounces $i" > .qmail-$i-bounces
echo "|preline /usr/local/mailman/mail/mailman confirm $i" > .qmail-$i-confirm
echo "|preline /usr/local/mailman/mail/mailman join $i" > .qmail-$i-join
echo "|preline /usr/local/mailman/mail/mailman leave $i" > .qmail-$i-leave
echo "|preline /usr/local/mailman/mail/mailman owner $i" > .qmail-$i-owner
echo "|preline /usr/local/mailman/mail/mailman request $i" > .qmail-$i-request
echo "|preline /usr/local/mailman/mail/mailman subscribe $i" > .qmail-$i-subscribe
echo "|preline /usr/local/mailman/mail/mailman unsubscribe $i" > .qmail-$i-unsubscribe
fi
chmod 755 mailman.sh
./mailman.sh mailman
後はhttps://list.momo-i.org/mailman/admin/mailman
あたりにアクセスをしてユーザを追加します。
mailman@list.momo-i.org にメールをして届くかを確認しましょう。
Cron設定
0 8 * * * /usr/bin/python -S /usr/local/mailman/cron/checkdbs
0 9 * * * /usr/bin/python -S /usr/local/mailman/cron/disabled
0 12 * * * /usr/bin/python -S /usr/local/mailman/cron/senddigests
0 5 1 * * /usr/bin/python -S /usr/local/mailman/cron/mailpasswds
0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/bin/python -S /usr/local/mailman/cron/gate_news
27 3 * * * /usr/bin/python -S /usr/local/mailman/cron/nightly_gzip
独り言
qmail-dkというかSPFとメーリングリスト(mailman)の相性は悪いらしい
コメントを追加