
第4回 メーリングリストの構築と運用(前編)
鶴長 鎮一
2001/12/11
大規模MLの構築:ezmlmの利用
.qmailファイルや拡張アドレスによる運用において、一般的なMLのようにサブジェクトに通し番号を付けるといったメールヘッダの加工や、送信者や流通するメールに制限を加えたりするには、意図する処理をスクリプトにまとめて.qmailまたは.qmail-○○ファイルの1行目にスクリプトが実行されるような記述を行います。
|処理スクリプトを絶対パスで記入 |
MLに必須の処理がパッケージ化されていればどれだけ助かることでしょう。ここで紹介するezmlm(http://www.ezmlm.org/)はその要望を十分に満たします。ezmlmはqmail同様D. J. Bernstein氏により作成されたもので、当然qmailのMaildirにも対応し、fmlやMajordomoに比べ管理も容易です。
では、ezmlmを利用して次のような規模を想定したMLを作成してみましょう。
| 目的: | コミュニティの構築(登録・退会が自由に行える) | |
| 参加人数: | 1000人程度 | |
| 参加者の変動具合: | 日に数十回(頻繁に行われる) | |
| 配信頻度: | 100通以下/日 |
fmlやMajordomoにもいえることですが、ML支援ツールがメール配信の性能を左右していると誤解される傾向があります。しかし、これらのソフトは配信そのものには関与しません。登録者の追加・削除やアーカイブ機能の提供など、MLの運営を手助けするものであり、ezmlmをインストールしたからといって配信速度が向上することはありません。コアの性能はqmailなどのMTAに依存することを忘れないでください。また、メールヘッダの書き換えも大事な処理です。コラム「Envelope・Header・Data」を必ずお読みいただき、配信の仕組みにHeaderデータがどのように関与し、ループなどの障害を防ぐためにHeaderデータをどのように書き換える必要があるのかを理解しておきましょう。
■ezmlmのインストール
では、ezmlmのソースを
ftp://ftp.jp.qmail.org/ezmlm/ezmlm-0.53.tar.gz
から入手してインストールします。
# tar xvfz ezmlm-0.53.tar.gz |
これで、/usr/local/bin/ezmlm下にezmlmがインストールされました。インストールパスを変更したい場合は、「conf-bin」ファイルを編集してインストール先を記述します。
■スーパーユーザーによるMLの作成
ではMLを作成してみましょう。まずはスーパーユーザーで作業します。
# /usr/local/bin/ezmlm/ezmlm-make 設定ファイルの保存先
/var/qmail/alias/.qmail-ML名 ML名 自ドメイン |
| 設定ファイルの保存先: | /var/ezmlm/ML | |
| ML名: | ML | |
| 自ドメイン: | example.jp |
とした場合は、
# /usr/local/bin/ezmlm/ezmlm-make /var/ezmlm/ML
/var/qmail/alias/.qmail-ML ML example.jp |
となります。以降は上記の例に従うとします。このコマンドにより、「設定ファイルの保存先」にアーカイブ保存用のディレクトリや設定ファイルが作成されます。同時に、次のファイルも作成されます。
- /var/qmail/alias/.qmail-ML
- /var/qmail/alias/.qmail-ML-owner
- /var/qmail/alias/.qmail-ML-return-default
- /var/qmail/alias/.qmail-ML-default
この後、「設定ファイルの保存先」のオーナーを「alias」に変更することを忘れずに行います。
# chown -R alias /var/ezmlm/ML |
ezmlm-make実行の際、下記のオプションを指定することでMLへの制限や拡張を加えることができます。
| -a | アーカイブを保存する(*) | |
| -A | アーカイブを保存しない | |
| -p | 公開MLとする(*) | |
| -P | 公開しない | |
| 「*」はデフォルトで有効になっているもの | ||
MLが作成できたので、MLに登録してみましょう。「ML-help@example.jp」あてに空のメールを送ると、次のような案内メールが返ってきます。
Hi! This is the ezmlm program. I'm managing the |
このメッセージ中に示された登録用のアドレスにメールを送ることで、自動登録の手続きが始まります。コントロールアドレスには次のものが用意されています。
| ML名@自ドメイン | 投稿用アドレス | |
| ML名-subscribe@自ドメイン | 登録用アドレス | |
| ML名-unsubscribe@自ドメイン | 退会用アドレス | |
| ML名-get.123@自ドメイン | 特定メーセージ取出し用アドレス | |
| ML名-help@自ドメイン | 案内メッセージ用アドレス | |
| ML名-request@自ドメイン | 「ML名-help@自ドメイン」と同じ |
管理者が手動でユーザーを登録する場合は次のようにします。
# /usr/local/bin/ezmlm/ezmlm-sub 設定ファイルの保存先
登録者のアドレス1 登録者のアドレス2 登録者のアドレス3... |
今回の例では次のようになります。
# /usr/local/bin/ezmlm/ezmlm-sub /var/ezmlm/ML
user1@XXXX user2@XXXX user3@XXXX ... |
管理者側で登録者を削除するには次のようにします。
# /usr/local/bin/ezmlm/ezmlm-unsub /var/ezmlm/ML
user1@XXXX |
■一般ユーザーによるMLの作成
以上の方法ではスーパーユーザーによる作業が必要ですが、一般ユーザーでもMLを構築することができます。ただし一般ユーザーの場合、MLの名前に指定できるのはユーザーが持っているメールアドレスに対する拡張アドレスのみです。例えば、メールアドレスuser1@example.jpを持つユーザー「user1」が作成できるMLのアドレスは「user1-ml@example.jp」のようなuser1-○○@example.jpという形式になります。
では、user1がuser1-ml@example.jpを作成する例を見てみましょう。
| 設定ファイルの保存先: | ~/ml | |
| ML名: | user1-ml | |
| 自ドメイン: | example.jp |
とした場合は、
$ /usr/local/bin/ezmlm/ezmlm-make -AP
~/ml ~/.qmail-ml user1-ml example.jp |
となります。ここではアーカイブの保存をせず、勝手に登録がされないような非公開MLになるようにオプションを指定しました。ファイルのオーナー変更は必要ありません。残りの作業は先ほどのスーパーユーザーの作業と同じになります。
まとめと次回予告
ezmlmには、MLの可用性を高めるためのさまざまなパッチが用意されています。インストールはezmlm同様極めて簡単ですが、運用が複雑になるので今回紹介した機能で事が足りているならパッチを当てる必要はありません。
しかし、ユーザーはわがままです。一度は満足したとしても、機能拡張にどん欲です。そんなときが訪れる日のことを考えて、次回はezmlmをさらに便利に使う方法を紹介します。
|
3/4
|
|
||||||||
|
||||||||
| 連載 実用qmailサーバ運用・管理術 |
| Linux Squareフォーラム サーバ構築・運用関連記事 |
| 連載:Heartbeatでかんたんクラスタリング(連載中) オープンソースソフトウェアの「Heartbeat」を使ってHAクラスタを実現し、サービスを「落とさない」仕組みを実現します |
|
| 特集:Apache 2.2でWebサイトをパフォーマンスアップ! 最新安定版Apache 2.2は、何が変わったのか? 最新のApacheを新機能の使い方とともに解説する |
|
| 連載:実用 Apache 2.0運用・管理術(全8回) 本連載では、Apache 2.0の運用や管理方法を解説する。まず必須設定と基本的なセキュリティ対策を行い今後の運用に備える |
|
| 連載:実用
BIND 9で作るDNSサーバ(全15回) 本連載では、BIND 9の構築/運用方法を解説していく。実際に役立つことを目的に、セキュリティや大規模運用などのテーマを取り上げていく |
|
| 連載:実用qmailサーバ運用・管理術(全14回) 本連載を通して、qmailによるメールサーバの高度な構築・運用・管理術を紹介。SPAM対策やML管理からサーバでのウイルスチェックなどまで |
|
| 特集:Samba
3.0の全貌 改訂版 Samba 3.0リリースから8カ月。ここであらためて、Samba 3.0系列の新機能、インストール方法、国際化の現状を解説する |
|
|
TechTargetジャパン
- クライアントがアクセスできる範囲を制限する (2012/2/10)
今回は、サーバ上のファイルの扱いに関係する設定項目について解説します - 新しい記事も入っていて安心しました (2012/2/7)
Linux Squareのアクセスランキングを公開します。定番の記事ばかりでなく、連載中の記事もよろしくお願いいたします - エラーメッセージをどう扱うか? (2012/2/2)
今回は、スクリプト実行時にエラーが発生したことを知らせるメッセージの扱い方を説明します - ファイルのアップロードを制限する (2012/1/30)
HTTPクライアントがアップロードしてくるファイルの扱いについて解説します。そもそも受け入れる必要があるのか? ということのほかにも、いろいろ設定が必要です
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
