HOME | Linux | XML | Network

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#>

ユーザを登録する

ユーザを登録する場合は、以下のようにコマンドを実行する。
# 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
HOME | Linux | XML | Network

Copyright © 2003 Rev System All right reserved.