qmail + ezmlm によるメイリングリストサーバの構築
ezmlmのインストール
必要ファイル
ezmlmの一次配布サイトは、次の通りである。
ftp://ftp.jp.qmail.org/
このサイトのezmlmディレクトリから、表1のファイルをダウンロードする。
これらのファイルは、/usr/local/src以下に保存したものとする。
表1 ezmlmのインストールに必要なファイル
| ezmlm-0.53.tar.gz |
ezmlm本体 |
| ezmlm-idx-0.40.tar.gz |
ezmlm機能拡張版 |
パッケージの展開とパッチの適用
入手したezmlmパッケージを以下の手順で展開する。
# cd /usr/local/src
# tar xvfz ezmlm-0.53.tar.gz
# tar xvfz ezmlm-idx-0.40.tar.gz
これにより、カレントディレクトリに ezmlm-0.53とezmlm-idx-0.40というサブディレクトリが作成される。
投稿制限などの機能拡張を行なうために、機能拡張版のファイルをezmlm本体にが展開されたサブディレクトリへ移動する。
ここで、上書きを確認されるがすべて yes とする。
# mv ./ezmlm-idx-0.40/* ./ezmlm-0.53/
次に、ezmlm本体にパッチファイルを適用する。
# cd ./ezmlm-0.40
# patch < idx.patch
ezmlmのインストール
インストールが成功すると、バイナリファイルが /usr/local/bin/ezmlm 以下に展開される。
# make clean
# make
# make man
# make setup
メイリングリストの作成
ホスト名の確認
qmailを設定した際のホスト名を適用する。設定されているホスト名を確認するには、/var/qmail/controlディレクトリにて headコマンドを実行する。
# cd /var/qmail/control
# head *
ここでは、ホスト名がml.mydomain であるとする。
メイリングリストの作成
ezmlmがインストールされたディレクトリに移動し、ezmlm-make コマンドを実行する。
作成するメイリングリスト名を linux-user とする。
# cd /usr/local/bin/ezmlm
# ezmlm-make -u -k -l -P ~alias/linux-user ~alias/.qmail-linux-user linux-user ml.mydomain
ここで設定したスイッチは、表2の通りである。
表2 適用したスイッチ
| -u |
登録者のみ投稿可能 |
| -k |
購読のみのユーザ向けに登録者内の投稿禁止リストを作成する |
| -l |
自動登録できないようにメイリングリストを公開しない |
| -P |
登録者リストを管理者が参照できるようにする |
ディレクトリの所有者を alias に設定する。この操作を行なわないと、メイルが配信されないので注意が必要である。
# chown -R alias ~alias/linux-user
カスタマイズ
必要であればいくつかのカスタマイズを行なう。
メイルサブジェクトに[linux-user]のようにメイリングリスト名を付与する場合は、ezmlm-make する際に -f スイッチを設定する。
メイルサブジェクトにメイリングリスト名と連番を付与する場合は、prefixを編集する。
# vi ~alias/linux-user/prefix
[linux-user : # ]
と # をつけることで、Subject に[linux-user : 1 ]のように通し番号が付与される。
メイリングリストから配信されたメイルの返信先を、投稿アドレスにする場合は、headeraddを編集する。
デフォルトのヘッダの場合、メイリングリストから届いたメールの返信先は投稿者となっている。そこで、Reply-toを付け返信先をメイリングリストのアドレスを設定する。
# vi ~alias/linux-user/headeradd
Reply-to : <#l#>@<#h#>
- #l# でメイリングリスト名、#h# でホスト名が補完される。
- メイリングリストで配信されるヘッダーを調整する場合は、このファイルを書きかえる。
ユーザを登録する
ユーザを登録する場合は、以下のようにコマンドを実行する。
# cd /usr/loca/bin/ezmlm
# ezmlm-sub ~alias/linux-user hogehoge@my.domain
購読のみのユーザを登録する場合は、以下のようにコマンドを実行する。
# ezmlm-sub ~alias/linux-user yomudake@his.domain
# ezmlm-sub ~alias/linux-user/deny yomudake@his.domain
ユーザを登録解除する
ユーザを登録解除する場合は、以下のようにコマンドを実行する。
# ezmlm-unsub ~alias/linux-user/deny hogehoge@my.domain
購読のみのユーザを登録解除する場合は、以下のようにコマンドを実行する。
# ezmlm-unsub ~alias/linux-user yomudake@his.domain
# ezmlm-unsub ~alias/linux-user/deny yomudake@his.domain
投稿する
投稿アドレスは、メイリングリスト名@ホスト名となる。今回の例では、linux-user@ml.domainとなる。
Last Update
Thu, 08/21/2003 3:34
Copyright © 2003 Rev System All right reserved.