ezmlmとezmlm-idxの導入
最近、egroupsがおかしな動作をすることを多く感じます。メールがなかなか配信されなかったり、中で順番が入れ替わっていたり、突然とまったり。
さらに最近やたらと広告スペースが大きくなりました。メッセージの下部とはいえちょっと気になります。
これらは有料化への前段階にみえてなりません。
ということで、自分でMLを運営することにしました。
で、どうせ運営するなら使いやすいMLにしたいと思うのは当然です。今までegroupsを使っていたので、それに近い機能は欲しい。ということで、qmailとezmlmとezmlm-idxとezmlm-cgiを組み合わせたMLを作成することにしました。
2002.04.19
ezmlm-cgiだとパーミッションとかの関係からどうもセキュリティに不安があります。
また、検索システムもつけたかったため、システムを変更することにしました。
導入したのはMHonArcとNamazuです。
・ezmlmとezmlm-idxのインストール
・MLの作成
・MLの管理
・MLの設定(subject関係)
・ezmlm-cgiの設定
・MHonArcの導入 New!
・ezmlmとezmlm-idxのインストール
(以下、実用qmailサーバ運用・管理術の第4回と第5回を参考にしています)
ezmlm-0.53とezmlm-idx-0.40をダウンロード。
# cd /tmp
# wget ftp://ftp.ezmlm.org/pub/patches/ezmlm-0.53.tar.gz
# wget ftp://ftp.ezmlm.org/pub/patches/ezmlm-idx-0.40.tar.gz
それぞれを解凍。
# tar xvzf ezmlm-0.53.tar.gz
# tar xvzf ezmlm-idx-0.40.tar.gz
ezmlm-idxをezmlmディレクトリに移してパッチを当て、makeします。
移動の際に同じファイル名のものがでますが全部上書きして構わないようです。
# mv ezmlm-idx-0.40/* ezmlm-0.53/
# cd ezmlm-0.53
# patch < idx.patch
# make clean
# make
# make man
自動応答メッセージなどのファイルを日本語のものにしてインストール。
# cp ezmlmrc.jp ezmlmrc
# make setup
・MLの作成
ezmlmを利用したMLには2種類あります。
1つがユーザが作るML。もう1つがルート権限で作るMLです。
ユーザ権限で作る(例えばnobodyがつくる)MLは、nobody-test@domainのようなアドレスになります。翻ってルート権限で作ると、ml@domainのようなMLが作成できます。
ここではルート権限でMLを作成します。idxパッチをいれたezmlmのオプションについてはこちらを参照。
作るMLは、見出し(prefix)付きで非公開MLでarchiveも非公開で登録ユーザのみ投稿可能とします。
ちなみにここではdomain名をexample.com、ML名をtestとします。
# /usr/local/bin/ezmlm/ezmlm-make -fgPu /var/ezmlm/test /var/qmail/alias/.qmail-test test example.com
# chown -R alias /var/ezmlm/test
これで管理ディレクトリを/var/ezmlm/testとしたtest@example.comというMLが作成されました。
ユーザ権限で作る場合
ユーザkiraがtestというMLを作る場合を考えます。
$ /usr/local/bin/ezmlm/ezmlm-make -fgPu /home/kira/ML/test /home/kira/.qmail-test kira-test example.com
これで管理ディレクトリを/home/kira/ML/testとしたkira-test@example.comが作成されます。
ルート権限で作った場合のように管理ディレクトリのオーナーを変える必要はありません。
・MLの管理
管理者側で登録者を追加するには下記のようにします。
# /usr/local/bin/ezmlm/ezmlm-sub /var/ezmlm/test user@domain user2@domain user3@domain
管理者側で登録者を削除するには下記のようにします。
# /usr/local/bin/ezmlm/ezmlm-unsub /var/ezmlm/test user@domain
ML登録者のリストを表示させるには下記のようにします。
# /usr/local/bin/ezmlm/ezmlm-list /var/ezmlm/test
コントロール用アドレス群。test@example.comの場合。
| test@example.com | 投稿用アドレス |
| test-subscribe@example.com | 登録用アドレス |
| test-unsubscribe@example.com | 退会用アドレス |
| test-get.123@example.com | 特定メーセージ取出し用アドレス |
| test-help@example.com | 案内メッセージ用アドレス |
| test-request@example.com | 「test-help@example.com」と同じ |